Penetration Testing mailing list archives
RE: Craking Serv-u passwords stored in .ini file.
From: "M. D." <nekromancer () lycos com>
Date: Fri, 03 Sep 2004 07:40:10 +0000
Hi Michael, I'm not referring to any high-tech about MD5 collisions. Simply to good old password "cracking" by hashing and comparing. In the specific case of Serv-u, and according to the link I provided, the password is salted with a nicely shown salt of 2 characters (the 2 first characters in the string stored in the .ini file), so using any cracker that allows you to specify the first 2 characters of the passwords to try will really help a lot. If you use Lepton's Crack you have the functionality to prepend these 2 characters to all the words in a dictionary (or to anything generated by the bruteforce mode), hash that and compare. LCrack also support the "cracking" of pure MD5 hashes, not the MD5 implementation of Linux passwords (use John for that until we decide to add support for it to LCrack). I just look at the fact that people DO use stupid passwords if they are not enforced to use good ones. My experience is that with a good dictionary, some permutations and tricks, and bruteforcing of the short ones, more than 30% of passwords in use by normal users are cracked (and I'm being very conservative with my figures...), THE ALGORITHM USED DOESN'T MATTER ;-) I never said anything about MD5 being a weak algorithm, or anything about the relative security of Serv-u. Now I'll say something ;-) In the link I provided in the first post you can read: ======================================================== 1) A random salt of (2) letters is created using the characters a..z (lowercase) 2) The salt of (2) letters (i.e. "ab") are appended to the beginning of the password entered by the user (i.e. "jlmess" becomes "abjlmess") 3) The "new" password of "abjlmess" is now encrypted using MD5 encryption (i.e. "751C9D206E2C118C9B597A4640AFA8A1") 4) Now the salt of (2) letters (i.e. "ab") is appended to the front of the MD5 hash created above (i.e. "ab751C9D206E2C118C9B597A4640AFA8A1") ======================================================== This is vulnerable to a dictionary or bruteforce attack in which you prepend the salt. You get the salt from the first 2 characters of the string in the .ini file (for example "ab"), then your attack will hash the following words: abacapulco ...many words... abzero And the hash obtained from these words will be directly compared to the hash in the .ini file minus the first 2 characters. This is not much stronger than not using salt at all. It's not a very clever implementation of a salt (in fact I think it sucks, but I'm too polite to say that ;-) Of course you need a password cracker that allows you to specify the first 2 characters as FIXED, and this is exactly what you can do with LCrack, either by the use of the REGEX functionality or by using the prepending functionality in the latest revision (both can't be used at the same time). It would have been much stronger, for example, the following: 1) hash the password, with or without prepending the salt, doesn't matter. I'm not using it in this example: password: test MD5 hash: 098F6BCD4621D373CADE4E832627B4F6 2) append the salt to the hash: new "password": ab098F6BCD4621D373CADE4E832627B4F6 3) hash the resulting string: new MD5 hash: BDF3BAAC3C947956A57CFA97310B5DE0 4) append the salt to the last hash if you like, but I don't see any particular reason to do so OK, that's it for now. Enjoy. Nekromancer Michael V Scovetta wrote:
Nekro-- Maybe I'm just ignorant here, but if you are referring to the recent collision attacks on MD5, how does such an attack compromise serv-u security? Being able to create two strings that hash to the same value is orders of magnitude easier than finding a string that hashes to some particular hash value. From what I see, the serv-u hash security is weak not because of the weakness of MD5 or any other hashing algorithm, but rather because a simple dictionary attack (performaed 26^2 times) would be more effective than attempting a preimage attack on the final hashed value. If there's something here that I'm not getting, please let me know. Regards, Michael ScovettaDear colleagues, Googling around shows THIS: http://www.cat-soft.com/serv-u-list/08%2014-Apr-99%20To%2005-Aug-02/msg0 9499.html With that information and any good MD5 hash cracker (Lepton's Crack comes to mind, but feel free to chose any other, I'm a bit biased being one of the authors ;-) I think that you can try to bruteforce these passwords. Hope this info helps. Cheers, Nekromancer
-- _______________________________________________ Find what you are looking for with the Lycos Yellow Pages http://r.lycos.com/r/yp_emailfooter/http://yellowpages.lycos.com/default.asp?SRC=lycos10 ------------------------------------------------------------------------------ Ethical Hacking at the InfoSec Institute. All of our class sizes are guaranteed to be 12 students or less to facilitate one-on-one interaction with one of our expert instructors. Check out our Advanced Hacking course, learn to write exploits and attack security infrastructure. Attend a course taught by an expert instructor with years of in-the-field pen testing experience in our state of the art hacking lab. Master the skills of an Ethical Hacker to better assess the security of your organization. http://www.infosecinstitute.com/courses/ethical_hacking_training.html -------------------------------------------------------------------------------
Current thread:
- Re: Craking Serv-u passwords stored in .ini file., (continued)
- Re: Craking Serv-u passwords stored in .ini file. Jérôme (Sep 02)
- Re: Craking Serv-u passwords stored in .ini file. Hans Porter (Sep 02)
- Re: Craking Serv-u passwords stored in .ini file. Marius Huse Jacobsen (Sep 09)
- Re: Craking Serv-u passwords stored in .ini file. Hans Porter (Sep 02)
- RE: Craking Serv-u passwords stored in .ini file. Scovetta, Michael V (Sep 02)
- RE: Craking Serv-u passwords stored in .ini file. Ferruh Mavituna (Sep 02)
- RE: Craking Serv-u passwords stored in .ini file. Altheide, Cory B. (IARC) (Sep 02)
- RE: Craking Serv-u passwords stored in .ini file. Ferruh Mavituna (Sep 02)
- RE: Craking Serv-u passwords stored in .ini file. Scovetta, Michael V (Sep 02)
- RE: Craking Serv-u passwords stored in .ini file. Altheide, Cory B. (IARC) (Sep 02)
- Re: Craking Serv-u passwords stored in .ini file. Nigel Stepp (Sep 04)
- RE: Craking Serv-u passwords stored in .ini file. M. D. (Sep 03)
- RE: Craking Serv-u passwords stored in .ini file. avarni (Sep 04)
- Re: Craking Serv-u passwords stored in .ini file. Hans Porter (Sep 07)
- Re: Craking Serv-u passwords stored in .ini file. Jérôme (Sep 03)
- RE: Craking Serv-u passwords stored in .ini file. M. D. (Sep 08)
- Re: Craking Serv-u passwords stored in .ini file. Jérôme (Sep 02)