El hacking ético, también conocido como pentesting o prueba de penetración, es una práctica que busca identificar vulnerabilidades y debilidades en los sistemas informáticos de una organización con el fin de fortalecer su seguridad y prevenir por tanto todo tipo de ataque.
Para llevar a cabo este proceso de manera estructurada y eficiente, se utilizan diferentes metodologías, una de las cuales es la Metodología PTES (Penetration Testing Execution Standard).
PTES es un estándar reconocido en la industria que establece las fases y pasos a seguir durante un pentesting.
Las fases del pentesting son las siguientes:
Interacciones Previas
Antes de comenzar un pentesting, es fundamental establecer una comunicación y acuerdo claro entre el cliente y la organización encargada de llevar a cabo la prueba.
En esta fase, se definen los puntos clave y el alcance del pentesting, como el tipo de prueba (caja negra, blanca, gris, etc.) y las limitaciones o restricciones establecidas. Estas interacciones previas sientan las bases para una colaboración efectiva entre ambas partes.
Recogida de Información
En esta fase, se recopila información sobre el objetivo o víctima del pentesting.
A través de técnicas de footprinting, se busca obtener datos que permitan identificar la forma de acceder a un sistema o planificar posibles ciberataques.
La recopilación de información se puede realizar de dos formas: pasiva y activa.
El footprinting pasivo implica recopilar información sin interactuar directamente con el objetivo.
Se utilizan fuentes de información públicas, como registros de dominios, redes sociales, motores de búsqueda, entre otros.
Por otro lado, el footprinting activo implica interactuar directamente con el objetivo, utilizando técnicas como escaneo de puertos de red para descubrir los que están abiertos, obtener direcciones IP, entre otros datos relevantes.
Modelado de Amenazas
En esta fase, se organiza y analiza toda la información recopilada durante el proceso de recogida de información desde un punto de vista externo.
Se identifican los activos de la organización, como servidores, bases de datos, versiones de software utilizadas, su ubicación, etc.
Con base en esta información, se elabora una lista de mejoras de seguridad que se deben implementar y se diseña un plan de acción detallado y técnico.
El modelado de amenazas ayuda a comprender el panorama general de la seguridad y a definir los pasos necesarios para proteger adecuadamente los sistemas.
Análisis de Vulnerabilidades
En esta fase, se exploran posibles vías de acceso y métodos de ataque.
Se realizan escaneos de los sistemas y la red para descubrir las brechas de seguridad existentes.
Se utilizan herramientas específicas, tanto automáticas como manuales, para analizar las debilidades y fortalezas de los sistemas.
Algunas de las herramientas comúnmente utilizadas en esta fase son:
– OWASP (Open Web Application Security Project):
Es una organización sin ánimo de lucro que promueve el desarrollo seguro de software, especialmente enfocado en el análisis de aplicaciones web.
Cada tres años, OWASP publica una lista de los diez riesgos más importantes en aplicaciones web.
– OWASP ZAP:
Es una herramienta gratuita que permite probar aplicaciones web.
Actúa como un proxy intermedio y puede realizar escaneos rápidos escribiendo la URL completa de la aplicación.
– Kali Linux:
Es una distribución de Linux que facilita el uso de herramientas para auditorías, pentesting y pruebas de hacking ético.
Viene preinstalada con varias herramientas, incluyendo funciones de recopilación de información, análisis de vulnerabilidades, herramientas de explotación, ataques a redes inalámbricas, ingeniería inversa, entre otras.
– OpenVAS:
Es un escáner de vulnerabilidades de software libre y gratuito que permite detectar y gestionar brechas de seguridad.
Es fácil de usar y algunas de sus funciones están preinstaladas por defecto en Kali Linux.
– NMAP (Network Mapper):
Es una herramienta gratuita y de código abierto que se utiliza para descubrir redes y realizar auditorías de seguridad.
También se puede utilizar para realizar inventarios de red, gestionar programas de actualización de servicios y supervisar el tiempo de actividad del servicio.
– Nessus:
Es una herramienta gratuita muy popular que permite escanear vulnerabilidades de seguridad en diferentes sistemas operativos.
Consiste en dos partes:
NESSUD, que realiza el escaneo, y NESSUS, que muestra los resultados de los escaneos a través de gráficos o consola.
Estas herramientas ayudan a identificar las vulnerabilidades y a evaluar la seguridad de los sistemas de manera exhaustiva.
Explotación:
En esta fase, se realiza una prueba de penetración técnica enfocada en aprovechar las vulnerabilidades detectadas en la fase anterior para obtener acceso a sistemas o recursos.
El objetivo principal es explotar las vulnerabilidades encontradas y comprometer un activo.
Para lograr esto, se utilizan exploits, que son programas informáticos o secuencias de comandos que aprovechan una vulnerabilidad o fallo para provocar un comportamiento no intencionado.
Estos exploits pueden dirigirse a una vulnerabilidad específica o a varias simultáneamente.
Un ejemplo famoso de un exploit es EternalBlue, que afectó a sistemas Windows en el pasado.
Una herramienta ampliamente utilizada durante la fase de explotación es Metasploit.
Metasploit es un framework o entorno de trabajo que facilita la investigación y el análisis de vulnerabilidades de seguridad, lo que permite mitigar los riesgos existentes.
Además de ejecutar exploits de forma remota contra objetivos específicos, Metasploit también se integra con otras herramientas, como NMAP o Nessus, para brindar un enfoque integral en las pruebas de penetración.
Publicación de Explotación:
Esta fase, también conocida como postexplotación, se lleva a cabo cuando se ha logrado acceder al sistema en la fase anterior.
En esta etapa, se recopila información privilegiada o confidencial que se encuentra alojada en el servidor o en el sistema comprometido.
El objetivo principal es demostrar al cliente el alcance del acceso no autorizado y la importancia de asegurar adecuadamente sus sistemas.
Durante esta fase, se evalúa el valor del equipo o sistema comprometido y se mantiene el control sobre él.
La recopilación de información tiene como finalidad evaluar la sensibilidad de los datos a los que se ha accedido y su utilidad para comprometer aún más la red de la organización.
Toda la información a la que se ha tenido acceso mediante la explotación de vulnerabilidades se recopila y se documenta cuidadosamente.
Informe:
La fase final del proceso de hacking ético es la redacción y entrega del informe.
Generalmente, se elaboran dos tipos de informes:
– Informe Técnico: Este informe está dirigido a los administradores del sistema y detalla de manera técnica y exhaustiva las acciones realizadas durante el pentesting.
Se incluyen términos y tecnicismos apropiados, así como las posibles soluciones y recomendaciones para corregir las vulnerabilidades identificadas.
– Informe Ejecutivo: Este informe está dirigido a los directivos de la organización y se redacta de manera comprensible para personas ajenas a los aspectos técnicos de la seguridad informática.
El informe ejecutivo resume las principales conclusiones del pentesting, los riesgos identificados y las medidas recomendadas para mejorar la seguridad de la organización.
El informe final es fundamental, ya que proporciona una visión global de las acciones realizadas, los errores de seguridad y las vulnerabilidades detectadas. También destaca las posibles soluciones y los pasos a seguir para fortalecer la seguridad de la organización.