iT邦幫忙

2022 iThome 鐵人賽

DAY 13
1
Security

做IT必備的資安觀念!手把手帶你攻防實戰系列 第 13

Day 13 : 實作篇 - 如何使用 John the Ripper 進行密碼破解

  • 分享至 

  • xImage
  •  

小提醒:如果想跟著操作此篇,請先去以下網址進行安裝喔!
Day 11 : 實作篇 - Kali Linux VM虛擬機安裝教學

大家好,今天是我們開始實作的第一篇!
前兩篇都是在教大家安裝環境和靶機,如果還沒安裝的可以趕快去裝一下!

John the Ripper

那我們先來介紹John the Ripper,它是一套支援多個作業系統的密碼破解工具,同時也支援對各種加密格式的密碼進行破解。附上它的 Logo 給大家參考參考
https://ithelp.ithome.com.tw/upload/images/20220928/20141088Ldwmocy7TZ.png

那我們就來開始操作!
首先打開你的kali VM,按ctrl + alt + t叫出終端機,或直接按左上角的終端機icon也可以
https://ithelp.ithome.com.tw/upload/images/20220928/20141088HEQN8cja0P.png

再輸入以下指令到 wordlist 這個目錄下,此時你會看到一個叫rockyou.txt.gz的壓縮檔

cd /usr/share/wordlists

https://ithelp.ithome.com.tw/upload/images/20220928/20141088Y1HwyT5g8a.png

這時我們要解壓縮他,輸入以下指令進行解壓縮

sudo gunzip rockyou.txt.gz

會看到一個名叫rockyou.txt的密碼檔,裡面都是各式各樣常見的弱密碼
https://ithelp.ithome.com.tw/upload/images/20220928/20141088i00nNZajqN.png

你可以使用以下指令,看裡面記載著什麼樣的密碼

more rockyou.txt

https://ithelp.ithome.com.tw/upload/images/20220928/20141088MNN35oYAnX.png

這時再使用cd ~返回家目錄
https://ithelp.ithome.com.tw/upload/images/20220928/20141088ZY4sHa3wEc.png

輸入以下指令,建立「使用者 test1」,並將密碼設為rockyou.txt裡的有的密碼,再一直按Enter,最後輸入y即可

sudo adduser test1

https://ithelp.ithome.com.tw/upload/images/20220929/20141088BR8Mhvdz13.png

建立「使用者 test2」的流程也一樣,將上面的指令改為sudo adduser test2即可
https://ithelp.ithome.com.tw/upload/images/20220929/201410882vKLXEgwL8.png

此時輸入以下指令查看使用者列表,確認使用者 test1、test2 有沒有建立成功

cat /etc/passwd

https://ithelp.ithome.com.tw/upload/images/20220928/20141088W3ivvZbhGv.png

再輸入以下指令,用unshadow取出你的密碼檔案

sudo -i              # 進入root模式
cd /home/kali        # 到/home/kali這個目錄底下
unshadow /etc/passwd /etc/shadow > mypasswd.txt        # 使用unshadow取出你的使用者、密碼檔案

因為shadow檔存著使用者的密碼,所以必須進到 root 才能對其進行操作
https://ithelp.ithome.com.tw/upload/images/20220928/20141088KPkOz8SDpW.png


至於在unshadow輸入的/etc/passwd/etc/shadow是什麼呢?

前面我們有使用cat /etc/passwd查看使用者列表
但你有沒有發現到,它並沒有列出「密碼」,原因是它的密碼被另外儲存了,也就是存到/etc/shadow
https://ithelp.ithome.com.tw/upload/images/20220929/201410885cqqsm2Dfe.png

/etc/passwd /etc/shadow > mypasswd.txt,則是代表將使用者列表和密碼合併,並存到mypasswd.txt這個檔案裡

你可以直接cat /mypasswd.txt查看它的內容,沒意外會是使用者列表 + 一段被雜湊過的密碼
https://ithelp.ithome.com.tw/upload/images/20220929/20141088jy4kUbzanI.png


既然知道unshadow那段指令的意思了,就再輸入以下指令,使用 John the Ripper 進行破解

john --wordlist=/usr/share/wordlists/rockyou.txt --format="crypt" mypasswd.txt

--wordlist=是指「設定要遍歷的密碼檔」,而--format=是指「用什麼方式進行加密的」,像Linux是使用crypt,而windows則是LR

# 格式:john --wordlist=[你要遍歷的密碼檔] --format="[解什麼樣的加密法]" [欲解密的檔案]

可以看到我test1test2的密碼分別設定為flowerplayer,密碼破解成功
https://ithelp.ithome.com.tw/upload/images/20220928/20141088O4qfLMiw9M.png


以上就是今天的介紹
希望大家看完能對 John the Ripper 更加了解


上一篇
Day 12 : 實作篇 - Metasploitable2、OWASPBWA 靶機安裝教學
下一篇
Day 14 : 實作篇 - 如何使用 wireshark 捕獲封包
系列文
做IT必備的資安觀念!手把手帶你攻防實戰30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
JUST MONIKA
iT邦新手 5 級 ‧ 2023-05-07 21:59:29

檢查mypasswd的時候輸入cat /mypasswd.txt
回報沒有檔案
改cat mypasswd.txt才成功

我要留言

立即登入留言