2013年3月6日 星期三

John the Ripper (JTR) 密碼破解簡單使用教學


密碼分析(cryptanalysis),是在不知道任何密式邏輯或密鑰的情況下,對所需要的加密訊息(密文)進行解密的學問.然而這通常需要尋找出密鑰,才能有效解譯出原始加密訊息(明文)為何?而這就是所謂的“密碼破解”

在資訊安全領域"密碼學"是一門很深的學問,但對於目前的駭客來說這並非必要,只要巧用 John the Ripper(JTR) 這套密碼破解工具,就可以達到一部分解密的效果.


John the Ripper官網



JTR提供多種版本提供使用,當然包含我最愛的Mac平台版本,新的JTR也運用了“GPU“,可以有效加速密碼破解的速度.

以下將以常見的網站密碼加密檔案(MD5,DES等),簡單介紹要如何使用JTR.(我強調是簡單喔! 因為功能參數太多,一時還沒完全參透,有心想瞭解的人請自個ㄦ到JTR的官網看囉)


我們就用JTR來試試吧


M2Y5WVU4nQNK6
M2AERmE1jWn2E
M2dkTuewmYzJY
M2GMcSXbX0v6E



首先將上述的密文存成一個檔案 test01.txt
接下來請執行 ./john -si test01.txt 這個指令吧



破解完成,可執行 john --show test01.txt 看看解出的明文是啥囉!




解碼模式一(簡單模式)
輸入指令john -si test01.txt

解碼模式二(字典模式)
輸入指令john -w:j2.txt test01.txt

解碼模式三(窮舉模式)
輸入指令john -i test01.txt

顯示結果
輸入指令john -show 01.txt後,就會顯示如上圖所示的結果



以下為網路轉載

〔附加說明〕
什麼是DES
它是一種unix系統下的加密方式。DES通過不可逆運算,把明文密碼換算成13位的DES碼。當你輸入密碼登錄網站時,驗證系統會自動把你輸入的明文密碼換算成DES碼,再去和系統中保存的DES碼逐個進行對照,如果相同,證明你的密碼有效。採取這種方法可以減少密碼洩露的機會。

什麼是MD5
它是另外一種加密方式,比DES更加複雜。AB網站就是使用的這種加密方式。從幫助檔案看JTR應該支援MD5解碼,網上還出現一個JTR的補丁,據說也可以讓JTR支援MD5解碼。不過,你看看下面的MD5碼,它是非常難以解開的。我是沒有成功過,想要解開MD5可能需要更多的技巧和時間。網上也有其它一些用來解MD5的程序,效果都差不多。




ab136602036:$1$PTR$b.Cnkm1MAIailRACGO0Kh/

ab139004832:$1$HSI$JU7Eztw.al2wQ0dtXp/hi.

ab137746765:$1$SMI$M7q7wJilGYYsGiicFnjFC0

為什麼john無法導入密碼檔
如果運行john後提示loaded 0 passwords,可能有以下幾種原因:密碼檔中多餘的空格沒有刪除;密碼檔中有多餘內容;該密碼檔加密方式john不支援。給JTR解碼的密碼檔必須經過處理,符合「用戶名+密碼」的格式。

簡單模式說明
john -si test01.txt就是簡單解碼模式。它是根據用戶名,利用一些懶蟲的編碼習慣去猜解密碼。例如,用戶名和密碼相同,給用戶名添加簡單數字做為密碼,顛倒用戶名的字符順序做為密碼,等等。那些懶蟲密碼會在很短時間內被john猜解出來。這個模式雖然速度很快,但是解出的密碼較少,畢竟,大部分人都不願意自己的密碼輕易被人猜到。

字典模式說明
john -w:j2.txt test01.txt就是字典模式。它的原理是把解碼字典中的密碼進行DES換算,再和待解碼進行對照,如果相同,這個待解碼就被解開了。這個模式是最好的!也是收穫最多的模式(只要你的字典足夠龐大)。要盡可能收集更多的密碼製作解碼字典,可以這麼說,你的字典越大,猜解出的密碼就會越多。當然,編輯龐大的字典並不容易,而且也會增加解碼花費的時間。

窮舉模式說明
john -i test01.txt就是窮舉模式。它的原理是將全部的有效鍵盤字符(大概95個吧)進行1~8位的隨機組合,去猜解密碼。DES方式處理的密碼最大長度就是8個字符,8位以後的被忽略。這個模式應該可以解出簡單模式和字典模式不能成功猜解的密碼,但是效率極低,非常耗費時間,很可能數十小時一無所獲。如果你覺得前面兩個模式解開的密碼已經足夠多,或者實在沒有時間等待漫長的解碼過程,就不必使用這種模式了。

其它解碼模式
JTR還有其它幾種解碼模式,具體參考john的幫助檔案。這些模式對於新手來說不易掌握,是給那些熟練者提供的擴展功能。JTR還可以自定規則進行解碼,在軟體目錄中修改john.ini檔案中的相關設置即可。當然,你必須熟悉john的工作原理,否則亂改一通,適得其反。

如何製作解碼字典
JTR用來解碼的自編字典應該是single list單字典,而不是combo組合字典。因為密碼檔中用戶名是不加密的,只需猜解密碼部分,所以使用combo不會有太大的幫助,只會增加字典的體積。可以用raptor將combo字典做成single list。製作解碼字典的方法不外乎兩種,一種是收集密碼和字典進行合併處理,另外一種是利用字典工具生成解碼字典。
對於一些密碼格式特殊的網站,最好利用工具製作符合要求的解碼字典。例如DP聯盟的密碼通常是幾位小寫字母+幾位數字,如果使用我們收集整理的普通字典肯定收穫不大,可以利用工具製作符合格式要求的解碼字典,這樣很容易解開密碼。

如何提高解碼速度
首先,解碼速度和你的電腦配置有關。高速的CPU和較大的記憶體自然可以提高程序運行的速度。
處理密碼檔。把不符合規格的密碼刪除,例如DES密碼檔中不是13位的密碼當然不可能解出來,應該使用字典工具的過濾功能刪除掉不是13位的密碼組合。將密碼檔中的密碼進行排序,可能有利於提高解碼速度。
處理解碼字典。解碼字典中的密碼也應該排序,當然,過於龐大的解碼字典很難用工具處理。

關於john.pot
如果你運行過john,就會在run目錄中產生一個john.pot檔案,這裡面保存著成功猜解出來的密碼。用記事本打開就可以看到它的格式如下所示,冒號前面是加密的密碼,冒號後面就是它對應的明文密碼。注意,這個檔案裡面沒有用戶名!


john.pot檔案越大,裡面包含的已經解出的密碼也就越多。也許我們的密碼檔中有一些原始密碼根本不需要用任何模式去猜解,直接在john.pot裡面就可以找到答案。如果你有興趣,可以嘗試一下,找一個你沒有用JTR解過的原始密碼檔,直接用john –show指令輸出這個密碼檔,如果輸出的結果不是0 passwords cracked,那就說明在john.pot中存在與密碼檔中原始密碼對應的明文密碼。

哈哈,這樣也能得到解開的密碼,夠爽吧!現在你應該知道john.pot這個檔案的重要性了吧。不過別高興的太早!這個john.pot無法自己製作,那是你不斷運行john日積月累的成果。如果你想不勞而獲的增大自己的john.pot,那就只有寄希望於朋友了。現在不是有很多朋友都在用各種方式交流john.pot麼,你也可以加入交流。如果有幸獲得別人的john.pot,與自己的合併起來,做成龐大的john.pot,那麼你的解碼效率會大大提高。

john佔用太多系統資源怎麼辦
運行john進行解碼會佔用大量系統資源,你的CPU會滿負荷運轉,這時你可能無法順利運行其它程序。如果你想在運行john的同時做些其它事情,那就打開任務管理器,找到john的進程(不認識?就是佔用CPU99%的那個進程唄),滑鼠右鍵將其優先級改為低於標準。這樣就可以順利運行其它程序,當然,john的解碼速度肯定降低。

解開的密碼檔怎麼沒有幾個有效密碼
解開一個網站的密碼檔,再用AD等工具去跑,有效的密碼不一定多。這種情況多見於從log檔案中提取的密碼檔,通常那些已經被刪除的用戶也會記錄在log檔案中。也許,網管還會放一個假的密碼檔在比較容易找到的地方,讓那些只會掃密碼檔的新手上當。

2 則留言:

  1. 你好,我想請教
    有了密文(MD5)
    有了John the Ripper 要怎麼放進終端機?
    我是mac

    回覆刪除

  2. Available Services

    ..paypal money adder

    ..bitcoin miner ultimate

    ..hack bank account

    ..payza money adder

    ..jtr password cracker

    ..neteller money adder

    ..payoneer money adder

    ..Wire Bank Transfer all over the world

    ..Western Union Transfer all over the world

    ..Credit Cards (USA, UK, AUS, CAN, NZ)

    ..School Grade upgrade / remove Records

    ..Spamming Tool

    ..keyloggers / rats

    ..Social Media recovery

    .. Teaching Hacking / spamming / carding (1/2 hours course)

    discount for re-seller

    Contact: 24/7
    putro9111@gmail.com

    回覆刪除

用APNIC找出台灣所有的IP位址