The ‘Cracken’: The Evolution of Password Cracking

This is the first installment in a three-part series about IBM’s password cracking tool, the Cracken.

I remember the days when an eight-character password was considered secure. But that’s not the case anymore, so let’s talk a little bit about the history of password cracking, how far we have come and what X-Force Red has built.

The Current State of Password Cracking

First, a little teaser of where we are at today: The image below shows theoretical MD4 hash rates for Microsoft Windows NT LAN Manager (NTLM) with no salting. We have two of these rigs, so we could do 664GH/s of NTLM.

What does that mean? If you have a seven-character password, I can brute-force all possibilities in about a three-minute run. Eight characters, you say? It takes us about 12 hours to brute-force it.

Woo Hoo! Fast hasher!
Source: IBM Security

Humble Beginnings

Now let’s talk about where we came from. In the early 2000s, we had John the Ripper for password cracking. John was a great tool for breaking Unix password hashes. You just needed to compile a good list of dictionaries together, and it would plow though the list of password hashes in a few hours, days or weeks, depending on the hashes that you were attempting to break and how many central processing units (CPUs) to you had.

Back then, you were lucky to have a dual or even quad core machine to use for cracking password hashes. Sometimes you would use your own desktop or, if you were lucky enough to get it to cross-compile one of the Sun Sparc servers with four or eight CPUs, you could let your password hashes run for a week or so. It wasn’t fast, and it didn’t have a huge list of passwords or the crazy permutations that we have today, but it mostly worked because very few people deviated from a standard password that looked like it came from the dictionary.

Rainbow Tables

Then came rainbow tables. The concept behind this method is that it’s basically a giant lookup table for password hashes. These took up 500 GB to 2 TB, depending on the hashing algorithm and how complex you wanted the dataset.

Rainbow tables were perfect for breaking LAN manager password hashes because the hash was computed by splitting it into two seven-character password segments, then hashing each side. This means that your 14-character password became two seven-character passwords — a flaw that made password cracking so easy. It could take 20 to 60 minutes to run a rainbow table attack on some systems.

Cracking More Complex Passwords

Then people got wise to password cracking and started disabling LAN manager hashes and using longer passwords. Sometimes, they required numbers or even — gasp — special characters for their passwords.

For LAN manager hashes, rainbow tables worked great. However, when it came time to crack NTLM hashes, which were 16 bytes long, it was a different story. Rainbow tables were only good for short passwords of eight or nine characters. No longer could you split a password into two seven-character passwords — it was all or nothing.

A while back, John the Ripper was forked and made what was known as the MagnumRipper — Jumbo Repo. This fork included experimental hashes as well as support for OpenCL, multithreading, CUDA drivers and more. It was an improvement, but it was hardly a twofold performance factor increase on systems.

New Innovations From DEF CON

Then along came KoreLogic rule sets from the DEF CON 18 Crack Me If You Can contest. These made cracking 10- and 14-character passwords much easier. It took several hours, if not a full day, to run though your word lists and the rules, but if someone was using “Winter2010,” “Monday2010” or “Passw0rd!2012,” there was a high chance of being able to recover it.

At the same time this was going on, a group started developing hashcat/oclHashCat/cudaHashcat. In our next post, we will review our hardware, how we speced it out and how not to burn down your house/closet/data center. I will also show a teardown of one of these cards, and what putting some new thermal grease on one card has done.

Listen to the podcast: ‘Cracken’ Passwords with EvilMog of IBM X-Force Red

Share this Article:
David Bryan

Global Security Managing Consultant, IBM

David Bryan has over 15 years of professional information security experience from being a defender of security at a top ten bank to securing the DEF CON network. He first entered the information security community as a DEF CON volunteer (Goon) and is now is on the board that runs Thotcon, a Chicago Information Security conference. For the last ten years, David has been the attacker in many scenarios as a penetration tester covering network, embedded, wireless, web applications and physical. He has presented at BlackHat, DEF CON, ToorCon, LayerOne, ToorCamp, BSides events and AppSecUSA. David lives in cold, but beautiful, Minneapolis, Minnesota with his wife and two cats.