Menú Cerrar

Una vulnerabilidad en la ciberseguridad es cualquier tipo de defecto en software o hardware. Un ataque es el término que se utiliza para describir un programa escrito para aprovecharse de una vulnerabilidad conocida. El acto de aprovecharse de una vulnerabilidad se conoce como ataque. El objetivo del ataque es acceder a un sistema, los datos que aloja o recursos específicos.

Vulnerabilidad de software

Las vulnerabilidades de software generalmente se introducen por errores en el sistema
operativo o el código de aplicación. A pesar de todos los esfuerzos realizados por las empresas para encontrar y corregir las vulnerabilidades, es común que surjan nuevas. Microsoft, Apple y otros productores de sistemas operativos lanzan parches y actualizaciones casi todos los días. Las actualizaciones de las aplicaciones también son comunes. Las aplicaciones como navegadores web, aplicaciones móviles y servidores web son actualizadas con frecuencia por las empresas y las organizaciones responsables de estas.

En 2015, una vulnerabilidad importante, llamada SYNful Knock, se descubrió en Cisco IOS.
Esta vulnerabilidad permitió a los atacantes obtener el control de los routers de nivel
empresarial, como los antiguos routers 1841, 2811 y 3825 de Cisco. Los atacantes
pudieron así monitorear todas las comunicaciones de red y tuvieron la capacidad de
infectar otros dispositivos de la red. Esta vulnerabilidad se introdujo en el sistema cuando
una versión alterada de IOS se instaló en los routers.

El objetivo de las actualizaciones de software es mantenerte actualizado y evitar el
aprovechamiento de vulnerabilidades. Si bien algunas empresas tienen equipos de prueba
de penetración dedicados a la búsqueda y la corrección de vulnerabilidades de software
antes de que puedan ser aprovechadas, hay investigadores de seguridad independientes
que también se especializan en la búsqueda de vulnerabilidades de software.

El Proyecto Zero de Google es un excelente ejemplo de esta práctica. Después de
descubrir varias vulnerabilidades en los diversos programas de software utilizados por los
usuarios finales, Google formó un equipo dedicado a encontrar vulnerabilidades de
software.

Vulnerabilidades de hardware

Las vulnerabilidades de hardware se presentan a menudo mediante defectos de diseño
del hardware. La memoria RAM, por ejemplo, consiste básicamente en capacitores
instalados muy cerca unos de otros. Se descubrió que, debido a la cercanía, los cambios
constantes aplicados a uno de estos capacitores podían influir en los capacitores vecinos.
Por esta falla de diseño, se generó una vulnerabilidad llamada Rowhammer. Mediante la
reescritura repetida de memoria en las mismas direcciones, el ataque Rowhammer
permite que se recuperen los datos de las celdas de memoria de direcciones cercanas,
incluso si las celdas están protegidas.

Las vulnerabilidades de hardware son específicas de los modelos de dispositivos y
generalmente no se ven atacadas por intentos comprometedores aleatorios. Si bien las
vulnerabilidades de hardware son más comunes en ataques altamente dirigidos, la
protección contra malware tradicional y la seguridad física son suficientes para proteger al
usuario común.

Clasificación de las vulnerabilidades en la seguridad

La mayoría de las vulnerabilidades en la seguridad del software se incluye en una de las
siguientes categorías:

Desbordamiento del búfer

Esta vulnerabilidad ocurre cuando los datos se escriben más allá de los límites de un búfer. Los búferes son áreas de memoria asignadas a una aplicación. Al cambiar los datos más allá de los límites de un búfer, la aplicación accede a la memoria asignada a otros procesos. Esto puede llevar a un bloqueo del sistema, comprometer los datos u ocasionar el escalamiento de los privilegios.

Entrada no validada

Los programas suelen trabajar con la entrada de datos. Estos datos que entran al programa pueden tener contenido malicioso diseñado para que el programa se comporte de manera no deseada. Considere un programa que recibe una imagen para procesar. Un usuario malintencionado podría crear un archivo de imagen con dimensiones de imagen no válidas. Las dimensiones creadas maliciosamente podrían forzar al programa a asignar búferes de tamaños incorrectos e imprevistos.

Condiciones de carrera

Esta vulnerabilidad sucede cuando el resultado de un evento depende de resultados ordenados o temporizados. Una condición de carrera se convierte en una fuente de vulnerabilidad cuando los eventos ordenados o temporizados requeridos no se producen en el orden correcto o el tiempo adecuado.

Debilidades en las prácticas de seguridad

Los sistemas y los datos confidenciales pueden protegerse con técnicas tales como autenticación, autorización y encriptación. Los desarrolladores no deben intentar crear sus propios algoritmos de seguridad porque es probable que introduzcan vulnerabilidades. Se recomienda encarecidamente que los desarrolladores utilicen las bibliotecas de seguridad ya creadas, aprobadas y verificadas.

Problemas de control de acceso

El control de acceso es el proceso de controlar quién hace qué y va desde la administración del acceso físico a los equipos hasta determinar quién tiene acceso a un recurso, por ejemplo, un archivo, y qué pueden hacer con este, como leerlo o modificarlo. Muchas vulnerabilidades de seguridad se generan por el uso incorrecto de los controles de acceso.

Casi todos los controles de acceso y las prácticas de seguridad pueden superarse si el atacante tiene acceso físico a los equipos objetivo. Por ejemplo, no importa que hayas
configurado los permisos de un archivo, el sistema operativo no puede evitar que alguien
eluda el sistema operativo y lea los datos directamente del disco. Para proteger los equipos y los datos contenidos, el acceso físico debe restringirse y deben usarse técnicas de encriptación para proteger los datos contra robo o daño.

¡No olvides mostrar tu apoyo dejando un “Me gusta”!

Acerca del autor

Saintus Zephir

Ingeniero en Sistemas Computacionales y estudiante de Maestría en Ciencias en Ingeniería y Tecnologías Computacionales en el Centro de Investigación y de Estudios Avanzados del IPN (CINVESTAV-IPN).

Comparte el artículo en tus redes sociales

Artículos relacionados

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

× ¿Cómo puedo ayudarte?