Kerberos (88/tcp)

Kerberos needs sync time between client and server

sudo ntpdate $IP

Don't know username?

Bruteforce:

kerbrute userenum --dc $IP -d <domain> /usr/share/wordlist/SecLists/Usernames/xato-net-10-million-usernames.txt

Or you can identify/validate with netexec:

make sure that you register the domain to /etc/hosts

netexec smb $IP -k -u '<username>' -p ''

# error:   
# exist --> "KDC_ERR_PREAUTH_FAILED"
# not exist --> "KDC_ERR_C_PRINCIPAL_UNKNOWN"

RID Bruteforce

dump all account with known username:

Do you have many user list from valid RID Enum?

(all users must lower case)

Do you have username?

Collect:

  1. Domain

  2. Username

  3. set domain to /etc/hosts

GetNPUsers.py can be used to retrieve domain users who do not have "Do not require Kerberos preauthentication" set and ask for their TGTs without knowing their passwords. It is then possible to attempt to crack the session key sent along the ticket to retrieve the user password.

do you have a lot of usernames?

result

Then crack the hash -> https://hacker-mind.gitbook.io/hacker-mind/exploit/cracking#kerberost-hash

Last updated