使用John爆破
- 前言
- John the ripper
- 簡介
- 破解模式
- 命令引數
- 環境
- 破解步驟:
- 方法一:使用命令列模式
- 方法二:使用GUI界面
- 小結

- 本文僅供技術分享、交流討論,嚴禁用于非法用途

前言
由于Linux是Internet最流行的服務器作業系統,因此它的安全性備受關注,這種安全主要靠口令實作,
Linux使用一個單向函式crypt()來加密用戶口令,單向函式crypt()從數學原理上保證了從加密的密文得到加密前的明文是不可能的或是非常困難的,當用戶登錄系統時,系統并不是去解密已加密的口令,而是將輸入的口令明文字串傳給加密函式,將加密函式的輸出與/etc/passwd檔案中該用戶的PASSWORD域進行比較,若匹配成功,則允許用戶登錄系統,
在目前多數Linux系統中,口令檔案都做了shadow變換,即把/etc/passwd中的口令域分離出來,單獨存在/etc/shadow檔案中,并加強對shadow檔案的保護,以增強口令安全,因此,在破解密碼是,要先做UNshadow變換,將/etc/passwd檔案與/etc/shadow檔案合二為一,
John the ripper
簡介
一款免費、開源的暴力密碼破解器,它有多平臺版本,支持目前大多數的加密演算法,如DES、MD4、MD5等,該軟體破解密碼方式簡單而粗暴,理論上只要時間上面允許,該軟體可以破譯絕大多數用戶密碼,John the Ripper免費的開源軟體,支持目前大多數的加密演算法,如DES、MD4、MD5等,它支持多種不同型別的系統架構,包括Unix、Linux、Windows、DOS模式、BeOS和OpenVMS,主要目的是破解不夠牢固的Unix/Linux系統密碼,
破解模式
John支持四種密碼破解模式:
1.字典模式:在這種模式下,用戶只需要提供字典和密碼串列用于破解,
2.單一破解模式:這是john作者推薦的首選模式,John會使用登錄名、全名和家庭通訊錄作為候選密碼,
3.遞增模式:在該模式下john會嘗試所有可能的密碼組合,這是最具威力的一種,
4.外部模式:在這種模式下,用戶可以使用john的外部破解模式,使用之前,需要創建一個名為(list.external : mode)的組態檔,其中mode有用戶分配,
命令引數
john命令的具體引數選項如下表:
| 選 項 | 描 述 |
|---|---|
| –single | single crack模式,使用組態檔中的規則進行破解 |
| –wordlist=FILE–stdin | 字典模式,從 FILE或標準輸入中讀取詞匯 |
| –rules | 打開字典模式的詞匯表切分規則 |
| –incremental[=MODE] | 使用增量模式 |
| –external=MODE | 打開外部模式或單詞過濾,使用 [List.External:MODE]節中定義的外部函式 |
| –stdout[=LENGTH] | 不進行破解,僅僅把生成的、要測驗是否為口令的詞匯輸出到標準輸出上 |
| –restore[=NAME] | 恢復被中斷的破解程序,從指定檔案或默認為 $JOHN/john.rec的檔案中讀取破解程序的狀態資訊 |
| –session=NAME | 將新的破解會話命名為 NAME,該選項用于會話中斷恢復和同時運行多個破解實體的情況 |
| –status[=NAME] | 顯示會話狀態 |
| –make-charset=FILE | 生成一個字符集檔案,覆寫 FILE檔案,用于增量模式 |
| –show | 顯示已破解口令 |
| –test | 進行基準測驗 |
| –users=[-]LOGIN | UID[,…] |
| –groups=[-]GID[,…] | 對指定用戶組的賬戶進行破解,減號表示反向操作,說明對列出組之外的賬戶進行破解, |
| –shells=[-]SHELL[,…] | 對使用指定 shell的賬戶進行操作,減號表示反向操作 |
| –salts=[-]COUNT | 至少對 COUNT口令加載加鹽,減號表示反向操作 |
| –format=NAME | 指定密文格式名稱,為 DES/BSDI/MD5/BF/AFS/LM之一 |
| –save-memory=LEVEL | 設定記憶體節省模式,當記憶體不多時選用這個選項, LEVEL取值在 1~3之間 |
英文可以的話,也可以在kali中使用
man john
查看詳細引數選項,
環境
kali作業系統
可以裝到虛擬機中,如果有條件的話,可以安裝到物體機中,具體安裝步驟就不介紹了,網上有很多相關文章,如安裝中遇到什么問題,也可以在評論區留言,很高興為大家解決!
破解步驟:
創建test用戶,并設定密碼

將密碼檔案內容復制到家目錄下

查看復制的內容

方法一:使用命令列模式
用字典破解
john --wordlist=/usr/share/john/password.lst shadow0

可以看到,已經破解了密碼
也可以輸入
john --show shadow0
進行查看

方法二:使用GUI界面
kali中一般自帶圖形化界面的john,若沒有可以用以下命令安裝
apt install johnny
首先將密碼檔案寫入passwd.txt
unshadow /etc/passwd /etc/shadow > passwd.txt
unshadow命令會結合/etc/passwd的資料和/etc/shadow的資料,創建一個含有用戶名和密碼詳細資訊的檔案,

打開johnny

選擇要剛才創建的密碼檔案passwd.txt


點擊開始攻擊

稍等片刻后,密碼就被破解出來了

小結
在口令設定程序中,因許多個人因素,可以利用這些因素來幫助解密,由于對口令安全性的考慮,一般不會把口令寫在紙上,因此很多人都設法使自己的口令容易記憶,這反而給黑客提供了可乘之機,
了解黑客的攻擊手段,可以使我們更好的防御黑客入侵,在我們設定密碼時,應盡量不在密碼中包含生日、姓名、手機號等個人資訊,因為黑客很有可能收集這些資訊來破解密碼,
如果破解程序中遇到什么問題,可以在評論區留言,很高興為大家解決!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/291780.html
標籤:其他
上一篇:【網路安全威脅】企業風險遠不止勒索軟體,盤點當今企業面臨的四種安全威脅
下一篇:BugKu_eval
