Kerberoasting - Part 3
Previous works: There has been a number of different blog posts, presentations and projects that have happened before this post and I will reference a number of them during the post and at the end have a link to all that I know about. If you know of any works on this subject that I am missing please submit a comment below and I’ll will be sure to reference it.
Attacker KB Link: (to be updated later)
Common Findings DB Link: (to be updated later)
Now we start cracking the tickets we have and hopefully one will break. The problem with this format is that it takes a LONG time to crack, not as slow as some, but certainly not as fast as NTLM or the like, so pick your targets carefully as the more tickets you try and crack at once the slower it’s going to go.
Cracking SPN tickets
John the Ripper
- Format added September 30th 2015: https://github.com/magnumripper/JohnTheRipper/commit/05e514646dfe5aa65ee48774571c0169f7e25a53
If you aren’t already using the magnumripper version of John The Ripper you should be, it’s the latest and great and usually has all of the updated formats, fixes, and speedups. In this case it’s also the only version that has the KRB5TGS format.
|
|
w00t! Easy passwords. These are valid account passwords and you should be able to do with them whatever that account can do. We will explore the ability to use them as silver tickets later in this post but don’t loose sight that you have a completely valid new account that has access somewhere.
oclHashcat
John The Ripper is fast, but we need that GPU speed for slow hashes like this. Again, we are on the cutting edge of hashes it seems so we are going to have to build the Github version of oclHashcat
Support added to oclHashcat to crack Kerberos 5 TGS-REP: https://t.co/wsL2VUihNR (Our first algorithm contributed by community, yay!)
— hashcat (@hashcat) February 17, 2016
Luckily, building it is pretty straight forward: https://github.com/hashcat/oclHashcat/blob/master/docs/BUILD.md
Problem is that we have hashes in John the Ripper format and we have to get them into a format that oclHashcat understands:
Example Hashes: https://hashcat.net/wiki/doku.php?id=example_hashes
|
|
If you got your tickets from kirbi2john.py you can convert them using
|
|
If you got them from Impacket, they are already in a format that is compatible with both John the Ripper and oclHashcat.
Here is the speed results that Atom was getting using his AMD R9 GPU:
http://pastebin.com/raw/3eHx2bFr
|
|
Where I was only getting about half of that speed against one hash (NVidia GTX 970):
|
|
And as you can see, going against 100 hashes pushed the wait time out to 30 days vs. 7 hours.
|
|
So pick your targets and just go after the ones that are old / password hasn’t been changed in years.
References:
Tools
Presentations
- Tim Medin’s Slides - [Kicking the Guard Dog of Hades - slides](https://files.sans.org/summit/hackfest2014/PDFs/Kicking%20the%20Guard%20Dog%20of%20Hades%20-%20Attacking%20Microsoft%20Kerberos%20%20-%20Tim%20Medin(1).pdf)
- Tim Medin’s Video - Kicking the Guard Dog of Hades - video