- Date published:
- Author:Brian Wood
Sometimes I like to re-post articles just because they are fun -- or else a sign of the times.
This one, captured by Paul Mah in FierceCIO, is both. The original article by Dan Goodin was published in Ars Technica.
Who hasn't forgotten a password and had that extreme panic (hopefully short-lived) that access to the goods is ne'er to be restored?
Emphasis in red added by me.
Brian Wood, VP Marketing
How a security professional had to crack his own password
The CTO of WhiteHat Security, Jeremiah Grossman, shared a personal account over the weekend of how he recently forgot a crucial password required to access his work files. These files are stored inside an encrypted image file, and he had changed his password recently as part of his regular practice.
Unfortunately, as someone who is necessarily paranoid about security, there was no paper backup of the elusive password. He had also encrypted it in with AES-256, the strongest encryption available.
This made it extraordinarily difficult to crack; Grossman estimates that it would take "multiple decades of cracking" at current processor speeds.
As a prominent security professional himself, Grossman was thankfully able to recruit some of the foremost experts in password cracking to assist. By narrowing down the characters and symbols used, the possible password combinations were reduced from over 41 billion to just 22 thousand. It took 3 and a half minutes to eventually crack the 25-GPU cluster.
"I've come to appreciate why password storage is ever so much more important than password complexity," Grossman wrote in his blog of his ordeal. He noted: "Clearly, I need paper backup, and thinking maybe about giving it to my attorney for safekeeping where it'll enjoy legal privilege protection. We'll see."
How a security ninja cracked the password guarding his most valued assets
What to do when you forget a critical password? Call in the big guns, of course.
Jeremiah Grossman is widely considered to be one of the world's most talented ethical hackers, but even his ninja-like prowess wasn't enough to recover a forgotten password used to encrypt sensitive work documents contained on his MacBook Pro.
After fiddling with a freely available password cracking program, the CTO of Whitehat Security soon realized that its plodding speed—about one password guess per second—meant it would likely take him decades of tries before he arrived at the right one. That's when he called in the big guns, namely Solar Designer and other principals behind the free John the Ripper (JtR) password cracker as well as Jeremi Gosney, a password security expert at Stricture Consulting Group. (Ars has chronicled Gosney's cracking prowess in articles here and here.)
"Collectively, these guys are amongst the world's foremost experts in password cracking," Grossman wrote in a blog post describing the odyssey unlocking the crucial files. "If they can't help, no one can. No joking around, they immediately dove right in."
Security concerns—not to mention the enormous size of the DMG encrypted disk images—prevented him from sending the files directly to his rescuers. So he availed himself of a feature in JtR called dmg2john, which separates the encryption contained in a DMG from the data it's protecting. That allows the cracking program to target the password protecting the file without exposing the underlying data.
But even then, there was a problem. Grossman's AES256-encrypted DMG used a staggering 250,000 rounds of PBKDF2-HMAC-SHA-1, an algorithm designed to run extremely slowly to make the job of password cracking harder. Gosney's Xeon X7350 could crack a single round of HMAC-SHA1 at a rate of about 9.3 million hashes per second. By forcing Gosney to repeat the process 250,000 times, his system was reduced to just 37 or so hashes per second. Even using all four processors of his machine, he could bump up the performance to only about 104 hashes per second. (JtR doesn't support graphics cards when cracking Apple's latest DMG formats.)
Once understanding this, Jeremi begins asking for more information about what the extra six or so characters in my password might have been. [Were] they all upper and lower case characters? What about digits? Any special characters? Which characters were most likely used, or not used? Every bit of intel helped a lot. We managed to whittle down an in initial 41106759720 possible password combinations to 22472. This meant the total amount of time required to crack the DMG was reduced to 3.5 minutes on his rig.
Subsequently, Jeremi sent me what had to be one the most relieving and frightening emails I’ve ever received in my life. Relieving because I recognized the password immediately upon sight. I knew it was right, but my anxiety level remained at 10 until typing it in and seeing it work. I hadn’t touched my precious data in weeks! It was a tender moment, but also frightening because, well, no security professional is ever comfortable seeing such a prized password emailed to them from someone else. When/if that happens, it typically means you are hacked and another pain awaits.
Interestingly, in living out this nightmare, I learned A LOT I didn’t know about password cracking, storage, and complexity. I’ve come to appreciate why password storage is ever so much more important than password complexity. If you don’t know how your password is stored, then all you really can depend upon is complexity. This might be common knowledge to password and crypto pros, but for the average InfoSec or Web Security expert, I highly doubt it.
Grossman's predicament, and the techniques used to resolve it, underscore the never-ending battle between password security and the latest cracking strategies. For much more about the techniques used to create and defeat strong passwords, see the Ars feature "Why passwords have never been weaker—and crackers have never been stronger."