為了使用戶能成功登錄到目標系統,所以需要獲取一個正確的密碼。在Kali中,在線破解密碼的工具很多,其中最常用的兩款分別是Hydra和Medusa。本節將介紹使用Hydra和Medusa工具實現密碼在線破解。
8.1.1 Hydra工具
Hydra是一個相當強大的暴力密碼破解工具。該工具支持幾乎所有協議的在線密碼破解,如FTP、HTTP、HTTPS、MySQL、MS SQL、Oracle、Cisco、IMAP和VNC等。其密碼能否被破解,關鍵在於字典是否足夠強大。很多用戶可能對Hydra比較熟悉,因為該工具有圖形界面,且操作十分簡單,基本上可以“傻瓜”操作。下面將介紹使用Hydra工具破解在線密碼。
使用Hydra工具破解在線密碼。具體操作步驟如下所示。
(1)啟動Hydra攻擊。在Kali桌面依次選擇“應用程序”|Kali Linux|“密碼攻擊”|“在線攻擊”|hydra-gtk命令,將顯示如圖8.1所示的界面。
圖8.1 啟動界面
(2)該界面用於設置目標系統的地址、端口和協議等。如果要查看密碼攻擊的過程,將Output Options框中的Show Attempts復選框勾上。在該界面單擊Passwords選項卡,將顯示如圖8.2所示的界面。
圖8.2 指定密碼字典
(3)在該界面指定用戶名和密碼列表文件。本例中使用Kali系統中存在的用戶名和密碼列表文件,並選擇Loop around users選項。其中,用戶名和密碼文件分別保存在/usr/share/wfuzz/wordlist/fuzzdb/wordlists-user-passwd/names/nameslist.txt和/usr/share/wfuzz/wordlist/fuzzdb/wordlists-user-passwd/passwds/john.txt中。
(4)設置好密碼字典后,單擊Tuning選項卡,將顯示如圖8.3所示的界面。
圖8.3 基本設置
(5)在該界面設置任務的編號和超時時間。如果運行任務太多的話,服務的響應速率將下降。所以要建議將原來默認的任務編號16修改為2,超時時間修改為15。然后將Exit after first found pair的復選框勾上,表示找到第一對匹配項時則停止攻擊。
(6)以上的配置都設置完后,單擊到Start選項卡進行攻擊,如圖8.4所示。
圖8.4 攻擊界面
(7)在該界面顯示了四個按鈕,分別是啟動、停止、保存輸出和清除輸出。這里單擊Start按鈕開始攻擊,攻擊過程如圖8.5所示。
圖8.5 攻擊過程
(8)xHydra工具根據自定的用戶名和密碼文件中的條目,進行匹配。當找到匹配的用戶名和密碼時,則停止攻擊,如圖8.5所示。
8.1.2 Medusa工具
Medusa工具是通過並行登錄暴力破解的方法,嘗試獲取遠程驗證服務訪問權限。Medusa能夠驗證的遠程服務,如AFP、FTP、HTTP、IMAP、MS SQL、NetWare、NNTP、PcAnyWhere、POP3、REXEC、RLOGIN、SMTPAUTH、SNMP、SSHv2、Telnet、VNC和Web Form等。下面將介紹使用Medusa工具獲取路由器的訪問權。
啟動Medusa工具。在終端直接運行medusa命令,如下所示:
root@kali:~# medusa
或者在桌面上依次選擇“應用程序”|Kali Linux|“密碼攻擊”|“在線攻擊”|medusa命令,將輸出如下所示的信息:
以上輸出的信息顯示了medusa命令的幫助信息。包括meduas命令的語法、可使用的選項及參數。用戶可以根據自己的需要,選擇相應的選項獲取路由器的訪問權。下面看一個例子的運行結果。
【實例8-1】使用medusa暴力破解地址為192.168.5.1的路由器,執行命令如下所示:
root@kali:~# medusa -h 192.168.5.1 -u admin -P /usr/share/wfuzz/wordlist/fuzzdb/wordlists-user-
passwd/passwds/john.txt -M http -e ns 80 -F
Medusa v2.0 [http://www.foofus.net] (C) JoMo-Kun / Foofus Networks <jmk@foofus.net>
ACCOUNT CHECK: [http] Host: 192.168.5.1 (1 of 1, 0 complete) User: admin (1 of 1, 0 complete) Password: (1 of 3109 complete)
ACCOUNT CHECK: [http] Host: 192.168.5.1 (1 of 1, 0 complete) User: admin (1 of 1, 0 complete) Password: admin (2 of 3109 complete)
ACCOUNT CHECK: [http] Host: 192.168.5.1 (1 of 1, 0 complete) User: admin (1 of 1, 0 complete) Password: 12345 (3 of 3109 complete)
ACCOUNT CHECK: [http] Host: 192.168.5.1 (1 of 1, 0 complete) User: admin (1 of 1, 0 complete) Password: abc123 (4 of 3109 complete)
ACCOUNT CHECK: [http] Host: 192.168.5.1 (1 of 1, 0 complete) User: admin (1 of 1, 0 complete) Password: password (5 of 3109 complete)
ACCOUNT CHECK: [http] Host: 192.168.5.1 (1 of 1, 0 complete) User: admin (1 of 1, 0 complete) Password: computer (6 of 3109 complete)
ACCOUNT CHECK: [http] Host: 192.168.5.1 (1 of 1, 0 complete) User: admin (1 of 1, 0 complete) Password: 123456 (7 of 3109 complete)
ACCOUNT CHECK: [http] Host: 192.168.5.1 (1 of 1, 0 complete) User: admin (1 of 1, 0 complete) Password: huolong5 (8 of 3109 complete)
ACCOUNT FOUND: [http] Host: 192.168.5.1 User: admin Password: daxueba [SUCCESS]
以上輸出的信息是破解路由器密碼的一個過程。一般路由器默認的用戶名和密碼都是admin。但是通常,用戶會將密碼進行修改。所以這里指定一個密碼字典john.txt,通過該字典對路由器進行暴力破解。從最后一行輸出的信息,可以看到路由器的用戶名和密碼分別為admin和daxueba。