Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Security Encryption

The Death Throes of crypt() 388

dex writes "Tom Perrine and Devin Kowatch of the San Diego Supercomputer Center have issued "Teracrack: Password cracking using TeraFLOP and PetaByte Resources" (PDF, HTML version via Google). Using SDSC's prodigious computing facilities, they precomputed 207 billion crypt() hashes in 80 minutes."
This discussion has been archived. No new comments can be posted.

The Death Throes of crypt()

Comments Filter:
  • Solaris (Score:5, Insightful)

    by CrankyFool ( 680025 ) on Monday December 08, 2003 @03:52PM (#7661686)
    I wonder if this will spur Sunto finally make the default password encryption algorithm on Solaris something other than crypt...
  • by grub ( 11606 ) <slashdot@grub.net> on Monday December 08, 2003 @03:53PM (#7661693) Homepage Journal

    Actually with most Unixish systems going to other password formats such as MD5 and Blowfish I'd think that this goes to show that (NSA notwithstanding) crypt() has had a long, healthy existance. Rather than saying 'crypt() is dead' they should be saying 'it took 30ish years but crypt() is at the end of its useful life'.

    Not many pieces of code will be able to boast that lifespan.
  • by jrexilius ( 520067 ) on Monday December 08, 2003 @03:59PM (#7661737) Homepage
    This should cause some interesting systems integration issues as crypt has become the defacto standard for cross system authentication and password management. (hash it at your web server, compare it with app server, store it in DB, where it is used by samba to auth winblow users, blah blah, I know these arent exact implementation examples but you get the idea). Just a lot of code or libraries to change to make a system secure.
  • The reality is (Score:5, Insightful)

    by phorm ( 591458 ) on Monday December 08, 2003 @04:02PM (#7661765) Journal
    That over time, any encryption alghorythm may be broken by superior computer. 50 years from now, normal computers will put anything we have to shame, and supercomputers will make current ones look like calculators.

    Crypt is already supplantable by many improved techniques, but even if it is used, are they going to make these keys available to the world?

    If not, now that it's known a really faster computer can solve then, perhaps the next step in spammy-crackers' arsenal will be to take their virussed drones away from attacking anti-spam sites and focus them at generating crypt or other password solutions? How many drones working P2P-style (you create these hashes, I'll create these ones) would it take to equal this supercomputer?
  • by the morgawr ( 670303 ) on Monday December 08, 2003 @04:05PM (#7661796) Homepage Journal
    I thought I read that MD5 had some problems as well (that's why OpenBSD uses Blowfish). I think it had something to do with the hashes not being evenly and randomly distributed over the possible space. Anyone who knows more about this care to comment?
  • by gorilla ( 36491 ) on Monday December 08, 2003 @04:07PM (#7661815)
    Remember that every bit approximatly doubles the type to break it. RSA-1024 is about 10^134 times harder to break than RSA-576.
  • by dbavirt ( 543160 ) on Monday December 08, 2003 @04:08PM (#7661824)

    The ability to generate lots of crypt strings only helps you if you have the original crypt string to compare against. Most modern UNIX systems store crypt strings in /etc/shadow which is only readable by root. The crypt string is never passed across the net during most auth sequences. (Certain types of LDAP auth being the exception here.)

    The problem occurs if someone manages to break into a machine, achieve root, and pick up the /etc/shadow file. They can now brute-force all the passwords given enough time, and it appears that the amount of time needed is shrinking.

    This is a good argument for using different passwords on untrusted boxese and changing your password often.

  • by Anml4ixoye ( 264762 ) * on Monday December 08, 2003 @04:09PM (#7661831) Homepage

    In a word, no.

    As was also discussed yesterday, *nothing* is uncrackable, with the exception of correctly used one-time pads.

    The key is to put the appropriate level of security with the data you want protected. For example, if you have data you have to keep secret for 2 months, and they can crack it in 6, you can use that. But if you need to keep data, worth millions of dollars, secret for an extended period, then you should review your security.

    However, I think that if you didn't start off with the above concept in mind when you started encrypting your data, then you weren't doing your job. Have 576 cracked shouldn't worry you unless you have older encrypted data using that.

    You are right that it is a game. To keep information secure, you have to protect it. Because you protected it, people will want to try to unprotect it. Eventually they will, and if one doesn't keep up, you will lose it.

    So, we don't need more secure forms of encryption, we just need to review the current ones and use the appropriate encryption scheme for the data trying to be protected.

  • by tuffy ( 10202 ) on Monday December 08, 2003 @04:09PM (#7661833) Homepage Journal
    how many haX0rs do you know that have machine capable of running TeraFLOPs per second?

    They don't need to own such a machine, only have access to one long enough.

  • by Anonymous Coward on Monday December 08, 2003 @04:12PM (#7661859)
    It's a pity that the human mind can't be emulated using a computer, otherwise one could store the passwords in the mind of a woman, which is both impossible to understand and decrypt. ;)
  • by Mysticalfruit ( 533341 ) on Monday December 08, 2003 @04:12PM (#7661863) Homepage Journal
    Here's the more important question...

    In ten years, how many haX0rs will have access to TerFLOP machines?

    Answer: Lots...
  • by hackstraw ( 262471 ) * on Monday December 08, 2003 @04:13PM (#7661873)
    Maybe I'm nop paranoid enough, but I've never been too concerned about the security of people's passwords after root has been compromised, so I don't care what format the hashes are in /etc/shadow.

    Also, the method of "cracking" crypt() passwords can generate collisons, so the password that worked on one system may not work on another (because of different salts used).
  • Give it some time (Score:3, Insightful)

    by appleLaserWriter ( 91994 ) on Monday December 08, 2003 @04:18PM (#7661927)
    Wait a year or three and this kind of computing power will be available in game consoles in bedrooms across america.
  • Re:Still (Score:3, Insightful)

    by Anonymous Coward on Monday December 08, 2003 @04:23PM (#7661981)
    There isn't a unique hash value for every possible password... that's the way hashes work.
  • by AnotherBlackHat ( 265897 ) on Monday December 08, 2003 @04:23PM (#7661984) Homepage

    is this a message that we need more secure forms of encryption than we already have?


    No, it's a message that if you're still using stuff that was developed in the 1970s, you should consider upgrading to the stuff from two years ago.

    -- this is not a .sig
  • by vondo ( 303621 ) * on Monday December 08, 2003 @04:24PM (#7661986)
    Those 207 billion hashes come from only 50 million possible passwords. Using only 10 letters (no upper case) and 8 characters gives 100 million passwords. Bumping the letter pool up to 75 (52 letters, numbers, a few symbols) give you 1E15 possible passwords.

    Moral of the story: Pick a good password.

  • Re:MD5. (Score:3, Insightful)

    by scheme ( 19778 ) on Monday December 08, 2003 @04:29PM (#7662043)
    From personal experience with cracking passwords, I wouldn't consider unmodified MD5 to be very secure. My computer can test 5 million MD5 hashes a second, or the entire 8-character password space in ten months.
    You're mistaken. If you assume that a 8 character password only has upper and lower letters and numbers there are 218340105584896 possible combinations. That would take your computer about 7 years to test the space completely. If you allow passwords to have punctuation then this increases a lot more.
  • by goombah99 ( 560566 ) on Monday December 08, 2003 @04:34PM (#7662078)
    They have a database of all possible hashes. Your scheme would mean that an attacker would have to do three lookups, instead of one.

    No its not that simple. If it were just a database lookup then simply increasing the size of the salt a million fold would be all that was neccessary to foil any pre-computed attack. The important point in this article is that they it only takes 80 minutes to compute the crypts given the salt.

    thus one way to defeat this is to hide the salt as follows. The attack requires stealing the hashed password file. Each entry will be of the form

    SALT, HASH_code

    since the salt is given they could run their computer for 80 minutes and test 209 billion inversions of the hashcode. However if the stored item were instead: SALT2, crypt( SALT1, crypt(passwd)) then you would have to crack the first one to get the salt for the second. now iterate this.

  • by MooCows ( 718367 ) on Monday December 08, 2003 @04:39PM (#7662124)
    Actually, quite a lot of them have it now, in the form of thousands of compromised machines.
    Can be used to DDOS, or to compute.
  • by ftzdomino ( 555670 ) on Monday December 08, 2003 @04:53PM (#7662268)
    Computing the entire 7.2e16 values (man crypt) should take about 52 years. Assuming Moore's law, this drops to about 7.2 years.
  • by i_r_sensitive ( 697893 ) on Monday December 08, 2003 @04:58PM (#7662315)
    Sounds more like a stinging indictment of weak passwords than crypt().

    Reading the article there is no way that teracrack is going to deal with a strong password, the hash won't be present in it's table.

    Regardless of algorithm, the weak passwords will allways be the first to fall. We can all stop using crypt() and start using md5 hashes, but the same techniques can be applied again, and again the first passwords to fall will be the weak ones.

    I hate to sound like a Luddite, but technical problems aren't allways best fixed with more technology. The best use of teracrack that I can see, is the same use that it's predecessor had, to identify weak passwords and identify them to the user and admin to ensure that this core problem is addressed.

  • by Duncan3 ( 10537 ) on Monday December 08, 2003 @05:19PM (#7662522) Homepage
    And yet key loggers and social engineering are still exactly as fast and effective as they were when they were invented...

    Think of the children, Moore's children!!!
  • by dbavirt ( 543160 ) on Monday December 08, 2003 @05:54PM (#7662853)

    Sure, but the /etc/shadow file is their key to getting the cleartext of your password for use on other machines. At this point, it may be easier to brute force /etc/shadow than it is to set up backdoors, trojans, network sniffing, etc.

    It can be much harder to determine that someone has hijacked your account than it is to note that a root kit has been installed

  • by coyote-san ( 38515 ) on Monday December 08, 2003 @07:34PM (#7663825)
    How hard do you think it is to write a PAM module that sends off an email with the user name and password?

    This won't "crack" inactive accounts, but it will capture any account where somebody uses a password to log in. On most systems the attacker wouldn't even need to hide this function in an existing pam module, they could just provide a new one with an official sounding name (e.g., "pam_audit") and edit the PAM configuration files.

    (N.B., not all access requires passwords. E.g., I prefer using SSH DSA authentication instead of password authentication.)

E = MC ** 2 +- 3db

Working...