【滲透測試LAB】如何使用Hydra & Nmap 執行遠端暴力破解
Hydra 是一款知名支援多種協議與網址的遠程線上暴力破解工具,而本篇專注於介紹"Hydra-graphical",又被稱為"xHydra"的使用方式(介面化版本),同時也結合Nmap來執行驗證。
本篇以四個小節分享:
1.Hydra UI版本 (xHydra)基本介紹
2.使用Nmap掃描結果
3.使用Hydra 執行結果
4.結論
在開始實作Hydra前,你該先了解Hydra的基礎知識。
1.Hydra UI版本 (xHydra)基本介紹
本篇Hydra採用 Kali 2022.3 version中的Hydra。
從Kali中搜尋Hydra,點選下去即可開啟Hydra,如下圖所示。
開啟Hydra後,會看到"Target"頁籤畫面,如下圖所示,而本篇將介紹Hydra的基礎應用所需的欄位資訊。
例如要針對SSH服務進行攻擊,常理來說SSH是使用22 Port,故這邊在Port欄位輸入22,Protocol則選擇SSH,如下圖所示。
在“Passwords”頁籤畫面,使用者需要在此設定或匯入使用者帳號(名稱)與密碼資料(字典檔),以供Hydra進行暴力破解攻擊,如下圖所示。
在"Tuning"頁籤中,這邊主要有三項目須特別設定,以確保後續測試或是攻擊目標端時,能節省運算資源與等待時間,如下圖所示。
在”Specific”頁籤中,可以設定針對網站、特定設備(如CISCO)、AD等,不同類型的服務進行特定客製化攻擊,如下圖說明所示。
在”Start”頁籤中,這邊點選"Start"後即會執行原先設定與提供給予Hydra的帳號及密碼破解程序,如下圖說明。
上述介紹Hydra基礎介面操作,接下來將開始進入本篇的實作說明。
本篇系統模擬環境:
模擬攻擊端: Kali 2022.3 version ,並採用Nmap 與 Hydra執行驗證。
模擬測試端: Metasploitable,IP:10.0.2.5。
2.使用Nmap掃描結果
在使用Nmap時,因本次使用的指令須使用最高權限才可使用,故建議一開始就啟用最高權限”root”,如下圖所示。
Step1. Nmap指令: nmap -sS -A -p- 10.0.2.5
Nmap指令說明:
(1) -sS指令是不讓偵測過程中,"不完成"TCP的 三向交握。
(2) -A為Nmap偵測Port端所運行的服務版本與作業系統,可參考先前文章內容。
(3) -p- 是Nmap偵測該目標端的Port狀態,從1至65535 Port端。
Step2.檢視掃描結果
Step3.依Nmap掃描結果,鎖定欲針對的服務與常用的Port作為目標
Step3.1 檢測發現FTP服務與對應的21 Port已有啟用
Step3.2 檢測發現SSH服務與對應的22 Port已有啟用
Step3.3 檢測發現Telnet服務與對應的23 Port已有啟用
Step3.4 檢測發現MySQL服務與對應的3306 Port已有啟用
Step3.5 檢測發現VNC服務與對應的5900 Port已有啟用
Step3.6其他檢測結果
Step3.7選定本篇欲測試的目標
本篇選定下列2項協定服務作為驗證,而所針對範例之帳號或密碼不會設計過於複雜,主要是為了讓入門者可以了解到如何運行,加上Hydra的本質是暴力破解,故所擁有的字典檔越符合目標場域的內容,更可加速破解成功。
- Telnet 23 Port
- VNC 5900 Port
上述提及的Telnet 與 VNC是兩項具高風險的遠程登錄服務,完全不建議日常或企業內部使用此服務,雖然.....還是很多企業為了方便使用(汗)。
3.使用Hydra 執行結果
驗證1.Telnet 23 Port
Step1.於"Target"頁籤中設定相關參數
Step2.於"Passwords'頁籤中設定相關參數
選擇欲匯入的字典檔案,由於Telnet也須具有Username才可登入使用,故這邊也需要匯入Username or Username List。
而本篇主要使用Kali預設建立的字典檔案路徑: /usr/share/wordlists,可參考使用此字典檔(rockyou.txt),或自行建立。
Kali預設建立的字典檔案路徑: /usr/share/wordlists,其這邊有許多預設多樣暴力破解工具或是服務所使用的字典檔。
本篇選擇路徑中的rockyou.txt,而因個人需求,隨後將此檔案複製至桌面上,故後續路徑也會有所不同,但只要Hydra能抓到檔案路徑,就可以運行,如下圖所示。
Step3.於"Tuning"頁籤中設定相關參數
本篇這邊Number of Tasks、Timeout 採用預設數值,並勾選Exit after first pair (per host).
Step4. Results
依上述各頁籤參數設定完成後,至"Start"頁籤中,點選"Start"後,Hydra則會開始自動帶入資料執行目標端的暴力破解,如下圖所示。
本篇針對Telnet協定服務的暴力破解結果,如下圖所示。
依據上述暴力破解結果發現,在本次的205761782671201項目字典中,於第6次的暴力猜測中,發現一組合規的使用者帳號與密碼,其username為123456,password為12345。
驗證2.VNC 5900 Port
Step1.於"Target"頁籤中,設定目標參數與對應Port
Step2.於"Password"頁籤中設定相關參數
Step3.於”Tuning”頁籤中設定相關參數
Step4. Result
依據上述暴力破解結果發現,在14344399項目組合中,於第9次的暴力猜測中,發現一組合規的使用者帳號與密碼,其password為password。
4.結論
綜上所實驗的2種類型協定服務,可以瞭解到當惡意人士已製作符合攻擊使用的帳號(Username)與密碼(Password)字典檔時,亦有很高可能性找到合規使用者權限,故日常就應該落實密碼複雜性,同時盡可能降低使用高風險的軟體或服務,如服務已有提供多因素驗證服務(MFA),更建議需要啟用,以提高惡意人士的攻擊成本。
最後Hydra是一套具多功能的暴力破解工具,與它相似工具也有Medusa、Burp Suite等,這些也是可用於網頁類型爆破。若有興趣夥伴,不妨可以嘗試使用於靶機。
參考資料: