Enseñando hacking ético a través del aprendizaje basado en retos
Y ahora, centrándome en el RootedLab de Hacking Ético, hay que remarcar que la finalidad que nos hemos marcado en este lab es el de enseñar Hacking Etico a través de retos que facilitan el entrenamiento y la adopción de metodología de pentesting. Se proporciona un aprendizaje de técnicas del día a día del pentester a través del uso de diferentes escenarios reales y clasificados por las diferentes técnicas y por nivel.
- Aprender metodología para hacer un pentesting práctico y resolver problemas.
- Enfrentarse a entornos reales.
- Resolver escenarios a través de un entrenamiento práctico.
Docker como plataforma de pentesting
En el artículo de hoy quiero enseñar cómo es un escenario de hacking a través de plataformas como Docker, el cual es perfecto para disponer de recursos para poder enseñar: enumeración, reconocimiento, escaneos, identificación de vulnerabilidades, explotación, escaladas de privilegios, pivoting, movimientos laterales, etcétera.
Es más, se puede montar de forma sencilla un tipo de CTF o Capture The Flag. En este caso, se mostrará cómo con un poco de conocimiento de Docker se puede construir lo necesario para crearse escenarios y poder jugar con todo ello. Ya lo comentaron en este artículo titulado «Cómo montar un entorno de pentesting desde cero con Docker«, nuestros compañeros Rafael Troncoso y Fran Ramírez.
¿Qué cosas tenemos que tener en cuenta?
- La imagen con las vulnerabilidades y las configuraciones preparadas.
- El volumen para datos que deben permanecer y mantenerse tras la creación y destrucción de los contenedores.
- Las redes gestionadas, idealmente, a través de un docker-compose.
- La gestión de puertos entre entorno físico y contenedores.
La creación paso a paso del docker-compose o de la tecnología que se quiera usar de Docker la dejamos para otro artículo, pero se puede ver en la siguiente imagen lo fácil que puede ser levantar un entorno dónde se dispone de diferentes de máquinas, el cual puede tener diferentes tipos de redes y diferentes tipos de servicios.
Se puede leer un mensaje que dice “i am kalilinux (pentester machine)”. Se proporciona una máquina al pentester para “jugar” con el reto, aunque también podría darse acceso a su máquina a la red o conjunto de redes. Los escenarios pueden ser lo grandes que se quieran, ya que los diseñamos e implementamos nosotros.
Figura 6: Libro de Ethical Hacking 2ª Edición de Pablo González en 0xWord |
En una formación como el RootedLab de Hacking Ético, cada escenario (y se hacen varios) propone un conjunto de conceptos a estudiar que son técnicas de hacking orientadas a pentesting. Por ejemplo, imaginemos que queremos enseñar pentesting a través de varios escenarios, una de las posibilidades sería:
- Enseñar primero qué es la fase de reconocimiento, de enumeración, de escaneos. Usar herramientas en varios ejemplos y retar al alumno a llevar a cabo la práctica a través de un escenario dónde se le propone un reto.
- Se le está retando, es decir, puedes utilizar cualquier herramienta que te permita lograr el objetivo marcado.
- El objetivo marcado será una flag o una característica que tengas que lograr.
Bien, después se puede montar otro escenario dónde se tenga que identificar diferentes tipos de vulnerabilidades que pueden ir desde una versión de software obsoleta, una mala configuración de un servicio, un proceso de fuerza bruta, una vulnerabilidad web, etcétera.
Ciertamente, se puede montar de todo en un entorno con Docker, haciendo un paralelismo con el mundo real. Además, se pueden incluir máquinas virtuales dándoles acceso a algunas de las redes de los escenarios que se quieran montar, por lo que la personalización de los entrenamientos es infinita.
Otros entornos basados en Docker y máquinas virtuales
También tenemos a Vulnhub que proporciona máquinas virtuales con vulnerabilidades y son retos interesantes de trabajar.
Recapitulamos sobre el RootedLab
Antes de finalizar el artículo sobre cómo ha evolucionado la enseñanza del Hacking Ético en una formación al uso de entornos o escenarios prácticos que dispongan de realidad y los alumnos puedan usar técnicas reales sobre ellos, vamos a mostrar algunos aspectos sobre el RootedLab de Hacking Ético del día 5 de marzo. El taller se divide en varias partes:
- Parte I: Se enseñan diferentes técnicas de enumeración de máquinas y redes: En esta primera parte del lab, se resuelven escenarios de enumeración y se muestra el uso de técnicas y herramientas sobre ellos.
- Parte II: Identificación de vulnerabilidades y explotación de éstas: El alumno recorrerá diferentes escenarios viendo cómo se detectan vulnerabilidades y cómo éstas se pueden explotar (con diferentes herramientas y con técnicas manuales). Esta parte cubre un amplio abanico que puede ir desde la generación de un exploit propio hasta el uso de herramientas automáticas. Todo ello sobre un escenario.
- Parte III: Post-explotación: En esta parte se tratarán técnicas de escalada de privilegios, pivoting, técnicas de movimiento lateral, extracción de credenciales, etcétera. Todo a través del uso de escenarios reales (a los que un pentester se puede enfrentar en su día a día).
MakeLab: Escenarios de entrenamiento preparados
Metodología de Pentesting- Mochila del pentester
- ¿Qué debo tener a mano en un Red Team?
- ¿Qué debo tener a mano en un pentest?
- Distros & Tools
Fase 1: Enumeración y reconocimiento
Escenario: Enumeración
Técnicas de enumeración
Herramientas
Información relevante
Existencia de vectores de ataque
Escenario propuesto
Fase 2: Identificación de vulnerabilidades y explotación- Escenario: Identificación y explotación
- Técnicas para identificar vulnerabilidades
- Técnicas de explotación vulnerabilidades
- Bind. Reverse
- Herramientas
- Escenario propuesto
Fase 3: Post-Explotación
Escenario: Post-Explotación
Recopilación de información
Escalada de privilegios
Pivoting
Herramientas
Escenario propuesto
- Resolución escenario final
Antes de acabar, añadir que en todo entorno de formación y aprendizaje basado en reto debemos disponer de un dashboard dónde el alumno debe ir validando sus hitos. Contamos con un dashboard para insertar las flags de las máquinas que se van consiguiendo.
Además, estaremos en el evento con charlas sobre Web3 y sobre Inteligencia Artificial. Puedes ver más información en la web del evento. Nos vemos en RootedCON 2024, donde además estará 0xWord con todos nuestros textos de hacking & ciberseguridad y estaré firmando libros.
Autor: Pablo González Pérez, escritor de los libros «Metasploit para Pentesters«, «Hacking con Metasploit: Advanced Pentesting» «Hacking Windows«, «Ethical Hacking«, «Got Root«, “Pentesting con Powershell” y de «Empire: Hacking Avanzado en el Red Team«, Microsoft MVP en Seguridad y Security Researcher en el equipo de «Ideas Locas» de la unidad CDCO de Telefónica. Para consultas puedes usar el Buzón Público para contactar con Pablo González
Contactar con Pablo González |
Powered by WPeMatico