¿Qué son las Pruebas de Penetración?
Las pruebas de penetración (o "pen testing") son un proceso que consiste en utilizar métodos autorizados para probar y evaluar la postura de seguridad de un sistema de información. Se realiza analizando el sistema para detectar cualquier vulnerabilidad y amenaza que pudiera resultar en un compromiso. Para ello, se pueden utilizar técnicas de hacking ético para explotar estas debilidades. El objetivo de realizar una prueba de este tipo es garantizar la seguridad de una empresa frente a atacantes malintencionados.
¿Por qué realizar pruebas de penetración?
Las pruebas de penetración son una parte esencial de la estrategia de ciberseguridad de una empresa, ya que permiten al equipo de seguridad evaluar y recomendar los cambios necesarios que necesita el sistema para protegerse de los ciberataques. Al identificar y abordar las vulnerabilidades del sistema, las organizaciones pueden proteger sus activos, datos y clientes. También es importante mantenerse al día de las últimas amenazas y asegurarse de que el sistema es seguro frente a las amenazas actuales conocidas.
¿Cómo se realizan las pruebas de penetración?
Las pruebas de penetración suelen realizarse en cinco pasos.
Etapa 1: Reconocimiento y Escaneado
El primer paso consiste en conocer el sistema realizando un reconocimiento y un escaneado. Esto implica recopilar información sobre el sistema y sus componentes para comprender su arquitectura y configuración. También implica analizar cualquier fuente de datos pública, como sitios web, blogs, foros y redes sociales, en busca de información sobre la empresa y sus empleados.
Fase 2: Análisis de vulnerabilidades
El segundo paso consiste en identificar cualquier vulnerabilidad potencial del sistema. Esto puede incluir la comprobación de vulnerabilidades conocidas, la revisión del código en busca de posibles fallos o el uso de herramientas de escaneado de seguridad de aplicaciones. Las vulnerabilidades pueden ir desde contraseñas débiles a sistemas mal configurados, o descuidos en el código.
Fase 3: Modelado de amenazas
El tercer paso consiste en crear un modelo de amenazas para el sistema. Esto implica analizar cómo las amenazas potenciales podrían explotar cualquier vulnerabilidad que se haya identificado en el paso anterior. Este paso también implica analizar el impacto potencial de estas amenazas sobre el sistema y sus componentes.
Fase 4: Explotar el Sistema
El cuarto paso consiste en explotar el sistema. Esto implica explotar cualquier vulnerabilidad identificada en el sistema para obtener acceso. Esto se hace de forma responsable y con autorización para garantizar que no se dañe el sistema ni los datos almacenados en él.
Fase 5: Informe y corrección
El quinto y último paso consiste en informar de los resultados de la prueba y recomendar las correcciones necesarias para mejorar la seguridad del sistema. Esto incluye parchear cualquier vulnerabilidad identificada y asegurarse de que el sistema se supervisa y mantiene adecuadamente.
5 HERRAMIENTAS PARA EMPEZAR
1. NMAP
Nmap es una herramienta de escaneo de redes que permite identificar qué servicios se están ejecutando en un dispositivo remoto, así como la identificación de equipos activos, sistemas operativos en el equipo remoto, existencia de filtros o firewalls, entre otros.
En su forma tradicional, una línea de comando sería la siguiente:
> nmap 172.16.1.1
2. NESSUS
Una vez que se tienen identificados los servicios que se están ejecutando, se puede comenzar el uso de las herramientas que sirven para identificar vulnerabilidades en los servicios. En este campo, la mejor herramienta para introducirse en este mundo es Nessus, otra aplicación gratuita (solo para uso hogareño, suficiente para los fines de este artículo; en el caso de fines profesionales es necesario usar la versión de pago) que, por su base de datos y su facilidad de uso, es la preferida en este aspecto.
3. METASPLOIT FRAMEWORK
Una vez identificados los servicios y sus vulnerabilidades, el paso siguiente sería la explotación de las vulnerabilidades.Para este fin, Metasploit es la herramienta ideal para hacer estas pruebas. Mientras Nessus posee una base de datos de vulnerabilidades, Metasploit posee una base de exploits que podrían aprovecharlas. En otras palabras, en lugar de revisar si hay una vulnerabilidad en un equipo remoto, directamente se intenta la ejecución de un exploit y se simulan las consecuencias posteriores, en caso de que éste se ejecutara con éxito.
Ficha técnica
Herramienta: Metasploit
Sitio web: http://www.metasploit.com/
Dónde empezar: una vez instalado, haz la prueba con alguna vulnerabilidad que permita el uso de una consola meterpreter remota, son sencillas de probar si fueron exitosas. Hay que tener precaución con las vulnerabilidades de denegación de servicio.
Más información: Existe un documento oficial completo para dar los primeros pasos en
Metasploit Framework, muy recomendable, “Metasploit Community Getting Started Guide".
4. DVL – DVWA
Para probar las tres herramientas anteriores, es necesario definir un sistema objetivo, un sistema en el que se harán las pruebas. Una pésima costumbre de quienes inician en este ámbito es realizar sus primeros pasos y pruebas en sistemas públicos de Internet, en un entorno real. Esto podría acarrear problemas legales y no es la forma correcta (ni ética) de realizarlo. Para aprender a usar estas herramientas, se debe utilizar un entorno de pruebas, es decir, un escenario de investigación en donde uno pueda tener acercamientos sin riesgos de afectar algún entorno en producción.
Para ello, existen dos herramientas excelentes: Damn Vulnerable Linuxy (DVL) y Damn Vulnerable Web Application (DVWA). Aunque el primero está descontinuado, aún se puede conseguir en Internet para hacer los primeros pasos y primeras pruebas. Se trata de un sistema operativo y una aplicación web que poseen todo tipo de vulnerabilidades, de tal forma que, la persona que los utiliza, puede intentar explotarlas y experimentar.
5. KALI LINUX
Finalmente, hay una distribución de Linux diseñada exclusivamente para Penetration Testing. Las herramientas antes descritas (Nmap, Nessus, Metasploit) están disponibles y, no solo eso, también hay muchas más herramientas para continuar practicando. Por ejemplo, Kali (antes conocida como Backtrack) es una distribución que posee todo tipo de herramientas preinstaladas que sirven para realizar Penetration Testing.
Ficha técnica
Herramienta: Kali Linux
Sitio web: http://www.kali.org/
Cómo empezar: primero, probar las herramientas antes listadas pero desde dentro de Kali Linux y luego, adentrarse en su menú, donde las herramientas están categorizadas, lo que permitirá mayor comprensión.
Más información: hay documentos disponibles en el sitio oficial en varios idiomas, para conocer más en detalle el kit de herramientas.
Conclusión
Las pruebas de penetración pueden ser una herramienta útil para evaluar y mejorar la postura de seguridad de una organización. Al identificar y mitigar las amenazas potenciales, las organizaciones pueden proteger sus datos, activos y clientes. Para protegerse eficazmente contra los ciberataques, las organizaciones deben ser conscientes de la importancia de las pruebas de penetración periódicas e incorporarlas a su estrategia global de seguridad.
Opmerkingen