Explotando Zerologon y Convirtiendose en Domain-Admin
Explotando Zerologon y Convirtiendose en Domain-Admin
Explotando Zerologon y Convirtiendose en Domain-Admin
y convirtiendose en
Domain-Admin
▫ Mi nombre es Msc. Jorge Campoverde
▫ Gobierno de la Ciudad de Buenos Aires
▫ Multinacional BDO
▫ Caja de valores Argentina
▫ CNE
▫ Produbanco
2
“
3
“
▫ Zerologon es el nombre dado a la vulnerabilidad identificada en CVE-2020-1472. Se le ha llamado Zerologon debido al
error en el proceso de inicio de sesión donde se establece el vector de inicialización (VI) en cero todo el tiempo cuando, en
realidad, un vector de inicialización siempre debería ser un número aleatorio.
▫ Debido a la mala implementación del vector de inicialización en MS-NRPC, solo lleva unos 256 intentos obtener la
correcta. Normalmente, una cuenta de usuario se bloquearía transcurridos tres intentos de adivinación de contraseña, pero
no se sigue el mismo patrón para una cuenta de equipo u ordenador.
▫ La vulnerabilidad permite a un hacker hacerse con el control de un controlador de dominio (CD), incluido el CD raíz. Esto
se realiza modificando o eliminando la contraseña para una cuenta de servicio en el controlador. A continuación, el hacker
puede provocar la denegación del servicio o tomar el control y apropiarse de toda la red.
▫ Para cambiar la contraseña, los atacantes utilizan el mensaje NetServerPasswordSet2 en MS-NRPC. Es posible modificar
una contraseña enviando simplemente el marco con la nueva contraseña preferida.
▫ Para que los atacantes realicen un exploit de esta vulnerabilidad, deben poder establecer una sesión de TCP con un CD.
4
“
Windows Server 2008 R2 for x64-based Systems Service Pack 1
Windows Server 2008 R2 for x64-based Systems Service Pack 1 (
Windows Server 2012
Windows Server 2012 (Server Core installation)
Windows Server 2012 R2
PRODUCTOS AFECTADOS
Windows Server 2012 R2 (Server Core installation)
Windows Server 2016
Windows Server 2016 (Server Core installation)
Windows Server 2019
Windows Server 2019 (Server Core installation)
Windows Server, version 1903 (Server Core installation)
Windows Server, version 1909 (Server Core installation)
Windows Server, version 2004 (Server Core installation)
5
“
6
¿Cómo se explota zerologon?
ESCENARIO
8
ESCANEO A TRAVÉS DE NMAP
9
NOMBRE DEL NETBIOS
11
12
Al observar que el AD-DC es vulnerable se procede a la ejecución del exploit.
Para la explotación exitosa, hay que tener en cuenta lo siguiente:
13
Explotación
Para la ejecución del exploit, solo se necesita tener una conexión TCP con el DC
vulnerable, y se setea los dos parámetros. El NETBIOS de la máquina en donde está
instalado el AD-DC, y la IP
14
¿ Y ahora ?
Algo que hay que tener en cuenta es la sintaxis que está señalada en rojo, ya
que el protocolo SMB solo de esta manera acepta el no-pass y permite la
ejecución de secretdump.py.
15
Existen dos Caminos
16
Existen dos Caminos
ZEROLOGON
17
Crackear el Nt-hash.
Para poder crackear el hash , se hizo uso de una herramienta online
https://hashes.com/en/decrypt/hash , en el cual solo se setea el hash y se
espera el resultado. Cabe recalcar que la clave, se encuentra en el tercero
octeto.
18
Como se puede observar en la
imagen anterior , el hash si estaba
en la base de datos , y tenemos la
clave para poder acceder al
servidor a través de RDP.
19
20
Como se puede observar, a
través de RDP logramos acceder
al servidor como
administradores , lo cual nos
permitiría apagar GPOS ,
creación de Usuarios ,
modificación de contraseñas del
CISO , CIO , GTO , etc , es
decir somos dueños del
Dominio . El mayor
inconveniente de la explotación
de esta vulnerabilidad es que al
no existir política de GPO se
podría ejecutar un ransoware ,
quedando pendiente solo la
evación de antivirus y seguridad
perimetral.
21
Segundo camino
24
CREACIÓN DE CUENTA A TRAVÉS DE
POWERSHELL
Como se puede observar, a través de EvilWirm se logró crear una cuenta llamada “smilzo” con password
“Prueba1234@” que nunca expira , y se la agregó al grupo de Administradores. Con esta cuenta creada se
puede hacer RDP y entrar como administrador al AD
25
Pero ahora la clave del NetBIOS es empty ,
¿qué puede pasar ?
26
Por lo tanto, para que esto no suceda existe un exploit llamado
restorepasswd.py. Para la ejecución del mismo se necesita ya tener una shell
para poder obtener los archivos:
27
Para lo cual haremos uso de la herramienta wmiexec.py .
:
28
De esta manera , se puede descargar los archivos necesarios para generar la
llave y poder pone de vuelta el hash NT original de la cuenta de la máquina.
29
Se procede a la ejecución del exploit, con la llave que encontramos y la
seteamos como parámetro.
Actualizar los servidores inmediatamente, si son 2012-2016-2019, el caso de los servidores Windows 2008r2 es
especial, ya que requiere licenciamiento ESU.
Registre los ID. de evento 5827 y 5828 en el registro de eventos del sistema si se deniegan las conexiones.
Registre los ID. de evento 5830 y 5831 en el registro de eventos del sistema si se permiten las conexiones en
"controlador de dominio: Permitir conexiones de canales seguros de Netlogon vulnerables "de la Directiva de
grupo.
Registre el ID. de evento 5829 en el registro de eventos del sistema siempre que se permita una conexión
31