Ataque Active Directory
Ataque Active Directory
Politécnica
Superior
Análisis de técnicas de
ataque en Active
Directory e
implementación de
contramedidas de
endurecimiento
Grado en Ingeniería Informática
Mayo 2025
Análisis de técnicas de ataque en Active
Directory e implementación de
contramedidas de endurecimiento
Autor
Armando Mourisco Fernández
Tutor
Juan Antonio Gil Martínez-Abarca
Tecnología informática y computación
Escuela
Politécnica
Superior
A nivel personal, este proyecto responde al deseo de conocer más en profundidad estos
sistemas e infraestructuras, abordando el problema desde la perspectiva del atacante y la del
defensor.
Como objetivos generales, este trabajo pretende diseñar un laboratorio de pruebas Active
Directory, realizar una simulación de adversario siguiendo metodologías y procedimiento ac-
tuales, e implementar contramedidas de endurecimiento para mitigar los ataques previamente
realizados. Con ello, se intentará aportar una visión teórico-práctica sobre la ciberseguridad
en los sistemas y redes Windows corporativos, contribuyendo al desarrollo de competencias
profesionales en este campo de constante evolución y cambio.
Abstract
The purpose of this project arises from the growing interest of different cybersecurity actors
in Active Directory environments. These environments are of high value for cybercriminals
and state actors, because they centralise the information of a certain organisation. Intrusion
of these environments often allows these actors to achieve their goals, be they economic or
geopolitical.
On a personal level, this project responds to the desire of gaining a deeper understanding
of these systems and infrastructures, approaching the problem from the perspective of both
the attacker and the defender.
As general objectives, this work aims to design an Active Directory test lab, perform
an adversary simulation following current methodologies and procedures, and implement
hardening countermeasures to mitigate previously performed attacks. The aim is to provide a
theoretical and practical vision of cybersecurity in corporate Windows systems and networks,
contributing to the development of professional skills in this constantly evolving and changing
field.
A mi padre Ricardo y a mi abuela Ángeles,
por su apoyo incondicional y ejemplo constante de esfuerzo.
A lot of hacking is playing with other people, you know,
getting them to do strange things.
Steve Wozniak
Índice general
1 Introducción 1
xiii
xiv Índice general
3 Metodología 27
3.1 Tipo de investigación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.2 Planificación del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3 Infraestructura del AD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.1 Árbol LDAP del directorio . . . . . . . . . . . . . . . . . . . . . . . . 31
3.3.2 Despliegue del laboratorio . . . . . . . . . . . . . . . . . . . . . . . . . 31
[Link] Configuración inicial . . . . . . . . . . . . . . . . . . . . . . . 32
[Link] Dominio [Link] . . . . . . . . . . . . . . . . . . . . 34
[Link] Dominio [Link] . . . . . . . . . . . . . . . . 34
[Link] Dominio [Link] . . . . . . . . . . . . . . 36
[Link] Estación de trabajo . . . . . . . . . . . . . . . . . . . . . . . 36
3.4 Alcance del estudio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.4.1 Suposiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.5 Población y muestra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.6 Tácticas utilizadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.7 Herramientas utilizadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.7.1 Nmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.7.2 NetCat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.7.3 NetExec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.7.4 Responder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.7.5 Hashcat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.7.6 Impacket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.7.7 Evil-WinRM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.7.8 Chisel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.7.9 BloodHound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.7.10 Mimikatz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4 Desarrollo 43
4.1 Ataque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1.1 Reconcimiento inicial de la estación de trabajo WS01 . . . . . . . . . . 43
4.1.2 Envenenamiento de protocolos de red . . . . . . . . . . . . . . . . . . 44
[Link] Ataque de diccionario contra el hash NetNTLMv2 . . . . . . 45
4.1.3 Ataque NTLM Relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
[Link] Acceso remoto a WS01 mediante Pass-The-Hash . . . . . . . . 48
4.1.4 Despliegue de persistencia en WS01 mediante registro . . . . . . . . . . 48
4.1.5 Host WS01 como pivote para acceso a la red del dominio madrid . . . 49
4.1.6 Kerberoasting contra el controlador de dominio de madrid . . . . . . . 52
[Link] Ataque de diccionario contra el ticket granting ticket (TGT) 52
4.1.7 Abuso de privilegios del grupo Operadores de copia de seguridad . . . 53
[Link] Acceso remoto a DC01 mediante Pass-The-Hash . . . . . . . . 54
4.1.8 Reconocimiento interno desde el controlador de dominio DC01 . . . . . 55
4.1.9 Ataque DCSync a DC03 con las credenciales de DC01 . . . . . . . . . . 57
4.1.10 Persistencia en el dominio [Link] mediante Golden Ticket . . 58
4.1.11 Pass-The-Ticket para acceso al DC de [Link] . . . . . . . . . 59
Índice general xv
4.2 Defensa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.2.1 Prevención . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
[Link] Endurecimiento de los controladores de dominio . . . . . . . 60
[Link] Principio de mínimos privilegios . . . . . . . . . . . . . . . . 62
[Link] Autenticación y credenciales . . . . . . . . . . . . . . . . . . 64
[Link] Relaciones de confianza . . . . . . . . . . . . . . . . . . . . . 65
4.2.2 Detección . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
[Link] Monitorización de eventos . . . . . . . . . . . . . . . . . . . . 66
4.2.3 Respuesta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
[Link] Contención y erradicación . . . . . . . . . . . . . . . . . . . . 69
[Link] Recuperación . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5 Conclusiones 71
5.1 Futuras líneas de investigación . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Bibliografía 73
Acrónimos y Abreviaturas 77
Índice de figuras
2.1 Proceso de autenticación NTLM en un entorno de dominio . . . . . . . . . . 16
4.1 Escaneo de los puertos TCP más comunes sobre la estación de trabajo WS01 43
4.2 Listado de recursos SMB compartidos por la estación de trabajo WS01 . . . . 43
4.3 Subida de fichero URL malicioso al directorio compartido por SMB . . . . . . 44
4.4 Captura del hash NetNTLMv2 del usuario Adminstrador de dominio . . . . . 45
4.5 Cracking hash NetNTLMv2 con la herramienta hashcat . . . . . . . . . . . . 45
4.6 Cracking hash NetNTLMv2 con la herramienta hashcat . . . . . . . . . . . . 46
4.7 Intercambio de mensajes en el ataque NTLM relay . . . . . . . . . . . . . . . 46
4.8 Ejecución de la herramienta ntlmrelayx . . . . . . . . . . . . . . . . . . . . . 47
4.9 Obtención de hashes NTLM mediante el ataque NTLM relay . . . . . . . . . 48
4.10 Conexión remota a la estación de trabajo usando Evil-WinRM . . . . . . . . . 48
4.11 Ejecución del script de ofuscación Chimera . . . . . . . . . . . . . . . . . . . 49
4.12 Transferencia del script PowerShell ofuscado con capacidades de establecer
conexión inversa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.13 Configuración de los registros de WS01 para establecer persistencia . . . . . . 50
4.14 Captura de la shell inversa con la herramienta NetCat . . . . . . . . . . . . . 50
4.15 Transferencia via HTTP de la herramienta chisel desde la máquina atacante . 51
4.16 Servidor SOCKS en nuestra máquina atacante para el túnel inverso . . . . . . 51
4.17 Cliente Chisel en la máquina pivote para conectarnos al servidor SOCKS . . 52
4.18 Kerberoasting cuenta de usuario sqlservice con la herramienta NetExec . . 52
4.19 Cracking del TGT del usuario sqlservice mediante la herramienta Hashcat 53
4.20 Contraseña descifrada exitosamente a partir del TGT de sqlservice mediante
Hashcat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.22 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.24 Túneles inversos estáticos desde WS01 para mapear puertos TCP/5985 y TC-
P/4445 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.25 Volcado del dominio [Link] con la herramienta ADExplorer 56
4.26 Conversión del volcado del AD a archivos JSON compatibles con BloodHound 56
4.27 Grafo de neo4j para escalar privilegios usando BloodHound . . . . . . . . . . 57
4.28 Ataque DCSync a [Link] para extraer hashes NTLM . . . . . . . . . 57
4.29 Ataque DCSync a [Link] para extraer hashes Kerberos . . . . . . . 58
4.30 Extracción del SID del dominio [Link] . . . . . . . . . . . . . . . . . 58
xvii
xviii Índice de figuras
4.1 Fichero URL malicioso que realiza una petición SMB al servidor atacante . . 44
4.2 Shell inversa desde WS01 mediante Invoke-PowerShellTcp . . . . . . . . . . 49
4.3 Medidas de seguridad en controladores de dominio . . . . . . . . . . . . . . . 61
4.4 Medidas de seguridad en mecanismos de autenticación . . . . . . . . . . . . . 65
4.5 Buenas medidas de seguridad para implementar relaciones de confianza seguras 66
xix
1 Introducción
En la era digital actual, caracterizada por una creciente dependencia de la información y
conectividad de los sistemas, la ciberseguridad es el eje que sostiene la continuidad y la esta-
bilidad de las la mayoría de organizaciones. En este contexto, Active Directory (AD) juega
un papel clave, ya que permite gestionar la identidad, la autenticación y la autorización en
muchas intranets de organizaciones tanto del sector público como privado, lo que lo hace uno
de los principales objetivos de los adversarios.
Debido a que las medidas de seguridad se han intensificado en todo tipo de entornos, los
ataques dirigidos se han vuelto más comunes, más complejos y permiten a los atacantes al-
canzar un mayor control sobre la infraestructura objetivo. En el caso de Active Directory, las
distintas técnicas de ataque actuales permiten a los adversarios escalar privilegios, desplegar
persistencias y moverse lateralmente por el entorno hasta, en última instancia, comprometer
totalmente un dominio. Este tipo de intrusiones puede causar grandes perjuicios a la organi-
zación, incluida la pérdida de integridad y confidencialidad de la información, interrupciones
en la operativa de negocio e impacto en la reputación de la organización. Como resultado,
proteger y endurecer estos entornos se presenta como un desafío constante para los profesio-
nales de la seguridad.
En este escenario, las simulaciones de adversarios se presentan como buenas prácticas para
comprender y predecir las tácticas, técnicas y procedimientos (TTP) utilizados por atacantes
reales. Mediante el despliegue y configuración de laboratorios virtuales que repliquen entor-
nos de Active Directory, se pueden ejecutar ataques controlados y monitorear su efectividad
sin poner en riesgo el sistema de producción. Este enfoque permite que las debilidades iden-
tifiquen y validen la efectividad de las medidas y mejoren activamente la seguridad.
Por un lado, durante la fase ofensiva del proyecto, ejecutaremos algunas de las técnicas de
ataque más relevantes para Active Directory en un entorno aislado y controlado. Por otro
lado, proveeremos de contramedidas de endurecimiento, entre las que se incluirán scripts
PowerShell, configuraciones recomendadas, buenas prácticas y datos para alimentar sistemas
de defensa. Estas contramedidas, ayudarán a prevenir, detectar y responder a todo incidente
que afecte a la seguridad del entorno. En resumen, el problema abordado en este estudio es
la necesidad urgente de fortalecer el entorno Active Directory contra las amenazas avanzadas
a través de la implementación de tácticas contrarias y medidas efectivas. El objetivo es hacer
una contribución práctica y actualizada a las mejoras continuas en la seguridad en entornos
empresariales que dependen de Active Directory.
1
2 Estado del arte
Los términos Red y Blue Team tienen su origen en la industria de defensa norteamericana.
Durante la guerra fría, los Estados Unidos de América comenzaron a realizar ‘wargames’
(juegos de guerra) como un entrenamiento para un posible conflicto con la Unión Soviética.
Los equipos de Red Team eran el bloque soviético, y los equipos Blue Team las fuerzas aliadas.
En cambio, los equipos de Blue Team están consituidos por profesionales en seguridad
informática que se encargan de monitorizar y defender los sistemas y redes de la organi-
zación. Es importante que estos dos equipos sean independientes y no compartan nada de
información hasta el final del ejercicio. Es mandatorio que los equipos de Blue Team no sean
informados de que un equipo de Red Team externo va a realizar una simulación de amenazas
contra su organización.
3
4 Estado del arte
2018).
Deberemos recopilar tanta información sobre el objetivo como nos sea posible, lo que in-
cluye activos digitales, físicos y humanos, lo que nos permitirá determinar su superficie de
ataque. Este tipo de reconocimiento solo suele ocurrir al inicio de la simulación de adversa-
rio. En él, se investigan todos los elementos expuestos en internet, ya que esta información
será imprescindible a la hora de encontrar un vector de acceso inicial en la siguiente fase del
proceso.
Aunque la mayoría de esfuerzos se dedican a encontrar activos digitales, no hay que ol-
vidarse de los activos físicos. Herramientas libremente accesibles pueden ser muy útiles en
este punto: el recurso [Link] para encontrar puntos de acceso WiFi, el pro-
pio Google Maps nos puede proporcionar información sobre la seguridad y la estructura de
oficinas, rutinas de los empleados, sistemas de vigilancia como cámaras, o posibles sistemas
de control de acceso como sistemas biométricos, tecnologías Radio Frequency Identification
(RFID), códigos de acceso,...
por cierto servicio, o ‘footprinting’ a servidores web, Domain Name System (DNS), Simple
Mail Transfer Protocol (SMTP),... entre otros. No todas las acciones realizadas en este punto
tienen un componente técnico. Por ejemplo, el simple hecho de buscar en los deshechos de
nuestro objetivo puede implicar encontrar información sensible en documentos deshechados
que pueden contener credenciales de acceso.
Aunque tengamos que interactuar con la organización, nuestras acciones deben de tener
el mínimo impacto sobre este para minimizar las posibilidades de ser detectado. De todas
formas, el reconocimiento externo debe hacerse desde direcciones IP que no tengan la ninguna
relación con el que será nuestro servidor de comando y control una vez conseguida la intrusión.
Además, debemos utilizar tecnologías que nos permitan cambiar de direcciones IP de manera
fácil y rápida, como proxies y VPNs, para que en caso de ser detectados podemos seguir con el
reconocimiento sin mayor perjuicio. Estas cuestiones serán abordadas más exhaustivamente
en el apartado de seguridad operacional.
Sin embargo, en el ámbito de la ciberseguridad, el eslabón más débil siempre van a ser
las personas. La ingeniería social se encarga de explotar las personas, es decir, manipularlas
para revelar información confidencial o realizar acciones que comprometan la seguridad de la
organización objetivo (Claranet, 2024). Como operadores de Red Team, no debemos utilizar
técnicas básicas como incluir Macros en documentos de Office o enviar nuestros payloads a
cientos de emails y esperar a que alguien caiga. Aunque aún pueden funcionar, se deben de
utilizar técnicas más sofisticadas con mayor interacción con las víctimas durante un mayor
período de tiempo. Técnicas más dirigidas como spear phishing o voice phishing son
cada vez más utilizadas por atacantes. Otro ámbito de la ingeniería social en el que hay que
incidir es la psicología humana. Formas de manipulación típicas incluyen (INCIBE, 2019):
6 Estado del arte
• Respeto a la autoridad: Este tipo de ataques se basa en ese respeto que tenemos a nuestros
responsables y autoridades como las Fuerzas y Cuerpos de Seguridad del Estado. Si alguien
se hace pasar por una autoridad, la víctima puede revelar información sensible de su
organización.
• Quid pro quo: Ofrecer algo valioso a las víctimas para intentar conseguir información
sensible o descargar nuestro software malicioso.
• Sentimiento de urgencia: Similar al quid pro quo pero en lugar de dar algo a cambio,
creamos sensación de urgencia para obligar a las víctimas a actuar sin pensar.
• Voluntad de ayudar: En entornos laborales, los trabajadores, cuentan con esta voluntad
de ayudar a los compañeros en todo lo posible.
• Cebo: Dejar un dispositivo físico (como un Universal Serial Bus (USB)) abandonado en un
lugar público y transitado por empleados de nuestra organización objetivo, que contenga
nuestro payload e infecte los sistemas de las víctimas que lo conecten.
También hay que pensar qué le es atractivo a nuestra víctima y puede hacerles realizar las
acciones necesarias para infectar sus equipos. Etiquetas en un USB o nombres de ficheros co-
mo “Fotos Novia Verano”, “Despidos 2025” o “Actualizaciones Nóminas” son ejemplos
bastante descriptivos.
En definitiva, lo que queremos conseguir es implantar un software que nos permita esta-
blecer una conexión con nuestro equipo para ejecutar comandos cómodamente en el equipo
objetivo. No basta con lanzarnos una conexión reversa a nuestro equipo de atacante, en texto
plano. Debemos encriptar nuestro tráfico y encapsularlo utilizando protocolos que no llamen
la atención de los Endpoint Detection and Response (EDR). Se suele encapsular usando el
protocolo Hypertext Transfer Protocol (HTTP) (usando herramientas como reGeorg), In-
ternet Control Message Protocol (ICMP) (con ptunnel-ng) si el firewall permite que salga
tráfico de este tipo, o DNS (utilizando herramientas como DNScat2).
Este reconocimiento debemos realizarlo manualmente, tanto para encontrar la mayor canti-
dad de información interesante, como para no llamar la atención de los Antivirus (AV) o EDR.
Sin embargo, existen multitud de herramientas especializadas como [Link]
bitsadmin/wesng o [Link]
• Listas de control de acceso (ACLs): Todos los controles de acceso a los objetos ante-
riores y recursos (permisos de escritura, ejecución,...).
Para realizar el volcado podemos utilizar muchas herramientas especializadas como Po-
werView o SharpHound (de los desarrolladores de BloodHound). Sin embargo, la mayoría
de estas herramientas son muy agresivas y un EDR bien configurado tendrá reglas para de-
tectarlas. Por ello debemos utilizar, en la medida de lo posible, técnicas más sofisticadas y
sigilosas usando herramientas nativas ya presentes en el sistema. Estas tácticas son conocidas
como Living Off The Land (LOTL).
Por ejemplo, podríamos utilizar el editor ADExplorer de la suite SysInternals para realizar
una captura del directorio activo. Todos los binarios que pertenecen a la suite SysInternals
están firmados por Microsoft y no serán detectados como maliciosos. Una vez transferido
este snapshot a nuestro host, hay diversas herramientas (como [Link]
[Link]) para generar los ficheros necesarios por BloodHound a partir de
la captura del directorio activo.
8 Estado del arte
Como operadores de Red Team, debemos utilizar la información obtenida en la fase previa
para encontrar el camino más corto hasta el administrador de dominio. Una herramienta
ampliamente utilizada es BloodHound, que nos proporciona diversas formas de explotar per-
misos y configuraciones del directorio activo para elevar nuestro privilegio en el entorno.
Además de elevar privilegios en el entorno del directorio activo, habrá muchas ocasiones en
las que tendremos que elevarlos en un mismo sistema. Esto se realiza para conseguir acceso
total a la cuenta de Windows con el mayor privilegio en un sistema local, conocida como
NT AUTHORITY\SYSTEM.
2.1.5 Persistencia
La táctica de persistencia consiste en aplicar varias técnicas para mantener el acceso a un
sistema tras el reinicio de éste, cambio de credenciales y otras acciones que podrían cortarnos
el acceso (MITRE ATT&CK, 2025b). Estas técnicas pueden solaparse con las de elevación de
privilegios, ya que explotan características del sistema operativo que permiten a un adversa-
rio crear persistencias en el sistema para ejecutar tareas en un contexto de privilegios elevados.
Aunque nuestra operación debe continuar haciendo uso del vector de acceso inicial, debe-
mos desplegar puertas traseras para poder acceder remotamente al sistema interno en caso
de que se haya resuelto la vulnerabilidad que nos dió el acceso inicial. Sin embargo, el des-
pliegue de persistencias debe realizarse conscientes de las implicaciones que puede tener en
el sistema ya que podemos alertar a los equipos de Blue Team, si no es hecho adecuadamente.
Una de las técnicas que se suele aplicar para conseguir persistencia en el equipo objeti-
vo es Dynamic Link Library (DLL) hijacking. En este tipo de ataque, en lugar de ejecutar
el código malicioso directamente mediante un ejecutable, introduciremos una librería DLL
maliciosa para que sea otro proceso el que la ejecute (CrowdStrike, 2022a). De esta manera,
permitiremos que el malware realice un bypass de medidas de seguridad tales como whitelist
de aplicaciones y otros controles automáticos.
Sin embargo, la técnica de persistencia más básica, y en muchos casos la más sigilosa,
es analizar el directorio activo y realizar cambios en usuarios no privilegiados con el fin de
conseguir el rol de administrador de dominio. Podemos explotar atributos como GenericAll,
OwnsGroupMembership, WriteDACL o AllExtendedRights entre otros.
Para aplicar las distintas técnicas de persistencia, tendremos que ejecutar un payload en
2.1. Simulaciones de adversario 9
el sistema, en la mayoría de los casos, para configurar nuestro implante que nos permitirá
conectarnos desde nuestro servidor Command and Control (C2). Podemos distinguir 2 tipos
de payload según su contenido:
• Staged: El payload contendrá las instrucciones básicas para descargar el resto del malware
de Internet.
• Stageless: El payload contendrá todo el código necesario para implantar el software que
nos permitirá conectarnos desde nuestro servidor C2.
• Server Message Block (SMB): Es un protocolo de red para compartir ficheros que
permite a las aplicaciones leer y escribir ficheros remotos, y comunicarse con cualquier
software del servidor que esté preparado para recibir una petición de un cliente SMB
(Microsoft, 2016).
• Remote Desktop Protocol (RDP): Es un protocolo de red ofrecido por Microsoft que
proporciona a los usuarios una sesión gráfica a un sistema remoto.
Se ha observado una tendencia muy alta de reutilizar contraseñas para diversos sistemas y
servicios por parte de los usuarios. Por tanto, debemos de probar todas las credenciales váli-
das que tengamos (y que vayamos encontrando) para iniciar sesión en los diversos protocolos
anteriormente mencionados, así como en cualquier otro que nos permita tomar control de
un nuevo sistema. No debemos tampoco olvidar que muchos proveedores de servicios en la
nube, permiten conexiones interactivas a la infraestructura virtual como Azure Web Conso-
le, Amazon Web Services (AWS) Amazon Elastic Compute Cloud (EC2) Instance Connect,
10 Estado del arte
AWS System Manager,... (MITRE ATT&CK, 2025a), y las credenciales que hayamos obte-
nido también pueden ofrecernos una vía de acceso a estas tecnologías.
Además de estas técnicas, durante el proyecto desarrollaré una de las más útiles como
operadores de Red Team: uso de material de autenticación alternativo. Esta técnica
se caracteriza por usar elementos de seguridad como hashes, tickets de Kerberos, tokens de
acceso, etc, para movernos lateralmente por el entorno y bypassear sistemas de control de
acceso (MITRE ATT&CK, 2025a).
El grupo concibió y desarrolló una metodología para analizar las operaciones estadouni-
denses desde el punto de vista del enemigo para averiguar como éste obtenía la información.
De esta manera, determinaron qué información necesitaba protección, obtuvieron informa-
ción sobre las capacidades en inteligencia del enemigo, descubrieron vulnerabilidades en sus
operaciones, evaluaron el riesgo de explotación e idearon formas de frustrar la recopilación o
el uso de información por el enemigo.
Por tanto, en el contexto tecnológico de los ejercicios de Red Team, la seguridad operacional
consiste en identificar esa información crítica que pueda ser captada por el enemigo, si puede
ser útil para ellos y ejecuta las medidas necesarias para eliminar o reducir la explotación
de esta información por el equipo Blue Team (RedTeam Guide, 2025). Esencialmente, con-
siste en entender qué acciones puede observar el equipo Blue Team y minimizar la exposición.
Una de las máximas que debemos asumir es que toda interacción con el objetivo deja
logs. Debemos, por tanto, conseguir que todo rastro que dejemos sea lo más difícil posible
relacionarlo con nuestra organización e infraestructura. Para ello se aplican diversas tácticas,
entre las que encontramos las operaciones de bandera falsa.
2.2. Seguridad operacional (OPSEC) 11
Estas operaciones se caracterizan por culpar a otro actor para engañar al enemigo. El
término ‘bandera falsa’ se originó probablemente en las guerras navales del siglo XVI. Una
nave de guerra izaría ocasionalmente una bandera de un actor neutral (o enemigo) de la
nación adversaria para acercarse lo suficiente a una nave hostil antes de abrir fuego (Cranfield
University, 2023). En el contexto de nuestras ciberoperaciones, podemos utilizar técnicas,
tácticas y procedimientos normalmente aplicados por otros actores (enemigos también de
nuestro objetivo) para nuestra operativa.
Por lo general, esta operativa es necesaria cuando tenemos que interactuar con tecnologías
que no son accesibles a través de Internet, sino que debemos situarnos a cierta distancia
de ellas. Estas tecnologías incluyen WiFi, radio, redes para dispositivos móviles (GSM, 3G,
4G,...) entre otras. Algunas tácticas que debemos aplicar son las siguientes:
• Todas las interfaces de red deben tener una dirección Media Access Control (MAC) distinta
a la proporcionada por el fabricante (MAC Spoofing).
Estas son algunas de las tácticas que debemos utilizar en cada una de nuestras simulaciones
de adversario:
2
El fingerprinting de radiofrecuencias hace referencia a la metodología en la que las características intrín-
secas de un hardware transmisor son embebidas en la onda transmitida e identifican inequívocamente un
dispositivo (Jagannath y cols., 2022).
12 Estado del arte
• Infraestructura de C2 con servidores redirectores para redirigir a los usuarios que visiten
nuestro dominio a una web tapadera.
A parte de las herramientas que utilizemos a nivel de línea de comandos, también debemos
asegurarnos de que el resto de herramientas (tanto gráficas como interactivas) tengan un
User-Agent personalizado. Solo por mencionar algunas: proxies web (como [Link]
.io/ o [Link] Socat, NetCat, el framework Metasploit https://
[Link]/,...
Esto significa que debemos implementar sistemas de control de acceso y autenticación para
validar nuestras comunicaciones, y otros servicios tapadera en caso de que alguien investigue
nuestro sistema.
Por un lado, debemos modificar todas las herramientas que utilizemos para que no sean
detectadas, ya que la mayoría de soluciones de ciberdefensa tienen firmas digitales de muchos
2.3. Servicios de dominio de directorio activo (AD DS) 13
binarios de pentesting. Por ejemplo, en lugar de ejecutar [Link] para extraer contra-
señas del proceso Local Security Authority Subsystem Service (LSASS) o tickets Kerberos,
debemos modificar el código fuente de esta herramienta, dejar solo las funcionalidades que
necesitemos y compilarlo.
Por otro lado, debemos de ser conscientes del ruido que generan nuestros ataques en la red
y minimizarlo lo máximo posible. Si vamos a realizar un ataque kerberoasting (como veremos
más adelante) para solicitar Ticket Granting Service (TGS), no debemos solicitarlos todos
a la vez, sino ir solicitándolos en intervalos de tiempo irregulares. Además, en lugar de usar
intervalos de tiempo fijos, debemos ejecutar nuestras herramientas en un intervalo imprede-
cible. Esto implica que su comportamiento sea menos predecible y más difícil de correlacionar.
El servicio de directorio activo (AD DS), proporciona los métodos para almacenar datos
en el directorio y poner dichos datos a disposición de los usuarios y administradores de red.
Active Directory usa un almacén de datos estructurado como base para una organización
jerárquica lógica de la información del directorio. Este almacén de datos, también conocido
como directorio, contiene información sobre los objetos de Active Directory. Estos objetos
suelen incluir recursos compartidos como servidores, volúmenes, impresoras y cuentas de
usuario y equipo de red (Microsoft, 2024).
Todas estas características, tanto de funcionalidad como de seguridad, hacen que este
servicio sea muy utilizado en entornos empresariales. Aunque tiene más de 20 años, el servicio
de directorio activo de Microsoft es usado por más del 90% de empresas del Fortune 1000
para la gestión de identidades y controles de acceso. Esta prevalencia de uso hace que sea
un objetivo prioritario para adversarios, ya que un directorio activo cuya seguridad ha sido
14 Estado del arte
2.3.1 Objetos
Un objeto es cualquier recurso del Directorio Activo tales como impresoras, usuarios, Or-
ganizational Unit (OU), controladores de dominio, etc. En el árbol LDAP del directorio,
los nodos hoja representan a los usuarios del directorio activo. Estos usuarios pueden tener
muchos atributos, aunque los más comunes son el identificar único global (Globally Unique
Identifier (GUID)), el nombre de usuario, la dirección mail, la fecha del último cambio de
contraseña y el último login. Uno de los atributos más importantes es el identificador de
seguridad (Security Identifier (SID)). Este atributo es único entre todos los objetos del domi-
nio y se utiliza tanto para autenticarse en sistemas como en recursos compartidos. Al estar
ligado al usuario, incluso si éste cambia sus otros atributos, se utiliza en la listas de control
de acceso (ACLs) para permitir o denegar acceso a dicho usuario.
Otro de los objetos más importantes que encontraremos en nuestras simulaciones de adver-
sario en entornos AD son las unidades organizativas (OUs). Estas permiten a los administra-
dores controlar los permisos concedidos a los usuarios de una forma más granular. Pongamos
que un usuario pertenece a un OU top-level llamado Alicante, y existen varios OU hijos pa-
ra cada barrio Florida, San Blas, etc. Si el administrador quiere conceder un determinado
permiso, lo puede asignar a los usuarios de la OU Alicante. En este caso, todas las OUs hijos
obtendrán dicho permiso. Si por el contrario, quiere asignar el permiso a la OU San Blas,
sólo los usuarios pertenecientes a esa OU obtendrán el permiso. Además, estas OUs servirán
como contenedores sobre los que se aplicarán la políticas de grupo para la gestión de usuarios
y estaciones de trabajo en dichas GPOs.
Sin embargo, posiblemente el objeto más importante del Directorio Activo y el que define
su estructura, es el dominio. El dominio es la separación lógica más básica que se utiliza en un
entorno de Directorio Activo. Contiene objetos hoja como usuarios o estaciones de trabajo,
que a su vez están contenidos en otros objetos contenedores, tales como unidades organizati-
vas (OUs) o grupos de seguridad. Cada dominio tiene una base de datos separada del resto
y una serie de políticas que se aplicarán a todos los objetos de dicho dominio. Los dominios
también tiene un servidor (o más de uno) que cumple el rol de controlador de dominio
y se encarga de administrar los usuarios y gestionar la autenticación en su dominio. Estos
servidores se encargan de replicar la base de datos del directorio a otros DCs, y suelen actuar
como servidor de nombres DNS. Comprometer estos DCs, significa obtener el control total del
dominio, lo que nos permitirá movernos lateralmente y aplicar persistencia sobre el dominio
de forma sencilla y sigilosa. Por este motivo, nuestro principal objetivo como operadores de
Red Team será el de vulnerar estos DCs.
Con el objetivo de mitigar las vulnerabilidades críticas de NTLMv1, en el año 2000 surgió
NTLMv2 en la versión de Windows 2000 SP4 y se convertiría en el estándar de facto du-
rante los siguientes años. En lugar del challenge de 56 bits de NTLMv1, esta nueva versión
utilizaba challenges de 128 bits. También se introdujo el uso de HMAC-MD5 para asegurar
la integridad de los mensajes de autenticación, y protecciones contra ataques de downgrade4 .
A pesar de las mejoras que introdujo Microsoft con NTLMv2, éste sigue siendo vulnerable
a multitud de ataques. Por esta razón, Microsoft recomienda deshabilitar la autenticación
NTLM (en las últimas versiones de Windows ya viene deshabilitado por defecto) en todos los
equipos, y reemplazarlo por el protocolo basado en tickets Kerberos.
[Link] Kerberos
Kerberos es un protocolo de autenticación a nivel de red desarrollado en los años 80 por
científicos del Massachusetts Institute of Technology (MIT). El término Kerberos proviene de
‘Cerberus’ (del griego antiguo Κέρβερος), el perro guardián a las puertas del reino de Hades
en la mitología griega. Este protocolo utiliza algoritmos criptográficos robustos para que un
cliente pueda probar su identidad a un servidor (y viceversa) a través de una conexión de red
insegura. Una vez que cliente y servidor hayan utilizado Kerberos para probar su identidad,
pueden encriptar sus comunicaciones para asegurar tanto la privacidad como la integridad
de los datos (Massachusetts Institute of Technology, 2024).
• Máquina cliente: Equipo donde se encuentra el usuario que quiere acceder a un de-
terminado servicio.
• Servidor de aplicación: Equipo que ofrece el servicio al que quiere acceder el usuario.
• Key Distribution Center (KDC): Servidor central encargado de autenticar usuarios
y de la distribución de tickets para que puedan identificarse. En el caso de Active
Directory, el KDC se encuentra instalado en el Domain Controller (DC) (Motero, Carlos
Díaz and Higuera, Juan Ramón Bermejo and Higuera, Javier Bermejo and Montalvo,
Juan Antonio Sicilia and Gómez, Nadia Gámez, 2021).
2.4. Normativas y ciberdefensa internacional 17
Este KDC se encarga de almacenar todos los tickets y claves de encriptación necesarias pa-
ra el correcto funcionamiento del protocolo. Comentar brevemente que es aquí donde se aloja
la clave Advanced Encryption Standard (AES) del usuario krbtgt, la cuál es utilizada para
encriptar los Ticket Granting Ticket (TGT)s antes de enviárselos al cliente, y desencriptar
dichos tickets para su validación.
De acuerdo con las consecuencias que pueda tener un ciberataque sobre una determinada
organización del sector público, es clasificada en 4 categorías que determinan cuáles son los
mínimos en materia de defensa cibernética exigidos por la Ley.
• Básica: Cuando un incidente de seguridad suponga un perjuicio limitado sobre las fun-
ciones de una organización o sus activos.
activos.
Para entornos de Active Directory, el CCN tiene diversas guías CCN-STIC orientadas al
endurecimiento de controladores de dominio, estaciones de trabajo, servicios de autentica-
ción y otros elemntos que forman parte de este tipo de infraestructuras. Su adopción no solo
mejora la seguridad de una organización, sino que en mucho casos es necesaria para el cum-
plimiento de la legislación vigente.
Otro ejercicio menos conocido es Crossed Swords, también llevado a cabo por el CCDCOE,
que está diseñado para formar a especialistas en ciberseguridad para ejecutar una serie de
operaciones ofensivas en un entorno simulado y formar comandos militares en capacidades
de comando y control en operaciones de ataque. En el escenario de este ejercicio nos encon-
tramos varias naciones ficticias y una nación amiga que está en situación de conflicto armado
con una tercera nación hostil (NATO Cooperative Cyber Defence Centre of Excellence, 2024).
Toda esta preparación de los países OTAN no se centra solo en los aspectos técnicos y
operativos del ciberespacio, sino en la integración de las capacidades cibernéticas con otras
capacidades militares convencionales. Aunque carece de naturaleza física, el ciberespacio ha
sido descrito como un ‘dominio global’ o ‘quinto dominio’, complementando a los dominios
tradicionales de tierra, mar, aire y espacio (Michael N. Schmitt, 2017).
Sin embargo, defender estos entornos no es tarea fácil. Algunos actores de amenazas como
20 Estado del arte
APTs6 o grupos cibercriminales cuentan con conocimientos técnicos avanzados y recursos su-
ficientes como para llevar a cabo ciberoperaciones sofisticadas y de difícil detección. Además,
existe un desequilibrio inherente entre los actores defensores y atacantes que incrementa la
dificultad de la defensa de estos entornos: el atacante solo necesita encontrar una debilidad
o vulnerabilidad conocida en un sistema para comprometer todo el entorno, mientras que los
actores defensores deben mantener una infraestructura segura en todo momento.
Estos registros no solo son útiles para la detección de amenazas en tiempo real, sino que
son de utilidad a la hora de realizar un análisis forense del entorno tras un ataque a la infra-
estructura. Además, su correcta conservación puede ser vital para satisfacer ciertos requisitos
legales, así como proporcionar evidencias en investigaciones judiciales y auditorías de los sis-
temas.
Tanto en España como a nivel europeo, existen diversas normativas que obligan a conser-
var registros un determinado período de tiempo. A nivel europeo, el reglamento general de
protección de datos (RGPD) que exige la conservación de registros para garantizar la segu-
ridad de los sistemas. A nivel nacional, además de diversas guías del CCN no vinculantes
legalmente, la Ley de Servicios de la Sociedad de la Información (LSSI) en su artículo 12
nos dice que: los operadores de redes, proveedores de acceso a redes de telecomunicaciones y
prestadores de servicios de alojamiento de datos deben retener los datos de conexión y tráfico
generados por un perído máximo de 12 meses (España, 2002).
Elastic Security. La guía para la gestión de registros de seguridad informática del NIST
describe las siguientes 3 capas en una infraestructura SIEM:
• Generación de registros: Esta primera capa contiene todos los equipos que generan
datos de registro. Algunos hosts ejecutan aplicaciones de log para que éste esté dispo-
nible a través de la red para los servidores de la segunda capa. Otros equipos, permiten
que los servidores de la segunda capa recuperen dichos datos de otro modo (Kent, Karen
and Souppaya, Murugiah and Scarato, Matthew, 2006).
• Monitorización de registros: Esta tercera capa contiene las consolas utilizadas para
monitorizar y revisar los datos de registro y el resultado de los análisis automáticos sobre
dichos datos (Kent, Karen and Souppaya, Murugiah and Scarato, Matthew, 2006).
Ante esta situación, a lo largo de los últimos años, diversas perspectivas y herramientas
han surgido con el objetivo de mejorar la visibilidad de la superfície de ataque de la infraes-
tructura utilizada y la capacidad de reacción ante posibles amenazas.
Los EDRs utilizan multitud de técnicas para detectar actividad sospechosa, como la moni-
torización de procesos y conexiones o la búsqueda de ficheros maliciosos. Algunas soluciones
muy populares son CrowdStrike Falcon, Windows Defender para Endpoints o SentinelOne.
Por ejemplo, las soluciones EDR supervisan los endpoints, mientras que las NDR son
soluciones que actúan únicamente a nivel de red. Con un XDR, podemos unificar e integrar
estos datos para aportar una visibilidad completa y precisa de la situación actual en materia de
seguridad de la organización. En cuanto a fabricantes de estos sistemas, nos encontramos los
mismos que en los EDR: CrowdStrike Falcon XDR, Microsoft Defender XDR o SentinelOne
Singularity XDR.
7
La inspección profunda de paquetes (DPI), también conocida como detección de paquetes, es un método
para examinar el contenido de los paquetes de datos a medida que pasan por un punto de control en la red
(Fortinet, 2025b).
2.5. Estado de la defensa en entornos corporativos 23
Con el paso del tiempo, los profesionales de la seguridad defensiva se dieron cuenta de las
carencias que tenía esta estrategia a la hora de combatir amenazas sofisticadas. En 1987,
Dorothy Denning publica un artículo muy influyente denominado An Intrusion-Detection
model, en el que plantea una estrategia de detección basada en análisis de comportamiento
y heurística. Sin embargo, no es hasta la década de los 90, que se empiezan a implementar
soluciones IDS (del inglés, Intrusion Detection System), que utilizaban análisis comporta-
mentales y heurísticos para identificar amenazas potenciales sin firmas exactas.
En esta sección, abordaremos estas dos estrategias fundamentales que coexisten en los
sistemas de seguridad defensiva actuales. Sin embargo, se puede afirmar que es imposible
diseñar un algoritmo que sea capaz de detectar todo el malware. Esto es porque el problema
de detectar malware ha demostrado ser NP-completo en muchos estudios (Aslan, Ömer Aslan
and Samet, Refik, 2020).
Entre las técnicas más utilizadas para este tipo de detección se encuentran los hashes crip-
tográficos. Un hash es el resultado de aplicar cifrado irreversible a un objeto de datos de tipo
ASCII o binario. Este cifrado transforma dicho objeto en una cadena de texto encriptada,
usando una función matemática de tal manera que el objeto original no pueda se recuperado
a partir de la cadena encriptada. Cada objeto tiene un único hash, lo que implica que la
más mínima modificación del objeto original resulta en un hash completamente diferente.
Estas características hacen de este tipo de cifrado, un método viable para la verificación de
24 Estado del arte
Estos hashes permiten a los analistas comparar rápidamente un objeto potencialmente ma-
licioso con una base de datos de hashes de malware conocido (Aditya Bhatt, 2025). Utilizar
esta tećnica conlleva un gasto computacional bajo, ya que no requiere ejecución y hace uso
de tecnologías de bases de datos, haciéndolo seguro y eficiente. Una de las herramientas más
conocidas es VirusTotal ([Link] un servicio online que nos permite
analizar ficheros sospechosos, URLs, dominio y direcciones IPs para detectar malware.
Otra técnica muy utilizada es la búsqueda de cadenas de texto o bytes específicos en fiche-
ros binarios o scripts. Se conoce como ’pattern matching’ y hace uso de expresiones regulares
o ciertos patrones en formato binario.
Si bien es cierto que el uso de esta estrategia conlleva muchas ventajas tiene grandes limita-
ciones. Por ejemplo, ante el uso de vulnerabilidades de día cero8 por parte de actores estado,
ataques en memoria RAM (fileless) o el uso de malware polimórfico hace completamente
inútil esta estrategia.
Este tipo de detección utiliza diversas técnicas para detectar exitosamente acciones mali-
ciosas. Entre ellas nos encontramos las siguientes:
• Monitorización de procesos: Los softwares de detección, observan el comportamiento de
los procesos en tiempo de ejecución y determinan si están realizando acciones sospecho-
sas.
• Monitorización de llamadas al sistema (syscalls): Mediante la intercepción y el análisis
de las llamadas la sistema realizadas por los procesos, se puede detectar amenazas
potenciales.
• Monitorización a nivel de red: Analizando el tráfico de red, se puede identificar patrones
usados por malware como protocolos inesperados o conexiones recurrentes a servidores
externos.
• Análisis mediante entornos aislados (sandbox): Esta técnica consiste en la ejecución del
software sospechoso en entornos virtuales aislados para observar su comportamiento sin
afectar al sistema real.
8
Las vulnerabilidades de día cero (o zero-day) son aquellas conocidas por determinados atacantes pero no
por los fabricantes o por los usuarios. Son las más peligrosas ya que un atacante puede explotarlas sin que
el usuario sea consciente de que es vulnerable (Centro Criptológico Nacional, 2015).
2.5. Estado de la defensa en entornos corporativos 25
Una de las principales desventajas de esta detección son los falsos positivos. Debido a
las técnicas utilizadas previamente descritas, es posible que un determinado objeto de un
sistema sea clasificado como malicioso cuando en realidad, el motivo de dicha clasificación es
una funcionalidad legítima. Estos falsos positivos causan muchos problemas a los analistas de
seguridad ya que deben revisarlos y clasificarlos como legítimos. La problemática es mayor
cuando no hay intermediario entre el sistema de detección y la acción a llevar a cabo para
solventar la amenaza, ya que puede conllevar una interrupción de servicios y bloqueos de
procesos o usuarios innecesarios.
3 Metodología
En este proyecto, se analizará de forma práctica la seguridad de un entorno de Directorio
Activo. Las simulaciones de ataques reales se llevarán a cabo en un entorno de pruebas con-
trolado y se analizarán sus efectos sobre el Directorio Activo. Se partirá de la premisa de que
se ha logrado un acceso inicial a la red y tenemos unas credenciales de dominio.
Por otro lado, combinaremos metodologías cualitativas, como la evaluación de técnicas tan-
to de ataque como de defensa del framework MITRE ATT&CK, con metodologías cuantitativas,
como la eficiacia del endurecimiento aplicado.
Este enfoque híbrido combina la experimentación práctica con el rigor académico para
ofrecer una perspectiva integral de la seguridad de un entorno de Active Directory. Este tipo
de investigación nos permitirá:
27
28 Metodología
• [Link]
• [Link]
Para gestionar adecuadamente nuestro entorno AD, se desplegarán 3 servidores con el rol
de controlador de dominio:
La infraestructura interna de la red estará constituida por dos segmentos de red, uno por
cada dominio [Link] y [Link]. Por un lado, el controla-
dor de dominio raíz (DC03) tendrá tres interfaces de red: una conectada a ambos controladores
de dominio, una conectada a la red del dominio de Madrid y otra al dominio de Alicante.
Por otro lado, los controladores de dominio de Madrid y Alicante contarán con dos in-
terfaces de red: una interna para su dominio y otra compartida entre los otros DCs de la
infraestructura. La estación de trabajo, contará con una interfaz de red conectada a su res-
pectiva red interna (la del dominio de Madrid) y otra interfaz contectada a una red exterior.
Cada controlador de dominio actuará como servidor de nombres DNS para su propio do-
minio. El servidor raíz del bosque [Link] almacenará los registros DNS de los dos
dominios hijos. Los controladores de dominio hijo tendrán los registros DNS de su propio
dominio, y reenviarán las consultas al servidor DNS del bosque. Esta configuración garantiza
una autenticación eficiente, una resolución de nombres rápida en cada dominio y proporciona
redundancia en los datos.
3.3. Infraestructura del AD 31
DC=madrid,DC=empresa,DC=local
OU=Usuarios OU=Equipos
CN=lucas
DC=alicante,DC=empresa,DC=local
CN=Usuarios OU=Equipos
CN=maria
Por un lado, en el árbol LDAP del dominio de Madrid 3.2 observamos las OUs developers
y sales, con un único usuario lucas en la OU developers. Además tenemos la estación de
trabajo WS01 y el controlador de dominio DC01, previamente mencionados. Por otro lado, en
el árbol LDAP del dominio de Alicante 3.3 podemos encontrar las mismas unidades organiza-
tivas, un usuario llamado maria en la OU sales, y sus respectivos controladores de dominio
y estaciones de trabajo.
Para que el laboratorio funcione de forma óptima, se desplegarán los siguientes recursos
para alojar las máquinas virtuales:
Como sistema operativo, los controladores de dominio usarán Windows Server 2019 mien-
tras que para las estación de trabajo hemos optado por Windows 10 Pro. En el caso de la
máquina atacante usaremos Kali Linux 2025 1a que contiene la mayoría de herramientas
que utilizaremos en nuestra simulación de adversario ya preinstaladas.
Tras el reinicio correspondiente de nuestro controlador de dominio, debemos agregar dos de-
legaciones de zona DNS. Esto nos permitirá tener una administración distribuida del DNS en-
tre cada uno de los dominios de nuestra red. Para ello debemos especificar la dirección IP de los
controladores de dominio: [Link] y [Link].
Código 3.2: Configuración DNS de nuestros dominios
2 -ChildZoneName "madrid" `
3 -NameServer "[Link]" `
4 -IPAddress "[Link]"
5
6 Add-DnsServerZoneDelegation -Name "[Link]" `
7 -ChildZoneName "alicante" `
8 -NameServer "[Link]" `
9 -IPAddress "[Link]"
Hecho esto, ya se pueden instalar los servicios de Active Directory y configurar un nuevo
dominio hijo [Link] en el controlador de dominio DC01. La hora del sistema
debe ser sincronizada con el comando w32tm para evitar problemas de replicación entre los
controladores de dominio. Se configurará el DNS con delegación y se definirán las rutas
necesarias para el correcto funcionamiento de nuestros dominios:
Código 3.3: Script de configuración del dominio [Link] en DC01
10 ("[Link]\Administrador", `
11 (ConvertTo-SecureString "MachoHercules123!" -AsPlainText -Force))
12
13 Install-ADDSDomain -ParentDomainName "[Link]" `
14 -NewDomainName "alicante" `
15 -InstallDNS -CreateDnsDelegation:$true `
16 -DatabasePath "C:\Windows\NTDS" `
17 -Credential $cred `
18 -LogPath "C:\Windows\NTDS\Logs" `
19 -SysvolPath "C:\Windows\SYSVOL" `
20 -NoRebootOnCompletion:$false `
21 -Force
1 New-ADTrust `
2 -Name "[Link]" `
3 -TargetDomain "[Link]" `
4 -Direction Bidirectional `
5 -TrustType "Domain" `
6 -TrustTransitive $true `
7 -Server [Link]
8
9 $cred = New-Object [Link] (
10 "[Link]\Administrador",
11 (ConvertTo-SecureString "MachoHercules123!" -AsPlainText -Force)
12 )
13
14 Add-ADGroupMember -Identity "CN=Administrador,CN=Users,DC=madrid,DC=empresa,DC←-
,→ =local" `
15 -Members "CN=Administradores de empresas,CN=Users,DC=empresa,DC=local" `
16 -Server [Link] `
17 -Credential $cred
18
19 Enable-PSRemoting -Force
3
4 New-ADOrganizationalUnit -Name "Usuarios" `
5 -Path "DC=madrid,DC=empresa,DC=local"
6
7 New-ADOrganizationalUnit -Name "Developers" `
8 -Path "OU=Usuarios,DC=madrid,DC=empresa,DC=local"
9
Vamos a crear 2 usuarios en este dominio. El usuario lucas simulará un usuario humano
que iniciará sesión en el dominio. El usuario SQL_Service se trata de una cuenta de servicio
usada por SQL Server para autenticarse en el dominio.
Código 3.7: Creación de los usuarios en el dominio [Link]
Este usuario vamos a agregarlo al grupo Operadores de copia de seguridad para abusar
de la pertencias a dicho grupo durante la operación de Red Team:
Código 3.8: Adición del usuario sqlservice al grupo Backup Operators
1 Enable-PSRemoting -Force
2
1 $sysinternals_url = "[Link]
2 $extract_path = "C:\SysInternals"
3
4 New-Item -Path $extract_path -ItemType Directory
3.3. Infraestructura del AD 37
5
6 Invoke-WebRequest -Uri $sysinternals_url `
7 -OutFile "$extract_path\[Link]"
8
9 Expand-Archive -Path "$extract_path\[Link]" `
10 -DestinationPath $extract_path
11
Hecho esto, vamos a añadir la estación de trabajo WS01 a nuestro dominio de Madrid.
Código 3.13: Adición de la estación de trabajo al dominio [Link]
Con el siguiente código PowerShell, se creará un recurso compartido a nivel de red usando el
protocolo SMBv2. Todos los usuarios tendrán permisos de lectura, y se concederán permisos
de lectura y escritura al usuario lucas.
Código 3.14: Creación del recurso compartido SMB en [Link]
4
5 $cred = ConvertTo-SecureString "MachoHercules123!" -AsPlainText -Force
6 Enable-LocalUser -Name "Administrador"
7 Set-LocalUser -Name "Administrador" -Password $cred
8 Add-LocalGroupMember -SID "S-1-5-32-580" -Member "Administrador"
9
10 Start-Service winrm
11 netsh advfirewall firewall add rule name="WinRM-HTTP" dir=in localport=5985 ←-
,→ protocol=TCP action=allow
12
13 Restart-Computer -Force
3.4.1 Suposiciones
Aunque no se realizará la fase de intrusión inicial, se considera que los siguientes vectores
de ataque pueden habernos dado ese acceso a la red interna antes mencionado:
• Spear phishing: Un ataque podría enviar un mail dirigido a un usuario del dominio
suplantando la identidad de otro usuario. Este mail contendría un archivo adjunto
malicioso que ejecute código en el equipo de la víctima o un enlace a una web de
phishing1 que solicite credenciales de acceso.
• Acceso físico: Mediante el acceso físico a las oficinas del objetivo, podemos haber
obtenido un punto de acceso inicial para empezar nuestra operativa de compromiso del
entorno.
Por otro lado, la muestra es la parte representativa de la población que se analizará directa-
mente, en otras palabras, el laboratorio virtual que se desplegará y configurará para simular
un entorno real.
3. Ejecución de los ataques: Realización paso a paso de cada técnica de ataque sobre
el laboratorio documentando los resultados adecuadamente.
4. Nivel de acceso: Registro de los objetos comprometidos y nivel de acceso logrado tras
cada ataque.
qué equipos están disponibles en la red, qué servicios ofrecen esos equipos, que versiones de
sistemas operativos están usando, qué tipo de filtrado se está utilizando, y docenas de otras
capacidades.
Además del fichero ejecutable por línea de comandos, la suite de Nmap incluye una interfaz
gráfica llamada Zenmap, una utilidad para comparar resultados de escaneos llamada ndiff,
un herramienta para generación de paquetes y análisis de respuestas llamado nping, y la
utilidad NetCat.
3.7.2 NetCat
NetCat es una herramienta de red que lee y escribe datos a través de redes desde la línea
de comandos (Nmap Project, 2025a). NetCat originalmente era un binario más arcaico y sin
tantas funcionalidades como el actual, pero el proyecto Nmap reescribió esta herramienta
(ahora llamada ncat) como una reimplementación mejorada.
Esta herramienta es compatible tanto con TCP como UDP a nivel de la capa de transporte,
y también funciona via IPv4 e IPv6 de la capa de red. Está diseñada para ser una herramienta
fiable que proporcione conectividad de red instantánea a otras aplicaciones y usuarios (Nmap
Project, 2025a).
3.7.3 NetExec
Esta herramienta es heredera de un proyecto iniciado en 2015 por el analista de seguridad
Marcello Salvati (conocido como @byt3bl33d3r) llamado CrackMapExec. Con el paso de los
años, otros expertos en seguridad fueron contribuyendo a mantener el proyecto, pero en Oc-
tubre de 2023 se publicó la primera release en GitHub de NetExec.
Gracias a su interacción con el protocolo LDAP, nos servirá para extraer datos del dominio
y poder inyectárselos al software BloodHound. Por último, destacar de esta herramienta que
es compatible con los protocolos de autenticación NTLM y Kerberos.
3.7.4 Responder
Responder es envenenador de tráfico de red Link-Local Multicast Name Resolution (LL-
MNR), NBT-NS y MDNS, con servidores de autenticación HTTP/SMB/MSSQL/FTP/L-
2
El ataque de password spraying es una técnica de fuerza bruta en la que el atacante probará una contraseña
(o varias) con un diccionario de usuarios para, entre otros objetivos, evitar ser bloqueado por las medidas
de seguridad presentes.
3.7. Herramientas utilizadas 41
DAP fraudulentos que soportan NTLMv1, NTLMv2, LMv2, NTLMSSP y autenticación bá-
sica HTTP (Laurent Gaffie, 2025). Este proyecto es un fork del repositorio del mismo nombre,
originalmente desarrollado por SpiderLabs, que ahora es mantenido por el CEO de Secori-
zon, Laurent Gaffié.
Al soportar varios protocolos es una herramienta muy potente que se puede adaptar a
muchas situaciones en una simulación de adversario. Estos servidores fraudulentos que des-
pliega Responder, nos permiten capturar hashes NetNTLMv2 de autenticación que podemos
intentar crackear con herrmientas como Hashcat o John-The-Ripper.
3.7.5 Hashcat
Hashcat es la herramienta de recuperación de contraseñas más rápida y avanzada del mun-
do, compatible con 5 modos de ataque para más de 300 algoritmos de hashing (Jens ’atom’
Steube and Gabriele ’matrix’ Gristina, 2022). Es utilizado de forma habitual por auditores
de seguridad para evaluar la robustez de una contraseña o durante los trabajos de pentesting
(Tarlogic Security, 2025).
Entre las ventajas de Hashcat, se destaca el soporte de GPU, para acelerar el proceso de
cracking en la tarjeta gráfica y el procesado distribuido entre nodos de cracking (Tarlogic Se-
curity, 2025). También mencionar, que Hashcat es compatible con Windows, Linux y MacOS,
además que a partir de 2015, se liberó el código fuente de esta herramienta en GitHub.
3.7.6 Impacket
Impacket es una colección de clases Python para trababjar con protocolos de red. Fue
originalmente desarrollado por la empresa SecureAuth, aunque ahora es mantenido por
Fortra's Core Security. Impacket está enfocado en ofrecer una interfaz de interacción
a bajo nivel con los paquetes que circulan por una determinada de red.
Con Impacket, podemos construir paquetes de ciertos protocolos desde 0, así como ‘parsear’
datos que circulan por la red y su Application Programming Interface (API) orientada objeto
hace que la interacción con los protocolos jerárquicos de un paquete sea sencilla (Fortra
Core Security, 2024). En este proyecto, no se desarrollarán nuevas herramientas usando esta
colección, sino que utilizaremos los scripts de ejemplo que vienen en el sistema operativo Kali
Linux.
3.7.7 Evil-WinRM
Evil-WinRM es un software diseñado para interactuar con cualquier equipo Windows con el
servicio WinRM habilitado (puerto TCP/5985). Aunque este programa puede ser usado por
administradores de sistema para propósitos legítimos, muchas de sus características y funcio-
nalidades están enfocadas al pentesting. Está basado principalmente en la librería WinRM de
Ruby desde su versión 2.0, sin embargo ha ido evolucionando para usar el protocolo Powershell
Remoting Protocol (PSRP) (Hackplayers, 2025).
42 Metodología
3.7.8 Chisel
Chisel es una herramienta para tunelizado de comunicaciones TCP/UDP sobre HTTP.
El software, escrito en Golang, incluye tanto el cliente como el servidor para establecer la
comunicación. Se utiliza principalmente para atravesar cortafuegos, aunque también puede
ser usado como bastión para proporcionar un punto de acceso seguro a una determinada red
(Jaime Pillora, 2025).
3.7.9 BloodHound
La herramienta BloodHound utiliza la teoría de grafos para revelar relaciones ocultas y a me-
nudo no intencionadas, entre los elementos de un entorno de Directorio Activo (BloodHound
Team, 2025). Desde nuestro equipo atacante, se importarán los datos extraídos del AD en una
base de datos Neo4j. De esta manera, BloodHound identificará fácilmente cadenas complejas
de ataque que, de otra manera, serían imposibles de identificar rápidamente.
La otra herramienta de esta suite es AzureHound. Como su nombre indica, recoge datos de
un entorno en la nube Azure, con la API REST de Azure y otras tecnologías que permiten
extraer datos de la infraestructura cloud. Tampoco utilizaremos esta herramienta, ya que este
tipo de infraestructura queda fuera del alcance de este proyecto.
4 Desarrollo
4.1 Ataque
4.1.1 Reconcimiento inicial de la estación de trabajo WS01
Partiendo de la premisa de que se ha comprometido el usuario lucas perteneciente al do-
minio [Link] con la contraseña MachoHercules123!, simularemos diversas
técnicas para movernos lateralmente, escalar privilegios y aplicar persistencia en el entorno
de Directorio Activo. Primero realizaremos un escaneo de los puertos TCP más típicos que
suelen usar los servicios de Active Directory.
Figura 4.1: Escaneo de los puertos TCP más comunes sobre la estación de trabajo WS01
Figura 4.2: Listado de recursos SMB compartidos por la estación de trabajo WS01
43
44 Desarrollo
Debido a que los ficheros .scf suelen estar monitorizados por los EDR, utilizaremos un fi-
chero .url malicioso. Para evitar que nuestro fichero se muestre en el explorador de archivos,
estableceremos el atributo oculto de nuestro fichero malicioso en el recurso compartido SMB.
Como atacantes utilizaremos este fichero para referenciar recursos remotos (nuestra máquina
atacante ejecutando el responder) y así poder capturar los hashes NetNTLMv2.
Código 4.1: Fichero URL malicioso que realiza una petición SMB al servidor atacante
1 [InternetShortcut]
2 URL=whatever
3 WorkingDirectory=whatever
4 IconFile=\\[Link]\share\[Link]
5 IconIndex=1
Desde nuestra máquina atacante, nos conectamos via SMB al directorio compartido y
subimos el fichero URL malicioso (ver figura 4.3).
Figura 4.3: Subida de fichero URL malicioso al directorio compartido por SMB
Una vez tenemos el fichero subido, ya podemos lanzar la herramienta responder para en-
venenar las peticiones y poder capturar los hashes NetNTLMv2 de los usuarios que accedan
al directorio compartido. Como podemos observar en la figura 4.4, el usuario Adminstrador
de dominio ha accedido a la carpeta compartida y hemos podido capturar su hash.
4.1. Ataque 45
Figura 4.4: Captura del hash NetNTLMv2 del usuario Adminstrador de dominio
usuario::dominio:challenge:respuesta_HMAC:blob
Tras realizar nuestro ataque de diccionario contra el hash, no hemos podido encontrar la
contraseña en texto claro (ver figura 4.6) ya que no se encuentra en el diccionario que hemos
usado. Podríamos intentar utilizar otro diccionario en español, o crear nosotros el nuestro
propio con la información que tenemos del objetivo. Sin embargo, como el tráfico SMB no
está firmado (ver figura 4.2) vamos a intentar realizar un ataque denominado NTLM relay.
46 Desarrollo
Este challenge es un nonce de 8 bytes generado por el servidor, que se envía al cliente
que quiere conectarse a un servicio. El cliente cifra dicho challenge con su hash NTLM y
se lo envía de vuelta al servidor. Este mensaje se conoce como response. De esta manera se
produce una autenticación segura sin necesidad de enviar por la red el ningún hash NTLM,
ya que el servidor ya conoce este hash y lo utiliza para descifrar el response recibido, el cuál
debe coincidir con el challenge previamente enviado.
Sin embargo, como atacantes solo vamos a retransmitir estos paquetes sin manipularlos,
y cuando el servidor haya autenticado al cliente, le enviaremos un paquete al cliente para
indicarle que ha habido un fallo en la autenticación (ver figura 4.7). De esta manera, nos
autenticaremos correctamente en el servicio que decidamos.
4.1. Ataque 47
Las únicas condiciones que tienen que darse para que el ataque sea exitoso son que el ser-
vidor esté ejecutando dicho servicio, y en el caso de que el servicio objetivo sea SMB, que
dicho tráfico no esté firmado.
Para realizar este ataque vamos a hacer uso de la herramienta ntlmrelayx de la suite
impacket. Esta herramienta es capaz configurar varios servicios falsos en nuestra máquina
atacante para que los clientes se autentiquen a nosotros y que podamos retransmitir los pa-
quetes que nos envíen a servidores legítimos. Como podemos observar en la figura 4.8, sólo
vamos a configurar un servicio SMB falso en nuestro kali linux.
Una vez conseguido el ataque se pueden realizar multitud de acciones, como lanzar una
consola interactiva o ejecutar comandos en el servidor. En nuestro caso, si el cliente tiene los
permisos suficientes, listaremos los hashes NTLM de la SAM del equipo.
En este punto, muchos operadores de Red Team creen que para que el ataque sea exitoso,
el cliente debe introducir una recurso a nivel de red inexistente. Sin embargo, como hemos
observado previamente, usando distintos ficheros como .url o .lnk, entre otros, podemos
forzar la búsqueda de dicho recurso para que se realice la autenticación.
Gracias al fichero .url que hemos alojado previamente en la carpeta compartida por SMB,
cuando alguien acceda a dicha carpeta se autenticará contra nosotros en lugar de contra el
servidor legítimo. Durante este proceso, como atacantes, impersonaremos al servidor de cara
al cliente y al cliente de cara al servidor.
48 Desarrollo
Con los hashes NTLM obtenidos previamente (ver figura 4.10) y haciendo uso de la he-
rramienta Evil-WinRM, podemos acceder de forma remota a la estación de trabajo con el
siguiente comando:
Para la shell inversa1 , vamos a utilizar un script de powershell del repositorio Nishang
([Link] Este repositorio contiene scripts de PowerShell
y payloads2 para simulaciones de adversario, pruebas de penetración y seguridad ofensiva. En
concreto, se utilizará el script Invoke-PowerShellTcp.ps1 con una ligera modificación: en la
última línea de este fichero, y usando las funciones definidas en el propio código, lanzaremos
la shell inversa a nuestro kali:
Una vez tenemos el script preparado, vamos a ofuscarlo con la herramienta Chimera
([Link] Esta herramienta utiliza distintas técnicas, co-
mo sustitución de strings y concatenación de variables, para bypassear el AMSI y soluciones
antivirus. Para ejecutar esta herramienta, solo tenemos que clonarla en nuestro kali y lanzar
el script de Bash con los siguientes argumentos:
Hecho esto, vamos a proceder a configurar el registro HKLM para que independientemente
quién inicie sesión en el equipo, se entable la shell inversa con nuestro equipo atacante (ver
figura 4.13). Ya con todo preparado, cada vez que un usuario acceda a este equipo, se lan-
zará una shell inversa a nuestro kali, la cuál podremos operar usando una herramienta como
NetCat (ver figura 4.14). Aunque contamos con este acceso alternativo, no lo utilizaremos
salvo en caso de emergencia, por ejemplo, si perdemos el método de acceso inicial. Esta shell
inversa que se intenta entablar cada vez que un usuario inicia sesión en el equipo, es un plan
de respaldo para situaciones como el cambio de hash NTLM, que escapan fuera de nuestro
control.
4.1.5 Host WS01 como pivote para acceso a la red del dominio madrid
Con este acceso remoto a la estación de trabajo WS01, ya tenemos un punto de apoyo (o
foothold) en el entorno de Active Directory. Para ejecutar nuestras herramientas de reco-
1
Una shell inversa (del inglés, reverse shell) es una técnica para ejecutar comandos en un sistema de forma
remota y con la capacidad de burlar cortafuegos y otras medidas de seguridad.
2
En el ámbito de seguridad de la información, un payload se define como cualquier comando o código que
explote una vulnerabilidad en un software específico.
50 Desarrollo
Figura 4.12: Transferencia del script PowerShell ofuscado con capacidades de establecer conexión
inversa
nocimiento y explotación desde nuestro Kali sobre la red interna, configuraremos un proxy
SOCKS en el equipo WS01 usando la herramienta chisel.
Tras descargar la última release de esta herramienta desde su repositorio oficial (https://
[Link]/jpillora/chisel), transferiremos el ejecutable al host WS01 usando un servidor
web, mediante el módulo [Link] de Python, desde la máquina atacante. En el equipo
WS01, alojaremos este software en el directorio C:\Users\Administrador\AppData\Roaming
bajo el nombre [Link]. Para amenazas más sofisticadas y ataques a organizacio-
nes con alto nivel de seguridad, se deberían utilizar otros métodos para ocultar este fichero o
pasarlo por una tubería para ejecutarlo sin alojarlo en el equipo directamente.
Figura 4.15: Transferencia via HTTP de la herramienta chisel desde la máquina atacante
Con Chisel, vamos a crear un túnel SOCKS encapsulado por el protocolo HTTP, para
interactuar con la red interna desde nuestro kali. Para ello en nuestra máquina atacante eje-
cutaremos el siguiente comando para crear un túnel inverso, escuchando conexiones por el
puerto 443.
Figura 4.16: Servidor SOCKS en nuestra máquina atacante para el túnel inverso
Figura 4.17: Cliente Chisel en la máquina pivote para conectarnos al servidor SOCKS
Sin embargo, esta técnica de pivoting solo nos permite interactuar con servicios que utilicen
el protocolo TCP. Si necesitamos interactuar con servicios que hagan uso de otro protocolo
en la capa de transporte, deberíamos utilizar otra técnica de tunelizado.
Una vez hemos extraído el TGT, vamos a intentar descifrarlo para obtener la contraseña
del usuario sqlservice en texto plano. De igual manera que con el hash NetNTLMv2, uti-
lizaremos la herramienta Hashcat y el diccionario [Link] para realizar un ataque de
diccionario contra el ticket obtenido (ver figura 4.19).
4.1. Ataque 53
Figura 4.19: Cracking del TGT del usuario sqlservice mediante la herramienta Hashcat
Tras este ataque de diccionario, podemos observar que hemos descifrado el hash del TGT
capturado y obtenido las credenciales NotMyPassword0k? para el usuario sqlservice (ver
figura 4.20).
Figura 4.20: Contraseña descifrada exitosamente a partir del TGT de sqlservice mediante Hashcat
vamos a realizar un volcado del fichero [Link], que contiene toda la información del direc-
torio del dominio [Link]. Utilizando la herramienta secretsdump de la suite
Impacket y las credenciales de la cuenta de usuario sqlservice (ver figura 4.21), obtenemos
todos los hashes NTLM almacenados en dicha base de datos. Además de los hashes NTLM,
también se han extraído las claves criptográficas de Kerberos (ver figura 4.22), derivadas de
las distintas cuentas y utilizadas para cifrar y firmar los tickets.
Figura 4.21
Figura 4.22
equipo atacante a DC01 para acceder al servicio corriendo en el puerto TCP/5985 (ver figura
4.24). Con este túnel inverso estático configurado y las credenciales del usuario Administrador
de dominio obtenidas previamente, podemos acceder de forma remota al equipo controlador
de dominio (ver figura 4.23).
Figura 4.23
Figura 4.24: Túneles inversos estáticos desde WS01 para mapear puertos TCP/5985 y TCP/4445
Una vez hemos accedido al equipo, vamos a utilizar la herramienta ADExplorer de la suite
SysInternals para realizar un volcado del dominio (ver figura 4.25).
Tras transferir este volcado del dominio a nuestro equipo atacante, debemos utilizar la he-
rramienta [Link] para extraer del fichero .dat,
los ficheros que le inyectaremos a BloodHound (ver figura 4.26).
Por último, debemos iniciar la base de datos neo4j e importar los ficheros JSON en el
software BloodHound, podemos encontrar diversas formas de escalar nuestro privilegio en el
entorno AD para conseguir privilegios de administrador de dominio en [Link]. En
BloodHound se muestran los elementos del AD en forma de nodos de un grafo, y las aristas
representan todo aquel permiso y/o configuración que hace posible alcanzar un objetivo de-
terminado (ver figura 4.27).
56 Desarrollo
Figura 4.26: Conversión del volcado del AD a archivos JSON compatibles con BloodHound
4.1. Ataque 57
Hecho esto, vamos a generar el golden ticket usando la utilidad ticketer que nos creará
el fichero [Link] en el directorio HOME de kali (ver figura 4.31).
En el ataque golden ticket clásico, se genera un ticket para un usuario no existente del AD.
Sin embargo, esto es más complicado a día de hoy porque Windows ha añadido fuertes me-
didas de seguridad en los últimos tiempos para evitar esto. Por este motivo, vamos a generar
4.1. Ataque 59
Una vez generado el ticket (ver figura 4.31), debemos configurarlo en nuestro equipo ata-
cante para que se use en la autenticación Kerberos (ver figura 4.32).
Por último, solo tenemos que conectarnos a algún servicio e indicarle que queremos au-
tenticarnos via Kerberos. Por ejemplo, vamos a conectarnos remotamente al controlador de
dominio DC03, comprometiendo el dominio [Link] (ver figura 4.33).
60 Desarrollo
Figura 4.33: Autenticación via Kerberos al servicio WinRM con el golden ticket falsificado
4.2 Defensa
4.2.1 Prevención
Active Directory constituye el eje de autenticación y autorización en la mayoría de en-
tornos corporativos, haciéndolo un objetivo esencial para los ciberatacantes. Sin embargo, la
mayoría de brechas no ocurren por malware sofisticado en la forma de exploits que explotan
vulnerabilidades Zero-Day, sino debido a configuraciones erróneas, privilegios excesivos y sis-
temas de seguridad por defecto débiles.
Por otro lado, LLMNR y NetBios son protocolos de resolución de nombres susceptibles
a ataques de envenenamiento con herramientas como Responder.
• Forzar firma LDAP/S: LDAP sin firmar es vulnerable a ataques Man-In-The-Middle,
por lo que debemos deshabilitar este protocolo en texto plano (TCP/389) y usar certi-
ficado válidos en los controladores de dominio.
• Habilitar LDAP channel binding: Este proceso mejora significativamente la segu-
ridad en la comunicación entre el cliente y el servidor LDAP, mitigando ataques como
NTLM Relay.
• Restringir enumeración anónima del dominio: Por defecto, los entornos AD tie-
nen un tipo de sesión llamado Null Session, que permite potencialmente a un atacante
enumerar usuarios, grupos y otros objetos del AD sin necesidad de autenticarse.
• Implementar grupo de usuarios protegidos: La pertenencia de un usuario del AD
a este grupo; bloquea la autentación NTLM, fuerza el algoritmo AES para Kerberos y
deshabilita las credenciales almacenadas en Caché.
Teniendo en cuenta estas configuraciones específicas que debemos realizar en todo con-
trolador de dominio para acercarnos a una infraestructura más segura, podemos ejecutar el
siguiente script PowerShell que automatiza la aplicación de estas medidas de seguridad:
Código 4.3: Medidas de seguridad en controladores de dominio
1 # Deshabilitar NTLM:
2 Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name "←-
,→ LmCompatibilityLevel" -Value 5
3 Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0" ←-
,→ -Name "NTLMMinClientSec" -Value 0x20080000
4 Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0" ←-
,→ -Name "RestrictSendingNTLMTraffic" -Value 2
5
6 # Deshabilitar LLMNR:
7 Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient←-
,→ " -Name "EnableMulticast" -Value 0 -Type DWord
8
9 # Deshabilitar NetBIOS sobre TCP/IP:
10 Get-NetAdapter | Set-NetAdapterAdvancedProperty -RegistryKeyword "←-
,→ NetbiosOptions" -RegistryValue 2
11
12 # Forzar LDAP Signing:
13 Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\NTDS\←-
,→ Parameters" -Name "LdapServerIntegrity" -Value 2
14
15 # Habilitar Channel Binding:
16 Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\NTDS\←-
,→ Parameters" -Name "LdapEnforceChannelBinding" -Value 2
17
18 # Restringir Null Session:
19 Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanManServer\←-
,→ Parameters" -Name "RestrictNullSessAccess" -Value 1
62 Desarrollo
20
21 # Añadir usuarios y grupos privilegiados al grupo Usuarios Protegidos:
22 Add-ADGroupMember -Identity "Usuarios Protegidos" -Members "Administrador", "←-
,→ Admins. del dominio", "Administradores de empresa"
Como hemos podido observar en la sección de compromiso del AD, los privilegios excesivos
sobre distintos elementos del entorno nos han permitido movernos lateralmente y escalar
privilegios en la red. En lo que sigue, se presentan múltiples estrategias para asegurar el
mínimo privilegio, auditar grupos privilegiados y permisos excesivos.
• Control de acceso basado en roles (RBAC): Para evitar que las cuentas, tanto
de servicio como de usuario, obtengan permisos excesivos, debemos definir distintos
roles según la función de dicha cuenta en el entorno, y asignarles los privilegios en
consecuencia de éstos.
Para segmentar y proteger las cuentas, equipos y servicios de Active Directory según su
nivel de privilegio, debemos implementar un modelo de capas sobre los objetos de nuestro
entorno:
• Capa 0 (Dominio): Esta es la capa más crítica ya que incluye todas las cuentas y
grupos con capacidad total de control sobre el dominio, como controladores de dominio
y sistemas críticos de identidad y autenticación.
• Capa 1 (Servidores): En esta capa están contemplados todos los servidores necesarios
para un correcto funcionamiento empresarial del entorno, como servidores de base de
datos, cuentas de servicio para aplicaciones, etc.
Siguiendo este modelo, debemos asegurarnos de que ninguna cuenta de una capa determi-
nada se utilice en las capas superiores y viceversa. De esta manera, si algún atacante accede a
un equipo de la capa 2, evitamos que pueda conseguir credenciales más privilegiadas almace-
nadas en la memoria (LSASS). También, aplicamos una segmentación entre las redes usando
la tecnología Virtual LAN (VLAN) y podemos monitorear fácilmente todo intento de acceso
cruzado entre capas.
En Active Directory, los grupos de seguridad son una manera de recopilar cuentas de usua-
rio, cuentas de equipo y otros grupos en unidades administrables. Estos grupos ofrecen una
forma eficaz de asignar derechos de usuario y permisos para acceder y modificar recursos del
AD.
Aquí se listan los privilegios específicos asignados por defecto a algunos de los grupos de
seguridad que debemos monitorizar:
Para aplicar todas estas estrategias, se va a proponer el siguiente script de PowerShell con
el objetivo de un rápido y automatizado despliegue de las medidas de seguridad:
Código 4.4: Medidas de seguridad en mecanismos de autenticación
Uno de los exploits más habituales debido a configuraciones débiles es la inyección de SIDs
desde un dominio confiable para comprometer la seguridad de este dominio. Para evitar este
tipo de ataques debemos habilitar el filtrado SID, que bloquea de forma efectiva cualquier
tipo de abuso de SID desde otro dominio.
Por defecto hay una relación de confianza entre los dominios de un bosque. Sin embar-
go, esta configuración introduce varios vectores de ataque, así que debemos implementar
autenticación selectiva entre dominios para conseguir un buen balance entre seguridad
66 Desarrollo
Además, debemos evitar siempre que sea posible las relaciones de confianza bidireccionales,
y es preferible usar relaciones de confianza entre bosques que entre dominios externos.
4.2.2 Detección
Aunque las medidas preventivas previamente descritas son esenciales para una buena estra-
tegia de defensa, la monitorización exhaustiva del entorno es crítica para identificar amenazas
que ya se hayan infilitrado en el Active Directory.
A continuación, vamos a presentar una lista de IDs de eventos generados por las distintas
técnicas de ataque que hemos utilizado durante nuestra simulación de adversario sobre el en-
torno virtual. Es importante remarcar, que muchos de estos eventos requiren que se habiliten
mediante auditorías específicas en los objetos de políticas de grupo.
• Kerberoasting
– ID 4624 (Account Logon): Logins exitosos después de obtener TGS
– ID 4672 (Special Privileges Assigned): Cuando se asignan privilegios para solici-
tudes SPN
– ID 4769 (A Kerberos Ticket Granting Service (TGS) was requested): Solicitud de
TGS con cifrado RC4 (tipo 0x17)
– ID 4738 (User Account Changed), 5136 (Directory Service Changes): Modificacio-
nes de atributos de cuentas
• DCSync
– ID 4624 (Account Logon - Logon Type 3): Inicio de sesión desde sistema atacante
– ID 4662 (Directory Service Access): Operaciones de replicación (DCSync)
– ID 4670 (Permissions Changed): Cambios en permisos que permiten DCSync
– ID 4673 (Sensitive Privilege Use): Uso de SeSyncAgentPrivilege
4.2. Defensa 67
• NTLM Relay
– ID 4624 (Account Logon - Type 3): Conexiones NTLM sospechosas
– ID 4648 (Logon with Explicit Credentials): Uso de credenciales explícitas
– ID 4776 (NTLM Authentication): Intentos de autenticación NTLM
• Pass-The-Hash
– ID 4624 (Account Logon - Type 3/9): Logins con credenciales reutilizadas
– ID 4648 (Logon with Explicit Credentials): Uso de credenciales explícitas
– ID 4672 (Special Privileges Assigned): Uso de privilegios elevados
– ID 4776 (NTLM Authentication): Autenticación NTLM
• Golden Tickets
– ID 4768 (Kerberos TGT Request): Solicitud sospechosa de TGT
– ID 4769 (Kerberos TGS Request): Tickets con vida anormal
– ID 4672 (Special Privileges Assigned): Privilegio para crear tickets
• Shadow Admins
– ID 4728 (Member Added to Global Group), 4732 (Member Added to Local Group),
4756 (Member Added to Universal Group): Adiciones a grupos potencialmente
privilegiados
– ID 5136 (Directory Service Changes): Modificaciones en ACLs
• Volcado de LSASS
– ID 10 (Process Access - Sysmon): Acceso a LSASS
– ID 4656 (Handle Request): Solicitud de manejo de LSASS
– ID 4688 (Process Creation): Ejecución de herramientas de dumping
– ID 4690 (Handle Duplicated): Duplicación de handles a LSASS
Aunque la captura de estos eventos es vital para conseguir una estrategia de seguridad
defensiva efectiva, el verdadero reto está en interpretar dichos eventos para descartar falsos
positivos y localizar la amenaza lo antes posible.
4.2.3 Respuesta
Un incidente es una interrupción o reducción de calidad de un servicio IT (Centro Crip-
tológico Nacional, 2015). En esta sección, nos centraremos en todos aquellos incidentes que
afectan a la seguridad de la infraestructura.
• Golden Tickets
– Cambiar la contraseña de la cuenta KRBTGT dos veces (invalida todos los tickets
existentes)
– Implementar Políticas de Autenticación para restringir la duración de los tic-
kets
– Habilitar Políticas de Auditoría Avanzada para eventos Kerberos (Evento ID
4769)
• Abuso de DCSync
– Revocar inmediatamente los permisos de Replicar Cambios en el Directorio
– Eliminar cuentas comprometidas de los grupos Administradores, Administra-
dores de Empresa y Administradores de Esquema
– Implementar Estaciones de Acceso Privilegiado (PAWs) para administración
de AD
• Pass-the-Hash
– Deshabilitar todas las cuentas comprometidas
– Forzar rotación de hashes NTLM mediante cambios de contraseña
• Mecansimos de persistencia
– Eliminar:
∗ Claves de registro maliciosas (HKLM\...\Run, RunOnce)
∗ Tareas programadas (ver Evento ID 4698)
∗ Entradas de servicios (Evento ID 7045)
– Auditar GPOs por modificaciones no autorizadas
– Revisar carpetas de inicio (C:\ProgramData\Microsoft\Windows\Start Me-
nu\Programs\Startup)
• Kerberoasting
– Cambiar contraseñas de todas las cuentas de servicio con SPNs
– Forzar cifrado AES para tickets Kerberos
• Movimiento lateral
– Bloquear WMI y PSRemoting para usuarios no administradores
– Restringir recursos compartidos administrativos (C$, ADMIN$)
70 Desarrollo
• Volcado de LSASS
– Habilitar Protección LSA (RunAsPPL)
– Desplegar reglas de Reducción de Superficie de Ataque que bloqueen Mimi-
katz
– Restringir privilegios de depuración mediante Política de Grupo
[Link] Recuperación
Una vez contenida y erradicada la amenaza, debemos restablecer las operaciones y servicios
del entorno para asegurar la continuidad del negocio lo antes posible. Para llevar a cabo este
cometido, debemos tener un plan de recuperación eficaz con copias de seguridad confiables
y no comprometidas. Nuestra estrategia de seguridad debe seguir la siguiente premisa: no
podemos tener todo el sistema de backups en la misma red que los activos que se copian.
La razón detrás de esto es que si todas las copias de seguridad están comprometidas, un
atacante podría borrarlas por completo o modificarlas ligeramente para continuar teniendo
persistencia en el entorno.
Una buena práctica que podemos seguir en cuanto a la gestión de copias de seguridad, es
la estrategia 3-2-1. Básicamente, describe cuantas copias de seguridad debemos tener, en qué
dispositivos almancenar dichas copias y donde almacenar físicamente estos dispositivos:
• 3 copias de los datos: Debemos mantener tres copias distintas de los datos que queremos
salvaguardar.
• 1 copia fuera de las instalaciones: Debemos tener una de las copias de seguridad fuera
de la red e infraestructura física de la organización, para poder recuperar los datos
en caso de que una catástrofe destruya la sede de la organización y/o la red se vea
comprometida en su totalidad.
Tras realizar el ejercicio de Red Team, y teniendo en cuenta los ataques realizados durante
el mismo, se han implementado contramedidas centradas en la prevención, detección y res-
puesta de incidentes de seguridad en estas infraestructuras. Toda esta experiencia adquirida
durante las dos fases del proyecto, ha puesto de manifiesto la importancia de la planificación
y el análisis continuo como pilares básicos e imprescindibles para el despliegue de estos en-
tornos en producción.
Con el creciente avance de la inteligencia artificial, cabe también esperar que acabemos
integrando estas nuevas tecnologías tanto en el ámbito ofensivo como defensivo. Por un lado,
en la vertiente ofensiva, ya se están desarrollando herramientas de IA capaces, ya no solo
de identificar vulnerabilidades y vectores de ataque potenciales, sino de explotarlos con una
precisión cada vez mayor. Por otro lado, la IA defensiva ofrece muchas herramientas de de-
tección temprana de amenazas gracias a la correlación de eventos y análisis de patrones de
comportamiento en tiempo real. Sin embargo, en esta nueva era de la informática, la IA no
debe ser considerada como una solución única, sino como una herramienta más que tenemos
el deber de integrar en nuestra operativa.
71
72 Conclusiones
73
74 Bibliografía
España. (2022). Real decreto 311/2022, de 3 de mayo, por el que se regula el esquema
nacional de seguridad. Descargado de [Link]
-2022-7191 (Accedido 05-05-2025)
Fortra Core Security. (2024). Impacket: A collection of python classes for working with
network protocols. Descargado de [Link] (Accedido
04-05-2025)
Gartner, Inc. (2025). Network detection and response reviews and ratings. Descargado de
[Link] (Con-
sultado el 22 de abril de 2025)
IEEE. (2022). Phishing attacks: What you need to know (Inf. Téc.). Department of Computer
Science, Keene State College. Descargado de [Link]
NLSri/Apr2022/[Link] (Accedido 26-03-2025)
INCIBE. (2019). Ingeniería social: Técnicas utilizadas por los ciberdelincuentes y cómo
protegerse. Descargado de [Link]
-tecnicas-utilizadas-los-ciberdelincuentes-y-protegerse (Accedido 04-12-2024)
Jaime Pillora. (2025). Chisel: A fast tcp/udp tunnel over http. Descargado de https://
[Link]/jpillora/chisel (Accedido 15-05-2025)
Bibliografía 75
Jens ’atom’ Steube and Gabriele ’matrix’ Gristina. (2022). Hashcat: World’s fastest and
most advanced password recovery utility. Descargado de [Link]
hashcat (Accedido 24-04-2025)
Kent, Karen and Souppaya, Murugiah and Scarato, Matthew. (2006). Guide to com-
puter security log management (Inf. Téc.). National Institute of Standards and
Technology (NIST). Descargado de [Link]
[Link] (Accedido 21-04-2025)
Laurent Gaffie. (2025). Responder: Llmnr, nbt-ns and mdns poisoner with rogue authentication
server. Descargado de [Link] (Accedido 24-04-2025)
Luke Hunsinger. (2025). Edr vs mdr vs xdr: Everything you need to know. Descarga-
do de [Link]
edr-vs-mdr-vs-xdr/ (Accedido 22-04-2025)
Maciá Pérez, F., Mora Gimeno, F. J., Gil Martínez-Abarca, J. A., Gilart, V., Marcos-
Jorquera, D., Berna-Martinez, J. V., … Hernández Sáez, A. (2008). Administración de
servicios de Internet. De la teoría a la práctica. (Accedido 19-12-2024)
Michael N. Schmitt (Ed.). (2017). Tallinn Manual 2.0 on the International Law Applicable
to Cyber Operations. Cambridge University Press. (Accedido 17-05-2025) doi: 10.1017/
9781316822524
Motero, Carlos Díaz and Higuera, Juan Ramón Bermejo and Higuera, Javier Bermejo and
Montalvo, Juan Antonio Sicilia and Gómez, Nadia Gámez. (2021). On attacking kerberos
authentication protocol in windows active directory services: A practical survey. IEEE
Access. (Accedido 05-05-2025) doi: 10.1109/ACCESS.2021.3101446
National Institute of Standards and Technology (NIST). (2025). Red team exercise. Descar-
gado de [Link] (Accedido 24-11-
2024)
NATO Cooperative Cyber Defence Centre of Excellence. (2024). Crossed swords. Descargado
de [Link] (Accedido 17-05-2025)
NATO Cooperative Cyber Defence Centre of Excellence. (2025). About us. Descargado de
[Link] (Accedido 17-05-2025)
Nmap Project. (2025a). Ncat: Netcat for the 21st century. Descargado de [Link]
ncat/ (Accedido 15-05-2025)
O. Aslan and R. Samet. (2017). Investigation of possibilities to detect malware using existing
tools. En Proceedings of the ieee/acs 14th international conference on computer systems
and applications (aiccsa). IEEE. (Accedido 30-04-2025) doi: 10.1109/AICCSA.2017.177
Qatinah, Shatha Hameed and Al-Baltah, Ibrahim Ahmed. (2024). Kerberos protocol: Security
attacks and solution. En 2024 1st international conference on emerging technologies for
dependable internet of things (iceti). (Accedido 04-05-2025) doi: 10.1109/ICETI63946.2024
.10777133
U.S. Department of Defense. (2016). Joint doctrine note 1-16: Command red team. Online.
Descargado de [Link] (Accedido 24-11-2024)
U.S. Department of Defense. (2021). The national opsec program (Inf. Téc.). U.S. Department
of Defense. Descargado de [Link]
-1/0/THE_NATIONAL_OPSEC_PROGRAM.PDF (Accedido 10-12-2024)
Acrónimos y Abreviaturas
3G Third Generation.
4G Fourth Generation.
ACL Access Control List.
AD Active Directory.
AD DS Active Directory Domain Services.
AES Advanced Encryption Standard.
AMSI Antimalware Scan Interface.
API Application Programming Interface.
APT Advanced Persistent Threat.
ASCII American Standard Code for Information Interchan-
ge.
AV Antivirus.
AWS Amazon Web Services.
BD Base de Datos.
C2 Command and Control.
CCDCOE Centro de Excelencia en Ciberdefensa Cooperativo
de la OTAN.
CCN Centro Criptológico Nacional.
CEO Chief Executive Officer.
CNI Centro Nacional de Inteligencia.
CPU Central Processing Unit.
DC Domain Controller.
DES Data Encryption Standard.
DHCP Dynamic Host Configuration Protocol.
DLL Dynamic Link Library.
DMZ Demilitarized Zone.
DNS Domain Name System.
DPI Deep Packet Inspection.
EC2 Amazon Elastic Compute Cloud.
ECDSA Elliptic Curve Digital Signature Algorithm.
EDR Endpoint Detection and Response.
ENS Esquema Nacional de Seguridad.
FTP File Transfer Protocol.
GB GigaByte.
GPO Group Policy Object.
GPU Graphics Processing Unit.
77
78 Acrónimos y Abreviaturas