<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Dev@Free

    zJun's Tech Weblog

    [轉] 破解MySQL的MD5函數

    As per the documentation on MySQL I moved the storage of passwords from using Password() to using MD5(). I read a number of places that stated that this was a method that couldn't be reversed and it was far more secure than the previous method. I was feeling confident that life was about to get a little more secure. While going through my daily RSS feeds and mailing lists for SpikeSource , I happenned upon a thread about someone discussing how easy it was to break MD5 hashes. It was a simple matter of using a brute force algorithm to check all the different combinations.

    Eager to try this out for myself, I did a quick Google and found a Project RainbowCrack which was a Windows/Linux utility that would brute force crack MD5 hashes amongst other secure algorithms. Thinking it would be shrouded in mathematical terms and phrases unfamiliar to me I didn't hold out much hope that I could get it to do what I wanted; to take a sample of passwords that were stored in MySQL database tables using the MD5() function and crack them for me.

    The project builds a number of lookup tables to make the whole process a lot quicker. This in all fairness only took about 18hours to complete on my dual processor 3GHZ machine. After the tables where built it was a simple matter of running a simple command line utility to crack the MD5 hash. Time taken? 1.26seconds! That's how secure MySQL passwords encoded with MD5() are at this precise moment.

    Some sample output from RainbowCrack

    				e:\rainbowcrack-1.2-win>rcrack *.rt -h 7694f4a66316e53c8cdd9d9954bd611d
    md5_loweralpha#1-7_0_2100x8000000_all.rt:
    128000000 bytes read, disk access time: 6.23 s
    verifying the file...
    searching for 1 hash...
    plaintext of 7694f4a66316e53c8cdd9d9954bd611d is qlkjalkj
    cryptanalysis time: 1.52 s
    statistics
    -------------------------------------------------------
    plaintext found:          1 of 1 (100.00%)
    total disk access time:   6.23 s
    total cryptanalysis time: 1.52 s
    total chain walk step:    403651
    total false alarm:        388
    total chain walk step due to false alarm: 579374
    result
    -------------------------------------------------------
    7694f4a66316e53c8cdd9d9954bd611d  qlkjalkj  hex:71
    
    		

    So really, the only reason to store passwords using MD5() would be to discourage the casual hacker, but it is by no means a secure method as some sites would have you believe. It is fair to note that the RainbowCrack documentation states that salted MD5 hashes can't be broken, but MySQL doesn't salt their implementation so it makes no difference here.

    posted on 2007-01-17 16:22 zJun's帛羅閣 閱讀(2594) 評論(0)  編輯  收藏 所屬分類: 數據庫

    導航

    <2007年1月>
    31123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    統計

    常用鏈接

    留言簿(15)

    隨筆分類

    隨筆檔案

    相冊

    收藏夾

    博客

    文檔

    站點

    論壇

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产成人综合亚洲一区| 久久国产精品亚洲一区二区| 亚洲一级高清在线中文字幕| a级片免费在线播放| 亚洲自偷自偷图片| 国产免费福利体检区久久| 国产亚洲精午夜久久久久久| jizz18免费视频| 亚洲日韩精品射精日| 一级特黄录像免费播放肥| 国产亚洲综合色就色| a级毛片在线视频免费观看| 亚洲av永久无码精品网站| 久久青草免费91线频观看站街| 亚洲AV日韩AV永久无码绿巨人| 99久久国产免费-99久久国产免费 99久久国产免费中文无字幕 | 亚洲AV无码国产剧情| 免费永久在线观看黄网站| 和老外3p爽粗大免费视频| 亚洲国产精品成人久久| 91免费国产在线观看| 亚洲人成网站18禁止| 亚洲乱码日产精品a级毛片久久| 国产成人无码免费看片软件| 亚洲高清专区日韩精品| 欧洲一级毛片免费| 亚洲国产av玩弄放荡人妇| 亚洲人成色77777在线观看大| 国产精品免费无遮挡无码永久视频| 亚洲理论片在线观看| 国产精品无码素人福利免费| 一区二区三区在线免费| 亚洲美女视频网站| 吃奶摸下高潮60分钟免费视频| 丁香花在线视频观看免费| 亚洲国产精品综合久久20| 免费一级毛片不卡在线播放| 日本一道本不卡免费 | 一个人看的www免费在线视频| 亚洲AV成人一区二区三区AV| 成人毛片免费在线观看|