Ataques en entornos Windows

Pass-the-Hash / Pass-the-Ticket

En el mundo de la ciberseguridad, especialmente en entornos corporativos que utilizan Windows y Active Directory, existen dos tipos de ataques que destacan por su sigilo y peligrosidad: Pass-the-Hash (PtH) y Pass-the-Ticket (PtT). Ambos permiten a un atacante moverse lateralmente dentro de una red, escalar privilegios y acceder a recursos sensibles sin necesidad de conocer la contraseña en texto claro.

Este artículo está diseñado para usuarios principiantes y administradores de sistemas que desean comprender estos ataques, sus implicaciones y cómo prevenirlos. Si trabajas en entornos Windows, especialmente con redes empresariales, este conocimiento es esencial.

¿Qué es Pass-the-Hash (PtH)?

✅ Definición

Pass-the-Hash es una técnica que permite a un atacante autenticarse en un sistema remoto usando el hash de la contraseña del usuario, sin necesidad de descifrar la contraseña original.

🔐 ¿Qué es un hash?

Un hash es una representación cifrada de una contraseña. Windows utiliza algoritmos como NTLM (NT LAN Manager) para almacenar estos hashes.

Ejemplo:

Contraseña: MiContraseña123
Hash NTLM: AAD3B435B51404EEAAD3B435B51404EE

Con Pass-the-Hash, si el atacante obtiene este hash, puede usarlo directamente para acceder a otros sistemas.

🛠 ¿Cómo se obtiene el hash?

  • Mediante malware o herramientas como Mimikatz.

  • Extrayéndolo desde la memoria del sistema, el SAM (Security Account Manager) o LSASS.

  • Aprovechando una mala configuración o cuentas con privilegios elevados.


¿Qué es Pass-the-Ticket (PtT)?

✅ Definición

Pass-the-Ticket es una técnica que se enfoca en entornos Kerberos, el protocolo de autenticación principal en dominios Active Directory.

En lugar de usar hashes, el atacante roba un ticket Kerberos válido (como un TGT o TGS) desde la memoria y lo reutiliza para acceder a otros recursos, como si fuera el usuario legítimo.

🎫 ¿Qué es un ticket Kerberos?

Un ticket es una credencial temporal generada por el KDC (Key Distribution Center) que permite a un usuario autenticarse ante servicios en la red sin volver a escribir su contraseña.

Ejemplo de ataque:

  1. El atacante roba el TGT de un administrador desde su máquina.

  2. Usa ese ticket para autenticarse como el administrador en toda la red.

  3. ¡Sin necesidad de saber su contraseña!

Comparativa: Pass-the-Hash vs. Pass-the-Ticket

CaracterísticaPass-the-Hash (PtH)Pass-the-Ticket (PtT)
Protocolo involucradoNTLMKerberos
Qué se robaHash de la contraseñaTicket Kerberos (TGT/TGS)
Necesita contraseña❌ No❌ No
Acceso lateral✅ Sí✅ Sí
PersistenciaMedia (depende del hash)Alta (mientras el ticket sea válido)
Facilidad de detecciónMediaAlta si no hay monitoreo

¿Por qué son peligrosos estos ataques?

No requieren fuerza bruta ni descifrado de contraseñas.

Evaden soluciones antivirus tradicionales.

Permiten el llamado “movimiento lateral”: el atacante se mueve de una máquina a otra dentro de la red.

Se pueden usar para escalar privilegios, acceder a datos sensibles y comprometer todo el dominio.

Herramientas usadas en estos ataques

Algunas herramientas conocidas para ejecutar Pass-the-Hash o Pass-the-Ticket:

🛠 Mimikatz: Extrae credenciales y tickets desde memoria.

🛠 Impacket: Conjunto de scripts en Python para explotación de redes Windows.

🛠 PsExec: Herramienta de Sysinternals usada para ejecución remota.

🛠 Rubeus: Para manipular tickets Kerberos (robar, renovar, inyectar, etc.).

🛠 CrackMapExec: Para escaneo y explotación en redes Windows.

Ejemplo práctico: Cómo funciona un ataque Pass-the-Hash

⚠️ Este ejemplo es educativo. No debe ser utilizado fuera de entornos de pruebas o con fines maliciosos.

  1. El atacante consigue acceso a una máquina con privilegios bajos.
  2. Utiliza Mimikatz para extraer hashes de usuarios que han iniciado sesión.
  3. Usa PsExec junto con el hash de un usuario administrador para acceder a otro equipo:

psexec.py -hashes <NTLM_HASH>:<NTLM_HASH> [email protected]

     4. Ahora tiene una shell con privilegios administrativos en el equipo remoto.

¿Cómo prevenir estos ataques?


🔐 1. Limita el uso de cuentas privilegiadas
No uses cuentas de dominio en múltiples equipos.

Crea cuentas de administrador locales diferentes en cada máquina.

🧠 2. Aplica el principio de menor privilegio
Los usuarios no deben tener más permisos de los necesarios.

Usa herramientas como Group Policy para controlar privilegios.

🔍 3. Monitorea actividad sospechosa
Usa SIEM, Windows Event Logs, Sysmon o Azure Sentinel.

Activa el logging de Kerberos para detectar uso indebido de tickets.

🔐 4. Usa autenticación multifactor (MFA)
Si es posible, implementa MFA para minimizar el impacto de credenciales robadas.

🧯 5. Protege LSASS y bloquea herramientas maliciosas
Usa Credential Guard (Windows 10+).

Bloquea ejecución de herramientas como Mimikatz con soluciones EDR.

¡Implementa estos consejos hoy y mejora la seguridad de tu servidor con nuestros servicios de mantenimiento!

Suscríbete a Nuestro Blog: Mantente actualizado con las últimas noticias y consejos en ciberseguridad. Suscríbete ahora.