Hashcat

hash-cracker – password cracking done effectively

I wrote a tool to help with cracking of hashes, today I finally decided to blog about it. The idea was to take what I’d learned about common patterns in passwords, and put my experience into practice to make password cracking more efficient on future engagements. Below is a short history of how we got to where we are, as well as some examples of how to use it. For…

Left To My Own Devices – Fast NTCracking in Rust

When I got a new MacBook with an M1 Pro chip, I was excited to see the performance benefits. The first thing I did was to fire up hashcat which gave an impressive benchmark speed for NT hashes (mode 1000) of around 9 GH/s, a solid doubling of the benchmark speed of my old Intel MacBook Pro. But, when it came to actually cracking things, the speed dropped off considerably.…

More On Foreign Hashes

This is an update on this previous post on foreign NT hashes where I got things a little wrong by believing the source encoding matters for an NT hash. It doesn’t really, let me show you why. I spent a bit of time exploring further, in particular, I took it down to a test case. Jameel gave me his name as a password in Arabic: Included as a picture because…

NTHashes and Encodings

If you’ve ever cracked a hash with hashcat, you’ll know that sometimes it will give you a $HEX[0011223344] style clear. This is done to preserve the raw byte value of the clear when the encoding isn’t known (or there’s a colon “:” character). Driven by an inability to crack the majority of a certain set of hashes I suspected were in a foreign charset, I decided to have a closer…