peterzayda - stock.adobe.com

Hackers éticos permiten hallar las fallas más serias en el software

Una revisión de hackers éticos permite a las organizaciones conocer de forma más precisa qué tanto un producto de software es resistente a ataques.

Las vulnerabilidades de seguridad en el software son debilidades que resultan usualmente de errores de diseño o configuración. En los boletines de la Agencia de Ciberseguridad y Seguridad de Infraestructura de EE. UU. (CISA), llegan a ser divulgadas más de mil vulnerabilidades durante una quincena. Para que las vulnerabilidades sean corregidas antes de que se conozcan públicamente, las organizaciones realizan pruebas de seguridad, aunque estas pueden ser imprecisas si no interviene un analista de seguridad o un hacker ético.

Mauricio Gómez

Hacer pruebas exhaustivas de seguridad al software implica detectar si éste usa versiones vulnerables ya divulgadas de componentes de terceros. Esto es algo muy común, ya que los desarrolladores no tienden a crear su software desde cero y recurren a paquetes de código de código abierto con funcionalidades elaboradas por otros (en la aplicación promedio, el 75 % del código proviene de terceros), pero no siempre están al tanto de su estado de seguridad.

Por otra parte, las pruebas comprenden encontrar vulnerabilidades desconocidas en el código propio de la compañía. La búsqueda puede hacerse automáticamente con herramientas que han sido programadas para encontrar algunos incumplimientos de requisitos de seguridad. Sin embargo, estas suelen presentar limitaciones importantes. La más crucial es su incapacidad de encontrar debilidades que solo pueden ser reconocidas a través de ataques al software, simulando aquellos que realizan los ciberdelincuentes.

En cambio, un hacker ético empieza por comprender la lógica de la aplicación, es decir, qué pretende posibilitar y qué no. Familiarizarse con el producto y revisar el código fuente, en caso de que la empresa lo permita, les ayuda a planear su ataque y análisis posterior. Durante una evaluación, los hackers pueden identificar requisitos o estándares de seguridad infringidos por los desarrolladores del software.

Explotar debilidades puede permitir al atacante obtener acceso no autorizado o privilegios injustificados o controlar el sistema y, en consecuencia, acciones riesgosas como ver, editar o descargar información sensible. Los hackers éticos, como lo harían los actores malintencionados, buscan lograr tales impactos. Posiblemente eso no se logre con aprovecharse de una sola debilidad, sino al encadenar varias en un mismo ataque. Este es un nivel de complejidad que hoy las herramientas no alcanzan, a pesar de su utilidad para permitir ahorrar tiempo en las pruebas y encontrar vulnerabilidades superficiales y previamente conocidas.

Seguidamente, los hackers éticos realizan un reporte detallado en el que revelan, para cada problema de seguridad detectado, su ubicación en el código o campos de la aplicación, si lograron o no explotarlo y de qué manera, las evidencias de los impactos, el nivel de exposición al riesgo que representa para la compañía y recomendaciones para su remediación.

Las empresas que evalúan su software con escaneos automáticos y hacking ético logran tener un conocimiento amplio y preciso de qué tan expuestos están sus productos a sufrir ciberataques exitosos que afecten su seguridad y la de sus clientes o usuarios. Esto puede lograrse siempre y cuando sean pruebas que se lleven a cabo de manera continua, ya que los productos de software reciben modificaciones constantes de los equipos de desarrollo, tanto para generar valor, como para mantenerse competitivos en el mercado.

Sobre el autor: Mauricio Gómez es cofundador de Fluid Attacks y forma parte de su equipo directivo. Es ingeniero químico por la Universidad Nacional de Colombia, experto en ciberseguridad en la red y hacking ético, y ha estado a cargo de la compañía desde que Fluid Attacks inició sus operaciones, en 2001.

Investigue más sobre Gestión de la seguridad