Hola a todos,
Tras el primer post, vamos a establecer con que herramientas (sistemas operativos, entornos, scripts, etc…) contaremos a la hora de realizar las diferentes pruebas para ir pasando de una fase a otra.
Hipervisor
Un hipervisor, es un software que crea y ejecuta VM, aislando el sistema operativo y los recursos de la máquina física de las VM; de esta manera se permite asignar los recursos necesarios según la VM en función de los recursos físicos libres Fuente. Existen 2 tipos de hipervisor, según el nivel de abstracción de los recursos entre el hardware y los sistemas virtuales:
- Tipo 1 (bare metal)
- Se ejecuta directamente sobre el hardware generando un gran rendimiento.
- Tipo 2 (hosted)
- Se ejecuta sobre un sistema operativo obteniendo un menor rendimiento ya que utiliza parte del hardware para el uso de este.
Debido a la finalidad de este cometido se tendrá que escoger una solución de virtualización entre las que existen en el mercado, lo más recomendable para obtener un mayor rendimiento sería trabajar con algún hipervisor tipo 1, como Proxmox Virtual Environment o VMware vSphere, al no disponer de servidores locales donde realizar la instalación de estos servicios, se debe elegir un hipervisor tipo 2, los más conocidos son VMware Workstation o Oracle VM Virtualbox. Se puede observar una comparativa entre los hipervisores VMware Workstation y Oracle VM Virtualbox en el el siguiente link.
Tras analizar la anterior tabla comparativa del enlace se ha decidido usar VMWare Workstation en la versión 17.0.0 build-20800274. Ya que a pesar de que no permita virtualización de software, su versión de pago permite características especiales como mayor compatibilidad con sistemas Windows, gracias a las VMWare Tools, haciendo que el rendimiento se vea mejorado en comparación con VirtualBox. El proceso de instalación no contiene ningún punto clave a destacar, salvo que al final del proceso debes establecer la clave de autenticación necesaria para utilizar el software.
Entorno vulnerable
En una primera instancia tras analizar diferentes fuentes del entorno para el despliegue del AD disponible, se decidió utilizar el repositorio Detection Lab que permite el despliegue de un escenario de AD en un hipervisor tipo 2; también es posible desplegarlo sobre la nube, pero esto implicaría un alto coste y la ejecución de test de penetración podría verse envuelta en problemas por la configuración de las plataformas que defienden al máximo sus activos, además que es necesario solicitar permisos para realizar pruebas de penetración.
Aunque Detection Lab fue construido pensando en los defensores, sirve para ejecutar diferentes pruebas de ataque, para después simplificar las pruebas de defensa, análisis e investigación.
El entorno final que sería desplegado se presenta en la siguiente figura:
Desafortunadamente este proyecto se ha encontrado con diferentes problemas en diferentes releases de este entorno, detallados en las “issues” de Gitgub del proyecto Logger failing to install Zeek y Failed to fix the broken static IP for eth1., que no han sido resueltas durante la ejecución de este post. Además, se puede comprobar que la herramienta ha dejado de dar soporte a los usuarios desde el 01/01/2023, por lo que se duda que vayan a solucionar los problemas indicados, sin embargo, animo a los lectores a probar la ejecución del entorno mediante las instrucciones de despliegue y comprobar si con las características de su Pc funciona correctamente o han solucionado los fallos cuando lo esté leyendo.
Por el motivo descrito anteriormente se ha decidido realizar el despliegue por cuenta propia, creando un AD con un Windows Server 2016 y 3 Windows 10 Enterprise, en la versión LTSC, ya que no tiene publicidad ni aplicaciones preinstaladas. Al tratarse de unas versiones de prueba no se solicitará ningún serial de activación.
En el siguiente post veremos el proceso de instalación y configuración de los sistemas.
Sistema Operativo Pentesting
Existen múltiples sistemas operativos centrados en la seguridad ofensiva, estos están generalmente distribuidos bajo Linux y la diferencia principal con los sistemas operativos de los usuarios, son sus herramientas preinstaladas centradas en el ámbito de la ciberseguridad.
Kali Linux
Es el sistema operativo de test de penetración más conocido, tiene una amplia documentación y viene con diferentes suites de penetración en función del tipo de auditoría realizada.
“Es una distribución basada en Debian GNU/Linux diseñada principalmente para la auditoría y seguridad informática en general. Fue desarrollado por Mati Aharoni y Devon Kearns, ambos pertenecientes al equipo de Offensive Security, quienes utilizaron BackTrack como base, por lo que se podría denominar la antecesora de Kali Linux.
” Fuente
Dispone de diferentes imágenes de plataforma para que diferentes dispositivos con diferentes arquitecturas puedan ejecutarlo y agrega muchísimas herramientas de código abierto, unas 600, pensadas para seguridad ofensiva.
Parrot Security OS
Se trata de una rama de desarrollo proporcionada por Parrot OS, que es una distribución GNU/Linux basada en Debian, con un enfoque en la seguridad informática. Está diseñado para pruebas de penetración, evaluación y análisis de vulnerabilidades, análisis forense de ordenadores, navegación web anónima y práctica criptográfica, desarrollado por Frozenbox Team. Fuente
Al igual que Kali este sistema operativo proporciona herramientas de seguridad pensadas para realizar pentesting, además de configuración por defecto que protege el anonimato del usuario en la red.
BlackArch Linux
Es una distribución de Arch Linux que permite la ejecución de pruebas de penetración gracias a su repositorio con más de 2800; está pensado para usuarios avanzados en el entorno de Linux y fue desarrollado por Stefan Venz.
Se analiza que realmente la diferencia entre los distintos sistemas operativos destinados a seguridad son las herramientas que vienen preinstaladas y sus bases de Linux, por lo que se decide utilizar la más intuitiva visualmente desde mi punto de vista, Parrot Security OS ver 5.1.2. Su instalación se verá en el siguiente post.
Conclusión
Esto sería todo, en el siguiente post veremos como instalaremos y configuraremos todo el entorno para que sea vulnerable a los diferentes pasos/ataques por los que irán pasando poco a poco la metodología propuesta.