David empezó contando las diferencias que había entre evaluación de vulnerabilidades y test de penetración. A modo de resumen, en la evaluación se pretende encontrar vulnerabilidades y en el pentesting se busca vulnerar el sistema. Además, el pentesting lo hace normalmente una empresa externa que no está relacionada con el producto.
Después nos explicó los tipos de auditoría:
- Caja negra: El auditor desconoce todas las características de la infraestructura interna de la empresa u organización, es decir, desconoce cómo están organizados internamente el sistema y la red. Por lo tanto, la primera tarea del auditor (o hacker ético) será recopilar cualquier tipo de información de acceso público sobre el objetivo, y luego intentará encontrar y explotar las vulnerabilidades en los sistemas y servicios de la empresa objetivo.
- Caja blanca: Es un tipo de auditoría en el que la empresa auditada da acceso a información interna de la empresa. Esta información puede ser mapa de red, firewall, segmentos de red, sistemas operativos utilizados, tecnologías usadas, tipos de autenticación. Es útil porque se ahorra el tiempo que se emplearía en el “fingerprint”.
- Caja gris: Se mezclan características de las dos anteriores. En esta la empresa auditada nos informa de cierta información, desde la que se tendrá que seguir la auditoría. Además, el cliente puede pedir que se comprueben ciertos puntos y sugerir ataques.
Finalmente entró de lleno en materia y nos explicó las fases que hay a la hora de realizar el pentesting sobre algún sistema. Estas fases son:
1.- Recopilación de información: consistirá en obtener información de la empresa mediante cualquier método posible y al alcance del equipo. Algunas de las herramientas más comunes son:
- Netcraft: herramienta pública que permite analizar rápidamente servidores y subdominios para identificar qué versiones de sistemas están utilizando y así identificar vulnerabilidades.
- Waybackmachine y archive.org: son herramientas que guardan el estado de las páginas web de Internet y permiten revisar como estas funcionaban hace años. Además de poder comprobar las distintas modificaciones que se han ido haaciendo con el paso del tiempo.
- Maltego: servicio que busca información sobre personas y empresas en Internet, permitiendo cruzar datos para obtener perfiles en redes sociales, servidores de correo, etc.
- Shodan: es un motor de búsqueda que permite al usuario encontrar distintos tipos de equipos del IoT. Además, nos recomendó seguir a su cuenta de Twitter ya que de vez en cuando hacen ofertas de membresías premium por menos de 5 euros al año.
- Análisis de metadatos con la herramienta Foca
- WeLeakInfo: herramienta que permite comprobar si una cuenta de alguna red social ha sido leakeada, cuando ha sido leakeada y quien ha sido la empresa que perdió la información.
- Redes sociales de la empresa y sus empleados
- Wappalyzer y WhatWeb: son herramientas que nos dicen todas las tecnologías que componen una web.
2.- Escaneo: para esta fase nos recomendó dominar Nmap en su totalidad antes que usar otras herramientas, ya que Nmap es una herramienta muy completa a la que no se le suele sacar todo el rendimiento por ser un poco intimidante al principio. También recomendó Nessus y OpenVAS para búsqueda de vulnerabilidades de páginas web.
3.- Enumeración: durante esta etapa se obtienen los datos referentes a los usuarios, nombres de equipos, servicios de red, entre otros.
4.- Explotación: para esta fase nos preparó una demostración de ataque backdoor con Metasploit a vsFTPd 2.3.4.
El último paso sería la elaboración de informes. De estos informes los dos más importantes son:
- Uno que estará redactado de modo que cualquier persona sin necesidad de ser experta en ciberseguridad pueda entender de una forma general el resultado de la auditoría.
- Otro que será más técnico e irá dirigido al equipo técnico de la empresa auditada, sirviendo para realizar un análisis de vulnerabilidades.
Después de la presentación permitió que se le hicieran algunas preguntas entre las que destacaría dos. La primera es referente a como se puede introducir alguien en ciberseguridad. La respuesta de David fue que, aunque primero es importante conocer un poco de fundamentos de redes y protocolos, mediante algún máster o plataformas como securizame.com es suficiente para aprender bastante de ciberseguridad y buscar hacer carrera de ello. La segunda que quería destacar era “¿Qué hacéis en Sputnik?”. No tanto por la respuesta directa a la pregunta sino por un comentario que hizo sobre un aspecto muy importante del pentesting que es la ingeniería social. La ingeniería social es un conjunto de técnicas que utilizan los ciberdelincuentes para engañar a los usuarios desprevenidos para que les envíen datos confidenciales, infecten sus terminales con malware o abran enlaces a sitios web infectados. Además, los piratas informáticos pueden intentar aprovecharse del desconocimiento de los usuarios. Es algo que desconocía por completo y que me llamó la atención que destacara.