Slashdot Mirror


Using Google To Crack MD5 Passwords

stern writes "A security researcher at Cambridge was trying to figure out the password used by somebody who had hacked his Web site. He tried running a dictionary through the encryption hash function; no dice. Then he pasted the hacker's encrypted password into Google, and voila — there was his answer. Conclusion? Use no password that any other human being has ever used, or is ever likely to use, for any purpose. I think."

17 of 232 comments (clear)

  1. Salt by porneL · · Score: 5, Informative

    No, the conclusion is you should always use salted hashes.

    1. Re:Salt by eldavojohn · · Score: 5, Funny

      And blackjack ... and hookers. In fact, forget the hashes!

      --
      My work here is dung.
    2. Re:Salt by Anonymous Coward · · Score: 5, Funny

      Ice building up on your sidewalk? Salting breaks it.

    3. Re:Salt by maxwell+demon · · Score: 5, Funny

      This is slashdot, we need a bad car analogy too. :P Your car rusting too slowly? Salt solves that! :-)
      --
      The Tao of math: The numbers you can count are not the real numbers.
    4. Re:Salt by Sangui5 · · Score: 5, Informative

      You're implying that salting on UNIX makes attacking the hash infeasible, this is simply not true.
      Salting doesn't make breaking hashes infeasible, but it makes the attacker work harder, and makes certain highly efficient attacks infeasible.

      There are only 4096 different combinations in the salting algorithm in crypt() will use which a brute forcer can easily iterate.
      And I completely agree that 12 bits of salt is insufficient in a modern world. Which is why MacOS 10.4 and up uses 32 bits of salt, most Linux implementations use 48 bits of salt, and OpenBSD uses (a rather paranoid) 128 bits. Since it doesn't require any more effort from the user, and only a tiny amount of resources, there's no reason not to use a large salt.

      Salting a known algorithm is almost pointless because as I just described salted passwords can be just as easily defeated if you know the mechanism
      If you have the password hashes they you have the salt too. Either way, brute forcing one password is no harder. But it means you have to work harder to do a whole list of passwords, because each password has to be attacked individually.

      Salting also makes precomputation (pre-built dictionaries and rainbow tables) infeasible. Every bit of salt in essence doubles the amount of storage for your precomputation attack. This is (partly) why a fairly effective set of rainbow tables for LANMAN hashes take only 500ish MB, NTLM hashes take 8.5 GB, but even for the old Unix crypt() it would take at least 2 TB. And don't even think about trying any precomputation attacks against OpenBSD; even if the user was stupid and restricted themselves to 5 digit alphanumeric passwords, your rainbow table would consume more storage than exists. Salting makes you attack each password individually, and keeps you from doing any work ahead of time.

      this is why NT doesn't include salt.
      NTLM doesn't include a salt because (1) MS is trying to maintain a semblance of backwards compatibility with some ill-designed challenge response authentication mechanisms, and (2) they haven't learned the lesson that salting is a valuable strategy to make attacking hashes more difficult.

      Also salt was used on UNIX only because when shadow passwords didn't exist the system had to be protected against users that had the same password and could easily read the password file to compare.
      That is one reason why salts were used for old Unix crypt(). The other was to make precomputed dictionary attacks harder, which is still a valid use. Today, the best reason to use a salted hash is to avoid rainbow tables.

      Really, the modern reason to use a salt is to prevent the type of attack the original poster used, and to prevent rainbow table attacks. Both of these are good attack techniques, and salting completely moots them.

  2. MD5 Lookup Site & Names by eldavojohn · · Score: 5, Informative
    For those of you who missed it in the article, the has was:

    20f1aeb7819d7858684c898d1e98c1bb And sure enough, if you read the comments to the blog, there is a site called http://md5.rednoize.com/ that reveals that the hash is "Anthony." So although Google helped, there appears to be resources online for it (if you don't have your own Rainbow Table mega database).

    He could have discovered this if he had used a database complete with names, something I don't think would have been too difficult for him.

    This Google search idea is kind of moot if the user uses some very basic password construction such as what I've commented on before. Also, as the blog mentions, this discussion is worthless if WordPress used salting which is related to nonces used in security engineering. I think that stuff has been around for, what about five years now? Wake up WordPress!
    --
    My work here is dung.
    1. Re:MD5 Lookup Site & Names by joNDoty · · Score: 5, Funny
      Crap. From their "about" page:

      Additionaly everytime when you enter a non-md5 hash string into the search field, the md5 result for that search strings gets stored in our database for future use. Thanks for warning me. I tested to see if my password was in there... it is now!!!
    2. Re:MD5 Lookup Site & Names by Cairnarvon · · Score: 5, Insightful

      He didn't write the WordPress software, and presumably doesn't have the time to audit every bit of code it uses.
      I doubt Bruce Schneier himself audited the entire Movable Type codebase, which he uses for his blog. Does that make Schneier "not much of a security researcher"?

  3. Obligatory by Anonymous Coward · · Score: 5, Funny

    In Soviet Amerika, MD5 passwords crack you.

    1. Re:Obligatory by CrazyJim1 · · Score: 5, Funny

      What about the flip side: Using Crack to Google MD5 passwords?

  4. I wouldn't be too alarmed. by morgan_greywolf · · Score: 5, Informative

    Most MD5 password hashes, such as those used in *nix, are salted, and hence secure from this sort of vulnerability. That Wordpress uses unsalted MD5 sums to store passwords boggles my mind. It shows that the developers know even less about cryptography than I do. That's scary.

    1. Re:I wouldn't be too alarmed. by SevenDigitUID · · Score: 5, Funny

      That is totally unfair to the wordpress developers. Just because they don't care doesn't mean they don't understand.

    2. Re:I wouldn't be too alarmed. by cstdenis · · Score: 5, Interesting

      You do realize that most businesses (and therefore most websites you have accounts on) just store passwords plain text because it's easier to do tech support that way. Salted hashes are better than unsalted hashes, but most don't bother hashing at all.

      --
      1984 was not supposed to be an instruction manual.
  5. Let me guess by GroeFaZ · · Score: 5, Funny

    The password was hunter2?

    --
    The grass is always greener on the other side of the light cone.
    1. Re:Let me guess by omnipresentbob · · Score: 5, Funny

      What's with all the stars in your post?

  6. Re:RTFA by eln · · Score: 5, Funny

    You're correct. You have totally invalidated the points I brought up in my post. Good show.

  7. Re:Credibility? by neonsignal · · Score: 5, Funny

    I looked these up on google, and they directed me to some slashdot page...