Medusa和Hydra快速入門手冊(cè):01

今天主要是初步介紹一些Hydra和Medusa的分析和內(nèi)容,旨在方便快速入門,這是第一部分Medusa,后面附帶一些字典,之所以是寫一起,我是覺得這兩個(gè)都是不錯(cuò)的工具,不應(yīng)該分開的,在這種思想下就匯總成一個(gè)標(biāo)題,便于檢索

Medusa快速入門

JoMo-Kun / jmk@foofus.net

目錄

·0x00Medusa是什么?

·0x01為什么創(chuàng)造Medusa?

·0x02如何使用Medusa?

·0x03哪里可以下載?

·0x04可以聯(lián)系誰?

·0x05嘿嘿嘿?

0x00 Medusa是什么?

Medusa旨在成為一個(gè)迅速,大規(guī)模并行,模塊化,爆破登錄。目標(biāo)支持大部分允許遠(yuǎn)程登錄的服務(wù)。以下是Medusa項(xiàng)目一些主要功能:

·基于線程的并行測(cè)試??梢酝瑫r(shí)對(duì)多個(gè)主機(jī),用戶或密碼執(zhí)行強(qiáng)力測(cè)試。

·靈活的用戶輸入目標(biāo)信息(主機(jī)/用戶/密碼)可以通過多種方式指定。例如,每個(gè)項(xiàng)目可以是單個(gè)條目或包含多個(gè)條目的文件。此外,組合文件格式允許用戶改進(jìn)其目標(biāo)列表。

·模塊化設(shè)計(jì)。每個(gè)服務(wù)模塊作為獨(dú)立的.mod文件存在。這意味著,核心應(yīng)用程序不需要進(jìn)行任何修改,以便擴(kuò)展支持的強(qiáng)制服務(wù)列表。

0x01為什么創(chuàng)造Medusa?

為什么要?jiǎng)?chuàng)造Medusa?這與THC-Hydra不一樣嗎?以下是此應(yīng)用程序的一些原因:

·應(yīng)用穩(wěn)定??赡芪沂莻€(gè)跛腳漢,但是九頭蛇也經(jīng)常摔倒。我不再相信Hydra實(shí)際上的功能是否和自己聲稱的那樣比起修復(fù)Hydra,我決定創(chuàng)建自己新的應(yīng)用程序,雖然這可能會(huì)以新的和令人興奮的方式崩潰。

·代碼結(jié)構(gòu)。一段時(shí)間后,我向Hydra添加了幾個(gè)功能(并行主機(jī)掃描,SMBNT模塊)。將并行主機(jī)代碼復(fù)制到Hydra真的是的痛苦。這主要是由于我的編碼上的無力,但也可能是由于Hydra不是從底層設(shè)計(jì)來支持這一點(diǎn)。而Medusa從一開始就設(shè)計(jì)為支持主機(jī),用戶和密碼的并行測(cè)試。

·速度。Hydra通過為每個(gè)主機(jī)和正在測(cè)試的服務(wù)的實(shí)例分派新流程來完成其并行測(cè)試。當(dāng)一次測(cè)試許多主機(jī)/用戶時(shí),會(huì)產(chǎn)生大量的開銷,因?yàn)槊總€(gè)分叉進(jìn)程的用戶/密碼列表必須重復(fù)。Medusa是基于pthread的,不會(huì)不必要地重復(fù)信息。

·教育。我不是一個(gè)有經(jīng)驗(yàn)的C程序員,也不認(rèn)為自己是多線程編程的專家。寫這個(gè)應(yīng)用程序是對(duì)我的訓(xùn)練。希望其結(jié)果對(duì)別人有用。

下面是Medusa和Hydra的詳細(xì)比較:


0x02如何使用

我該怎么用這個(gè)東西?可以先直接medusa -h查看,以下是幾個(gè)示例用途:

·顯示當(dāng)前安裝的所有模塊:

% medusa -d

Medusa v1.0-rc1 [http://www.foofus.net] (C) JoMo-Kun / Foofus Networks

Available modules in "." :

Available modules in "/usr/local/lib/medusa/modules" :

+ mssql.mod :

Brute force module for M$-SQL sessions : version 0.1.0

+ http.mod :

Brute force module for HTTP : version 0.1.1

+ ssh.mod :

Brute force module for SSH v2 sessions : version 0.1.1

+ smbnt.mod :

Brute force module for SMB/NTLMv1 sessions : version 0.1.1

+ telnet.mod :

Brute force module for telnet sessions : version 0.1.4

·顯示特定模塊的選項(xiàng):

% medusa -M smbnt -q

Medusa v1.0-rc1 [http://www.foofus.net\] (C) JoMo-Kun / Foofus Networks

smbnt.mod (0.1.1) JoMo-Kun :: Brute force module for SMB/NTLMv1 sessions

Available module options:

GROUP:? (DOMAIN, LOCAL*, BOTH)

Option sets NetBIOS workgroup field.

DOMAIN: Check credentials against this hosts primary domain controller via this host.

LOCAL: Check local account.

BOTH: Check both. This leaves the workgroup field set blank and then attempts to check

the credentials against the host. If the account does not exist locally on the

host being tested, that host then queries its domain controller.

GROUP_OTHER:?

Option allows manual setting of domain to check against. Use instead of GROUP.

PASS:? (PASSWORD*, HASH, MACHINE)

PASSWORD: Use normal password.

HASH: Use a NTLM hash rather than a password.

MACHINE: Use the machine's NetBIOS name as the password.

NETBIOS

Force NetBIOS Mode (Disable Native Win2000 Mode). Win2000 mode is the default.

Default mode is to test TCP/445 using Native Win2000. If this fails, module will

fall back to TCP/139 using NetBIOS mode. To test only TCP/139, use the following:

medusa -M smbnt -m NETBIOS -n 139

(*) Default value

Usage example: "-M smbnt -m GROUP:DOMAIN -m PASS:HASH"

·以下命令主要通過Medusa獲取passwords.txt對(duì)測(cè)試主機(jī)192.168.0.20上SMB服務(wù)的單個(gè)用戶(管理員)列出的所有密碼?!?e ns”表明Medusa另外檢查管理員帳戶是否具有空白密碼或設(shè)置其密碼以匹配其用戶名(管理員)。

% medusa -h 192.168.0.20 -u administrator -P passwords.txt -e ns -M smbnt

Medusa v1.0-rc1 [http://www.foofus.net\] (C) JoMo-Kun / Foofus Networks

ACCOUNT CHECK: [smbnt] Host: 192.168.0.20 (1/1) User: administrator (1/1) Password: (1/7)

ACCOUNT CHECK: [smbnt] Host: 192.168.0.20 (1/1) User: administrator (1/1) Password: administrator (2/7)

ACCOUNT CHECK: [smbnt] Host: 192.168.0.20 (1/1) User: administrator (1/1) Password: password (3/7)

ACCOUNT CHECK: [smbnt] Host: 192.168.0.20 (1/1) User: administrator (1/1) Password: pass1 (4/7)

ACCOUNT CHECK: [smbnt] Host: 192.168.0.20 (1/1) User: administrator (1/1) Password: pass2 (5/7)

ACCOUNT CHECK: [smbnt] Host: 192.168.0.20 (1/1) User: administrator (1/1) Password: pass3 (6/7)

ACCOUNT CHECK: [smbnt] Host: 192.168.0.20 (1/1) User: administrator (1/1) Password: pass4 (7/7)

·以下命令行演示了Medusa是如何執(zhí)行一些并行功能。這里至少有20個(gè)主機(jī)和10個(gè)用戶同時(shí)測(cè)試?!?L”選項(xiàng)指示Medusa由用戶進(jìn)行并行執(zhí)行。這意味著每個(gè)不同的用戶都會(huì)對(duì)每個(gè)主機(jī)的使用10個(gè)線程進(jìn)行檢查。

% medusa -H hosts.txt -U users.txt -P passwords.txt -T 20 -t 10 -L -F -M smbnt

·Medusa允許使用文件“組合”設(shè)置主機(jī)/用戶名/密碼等數(shù)據(jù)??梢允褂谩?C”選項(xiàng)指定組合文件。該文件應(yīng)該包含每行一個(gè)條目,并用冒號(hào)隔開,樣式為host:user:password。如果三個(gè)字段中的任何一個(gè)留空,則相應(yīng)的信息應(yīng)作為全局值或文件中的列表提供。Medusa將根據(jù)文件中第一行的內(nèi)容執(zhí)行基本參數(shù)檢查。

·組合文件中可以使用以下組合:

·主持人:用戶名:密碼

·主持人:用戶名:

·主辦::

·:用戶名密碼

·:用戶名:

·::密碼

·主持人::密碼

·以下示例將檢查文件combo.txt中的每個(gè)條目:

% medusa -M smbnt -C combo.txt

The Combo.txt file:

192.168.0.20:administrator:password

192.168.0.20:testuser:pass

192.168.0.30:administrator:blah

192.168.0.40:user1:foopass

以下示例將檢查文件combo.txt中的每個(gè)條目并與hosts.txt中的文件做比較:

% medusa -M smbnt -C combo.txt -H hosts.txt

The combo.txt file:

:administrator:password

:testuser:pass

:administrator:blah

:user1:foopass

Medusa還支持使用PwDump文件作為組合文件。這些文件的格式應(yīng)該是user:id:lm:ntlm :::。我們?cè)诘谝恍械哪┪膊檎摇?::”,以確定該文件是否包含PwDump輸出。

恢復(fù)Medusa掃描。Medusa有能力恢復(fù)被SIGINT信號(hào)中斷的掃描(例如CTRL-C)。例如:

測(cè)試中斷了SIGINT

% ../medusa -M ssh -H host.txt -U users.txt -p password

Medusa v2.0 [http://www.foofus.net\] (C) JoMo-Kun / Foofus Networks

ACCOUNT CHECK: [ssh] Host: 192.168.0.1 (1 of 11, 0 complete) User: foo (1 of 4, 0 complete) Password: password (1 of 1 complete)

ACCOUNT CHECK: [ssh] Host: 192.168.0.1 (1 of 11, 0 complete) User: administrator (2 of 4, 1 complete) Password: password (1 of 1 complete)

ACCOUNT CHECK: [ssh] Host: 192.168.0.1 (1 of 11, 0 complete) User: jmk (3 of 4, 2 complete) Password: password (1 of 1 complete)

ACCOUNT CHECK: [ssh] Host: 192.168.0.1 (1 of 11, 0 complete) User: bar (4 of 4, 3 complete) Password: password (1 of 1 complete)

ACCOUNT CHECK: [ssh] Host: 192.168.0.11 (2 of 11, 1 complete) User: foo (1 of 4, 0 complete) Password: password (1 of 1 complete)

ACCOUNT CHECK: [ssh] Host: 192.168.0.11 (2 of 11, 1 complete) User: administrator (2 of 4, 1 complete) Password: password (1 of 1 complete)

ALERT: Medusa received SIGINT - Sending notification to login threads that we are are aborting.

ACCOUNT CHECK: [ssh] Host: 192.168.0.11 (2 of 11, 1 complete) User: jmk (3 of 4, 2 complete) Password: password (1 of 1 complete)

ALERT: To resume scan, add the following to your original command: "-Z h2u3u4h3."

正在恢復(fù)中斷的掃描

% ../medusa -M ssh -H host.txt -U users.txt -p password -Z h2u3u4h3. Medusa v2.0 [http://www.foofus.net\] (C) JoMo-Kun / Foofus Networks

ACCOUNT CHECK: [ssh] Host: 192.168.0.11 (2 of 11, 0 complete) User: jmk (3 of 4, 0 complete) Password: password (1 of 1 complete) ACCOUNT CHECK: [ssh] Host: 192.168.0.11 (2 of 11, 0 complete) User: bar (4 of 4, 1 complete) Password: password (1 of 1 complete) ACCOUNT CHECK: [ssh] Host: 192.168.0.15 (3 of 11, 1 complete) User: foo (1 of 4, 0 complete) Password: password (1 of 1 complete)

以下是恢復(fù)的簡(jiǎn)單步驟:

h2u3u4h3。

---------沒有100%完成的第一個(gè)主機(jī)

-------不是100%完成的主機(jī)的第一個(gè)用戶

-----未啟動(dòng)的主機(jī)的第一個(gè)用戶

---沒有開始的第一個(gè)主機(jī)

-地圖結(jié)尾標(biāo)記

模塊具體細(xì)節(jié):

AFP

AFP模塊根據(jù)Apple Filing Protocol服務(wù)測(cè)試帳戶。

該AFP模塊利用基于afpfs-ng FUSE的客戶端(http://alexthepuffin.googlepages.com/home)。目前的Medusa autoconf設(shè)置要求將afpfs-ng頭文件安裝到/ usr / include / afpfs-ng,libary位于/usr/lib/libafpclient.so.0。如果這與您的設(shè)置不匹配,則需要修改autoconf配置。

CVS

CVS模塊通過pserver協(xié)議對(duì)CVS版本控制系統(tǒng)進(jìn)行測(cè)試。

該模塊有一個(gè)選項(xiàng)DIR。這允許用戶指定目標(biāo)CVSROOT路徑。例如:pserver:USER @ HOST:/ SOME_DIR。如果該選項(xiàng)未設(shè)置,則默認(rèn)行為是使用/ root。

FTP

FTP模塊根據(jù)FTP和FTPS服務(wù)測(cè)試帳戶。這包括顯式FTPS(RFC 4217中定義的AUTH TLS模式)和隱式(FTP over SSL(990 / tcp))。

HTTP

HTTP模塊使用BASIC-AUTH,集成Windows身份驗(yàn)證(NTLM)和摘要(MD5和MD5-sess),對(duì)HTTP / HTTPS服務(wù)進(jìn)行測(cè)試。

IMAP

IMAP模塊根據(jù)IMAP服務(wù)測(cè)試帳戶。該模塊支持imap(143)和imaps(993)。IMAP模塊要求服務(wù)器的功能,然后根據(jù)其響應(yīng)進(jìn)行LOGIN或AUTHENTICATE PLAIN。

MS-SQL

MSSQL模塊根據(jù)Microsoft MS-SQL服務(wù)測(cè)試帳戶。

應(yīng)該注意的是,MS-SQL Developer Edition和/或MSDE的并發(fā)工作負(fù)載調(diào)控器可以將您的服務(wù)器任意時(shí)間限制在不超過五個(gè)并發(fā)連接。

MSSQL模塊將自動(dòng)檢測(cè)遠(yuǎn)程主機(jī)上SQL Server實(shí)例使用的TCP端口。這是通過“SQL Ping”UDP請(qǐng)求完成的。如果主機(jī)上存在多個(gè)實(shí)例,則僅測(cè)試第一個(gè)實(shí)例。將報(bào)告任何其他實(shí)例,并注明其各自的TCP端口。通過使用Medusa“-n”選項(xiàng)指定端口,可以覆蓋自動(dòng)檢測(cè)。

MySQL

MySQL模塊針對(duì)MySQL服務(wù)測(cè)試帳戶。

除了正常的密碼爆破外,該模塊還支持舊的MySQL(4.1之前)散列的“哈希傳遞”功能。舊的MySQL 4.1之前的認(rèn)證方案很容易受到哈希傳遞認(rèn)證攻擊。利用從MySQL數(shù)據(jù)庫收集的舊式散列,用戶可以使用Medusa驗(yàn)證其在其他服務(wù)器上的有效性。修改的MySQL客戶端也可以直接使用有效的哈希連接到遠(yuǎn)程服務(wù)。

NetWare NCP

NCP模塊根據(jù)NetWare NCP服務(wù)測(cè)試帳戶。該模塊是使用NetWare 5.1主機(jī)作為目標(biāo)開發(fā)的。

該模塊需要ncpfs。還必須使用“install-dev”選項(xiàng)安裝ncpfs軟件包。這將安裝ncpfs頭文件和靜態(tài)libncp庫。修改后的Gentoo ebuild已包含在/ misc / net-fs / ncpfs目錄中,該目錄包含此選項(xiàng)的USE標(biāo)志。

該模塊有一個(gè)選項(xiàng),即CONTEXT。應(yīng)該注意的是,libncp默認(rèn)情況下不會(huì)自動(dòng)指定用戶上下文。如果無法解析提供的名稱,則會(huì)將服務(wù)器的上下文附加到用戶名,并嘗試解析該值。建議用戶為正在測(cè)試的每個(gè)帳戶指定上下文。可以使用CONTEXT選項(xiàng)指定全局上下文。每個(gè)用戶上下文可以被定義為包含用戶名或通過命令行傳遞文件中的用戶名作為帳戶名稱的一部分。

以下示例演示了NCP模塊的多種用途:

為users.txt中的所有帳戶指定上下文:

% medusa -h 192.168.0.20 -U users.txt -p bar -M ncp -m CONTEXT:.OU=administrators.O=foofus·

通過“-u”參數(shù)傳遞完整的用戶上下文:

% medusa -h 192.168.0.20 -u username.OU=administrators.O=foofus -p bar -M ncp

默認(rèn)情況下,Libncp也使用NDS和BIND身份驗(yàn)證器。不幸的是,返回到模塊的唯一錯(cuò)誤消息是BIND認(rèn)證器的錯(cuò)誤消息。這些消息不像NDS那樣描述,只是似乎報(bào)告成功或失敗。為了獲得更多有用的消息(帳戶禁用/超過最大登錄數(shù)等信息),請(qǐng)使用以下文本創(chuàng)建一個(gè)?/ .nwclient或/etc/ncpfs.conf文件:

[Requester]NetWare Protocol = NDS

NNTP

NNTP模塊通過AUTHINFO根據(jù)網(wǎng)絡(luò)新聞傳輸協(xié)議測(cè)試帳戶。

遠(yuǎn)程控制軟件

PcAnywhere模塊根據(jù)Symantec PcAnywhere服務(wù)測(cè)試帳戶。

注意:PcAnywhere一次只允許一個(gè)連接。每個(gè)目標(biāo)運(yùn)行多個(gè)線程可能無法正常工作。

基于Server Version 10.5.1和Client 10.0.2的數(shù)據(jù)包捕獲模塊。

PCA驗(yàn)證方法: ADS(Active Directory服務(wù))[1] FTP [2] HTTP [2] HTTPS [2] Microsoft LDAP [2] Netscape LDAP [2] Novell LDAP [2] NT [1] pcAnywhere [1] Windows [ 3] [1]已驗(yàn)證的工作 [2]未測(cè)試 [3]當(dāng)PcAnywhere主機(jī)對(duì)域帳戶進(jìn)行身份驗(yàn)證時(shí),驗(yàn)證工作。 對(duì)于具有模塊和PcAnywhere的本地帳戶,身份驗(yàn)證失敗 目前還不知道發(fā)生了什么...

POP3

POP3模塊針對(duì)POP3服務(wù)測(cè)試帳戶。

該模塊有一個(gè)選項(xiàng)MODE。如果未設(shè)置,默認(rèn)行為是檢查服務(wù)器響應(yīng)中的“+”或“ - ”,以查看嘗試是否成功。

如果服務(wù)器在AS / 400中進(jìn)行測(cè)試,則應(yīng)使用該選項(xiàng)執(zhí)行該模塊-m MODE:AS400。這將導(dǎo)致返回的-ERR消息被解析以獲取附加信息。這是基于從以下文檔收集的信息:Enumeration_of_AS400_users_via_pop3.pdf

該模塊支持POP3(110 / tcp)和POP3S(POP3協(xié)議通過TLS / SSL)(995 / tcp)。此外,它還支持POP3 STARTTLS擴(kuò)展,如http://www.faqs.org/rfcs/rfc2595.html中所定義。Medusa將向目標(biāo)服務(wù)器提交“STLS”命令。如果返回正響應(yīng),則會(huì)啟動(dòng)TLS會(huì)話。

PostgreSQL

postgres模塊根據(jù)PostgreSQL服務(wù)來測(cè)試帳戶。

該模塊需要PostgreSQL庫:libpq

該模塊有一個(gè)選項(xiàng)DB。這允許用戶指定目標(biāo)數(shù)據(jù)庫名稱。如果該選項(xiàng)未設(shè)置,默認(rèn)行為是使用template1。

REXEC

REXEC模塊根據(jù)REXEC服務(wù)測(cè)試帳戶。

RDP

RDP模塊根據(jù)Microsoft遠(yuǎn)程桌面協(xié)議(RDP)/終端服務(wù)測(cè)試帳戶。應(yīng)該注意的是,僅適用于運(yùn)行Microsoft 2008及更高版本的目標(biāo)系統(tǒng)。對(duì)Microsoft XP / 2003 / etc的測(cè)試將始終報(bào)告登錄成功。

此模塊需要FreeRDP。pass-the-hash選項(xiàng)也僅在安裝FreeRDP版本1.2或更高版本時(shí)可用。

FreeRDP主分支的預(yù)構(gòu)建二進(jìn)制文件可從https://ci.freerdp.com獲取??捎糜赨buntu,Debian,F(xiàn)edora和OpenSUSE。nightly版本安裝在/ opt / freerdp-nightly中,可以與發(fā)行版的常規(guī)freerdp軟件包并行安裝。如果Medusa在其構(gòu)建過程中檢測(cè)到此版本,則應(yīng)該通過任何其他安裝版本的FreeRDP構(gòu)建該版本。

例如,以下工作適用于2015年11月11日的Kali 2.0:- 訪問:https://ci.freerdp.com/job/freerdp-nightly-binaries/architecture=amd64,distribution=jessie,label=pkg-deb/

下載:freerdp-nightly_1.2.1 + 0?20151104024829.185?1.gbpb83356_amd64.deb

下載:freerdp-nightly-dev_1.2.1 + 0?20151104024829.185?1.gbpb83356_amd64.deb

安裝:dpkg -i freerdp-nightly * -更新運(yùn)行時(shí)路徑:echo / opt / freerdp-nightly / lib / >> /etc/ld.so.conf;ldconfig - 構(gòu)建Medusa:./configure;make

以下示例演示了RDP模塊的多種用途:

使用pass-the-hash(NTLM)登錄嘗試:

medusa -M rdp -m PASS:HASH -h 10.10.10.10 -u Administrator -p 31D78236327B9619B14ED8EC9AB454C1

提供域名的登錄嘗試(默認(rèn)行為是本地登錄):

medusa -M rdp -m DOMAIN:CORPNAME -h 10.10.10.10 -u Administrator -p Password1

RLOGIN

RLOGIN模塊根據(jù)RLOGIN服務(wù)測(cè)試帳戶。

RSH

RSH模塊根據(jù)RSH服務(wù)測(cè)試帳戶。

SMBNT

http://foofus.net/goons/jmk/medusa/medusa-smbnt.html

SMTP-AUTH

用于使用TLS(STARTTLS擴(kuò)展)進(jìn)行SMTP驗(yàn)證的強(qiáng)力模塊。

SMTP-VRFY

SMTP-VRFY模塊用于枚舉哪些帳戶在郵件服務(wù)器上是十分有效。該模塊發(fā)送以下內(nèi)容:

EHLO some_nameVRFY account@domain

模塊期望通過用戶選項(xiàng)(-u / -U / -C)檢查帳戶。應(yīng)該提供域名,如果它是一個(gè)密碼。通過EHLO命令發(fā)送的值可以使用-m EHLO:模塊選項(xiàng)進(jìn)行設(shè)置。默認(rèn)是發(fā)送MEDUSA。

此模塊是在測(cè)試單個(gè)錯(cuò)誤配置的SMTP垃圾郵件過濾器時(shí)編寫的。其他設(shè)備的行為可能不一樣??赡苄枰獙?duì)模塊進(jìn)行某些調(diào)整。

SNMP

SNMP模塊根據(jù)簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議(SNMP)服務(wù)測(cè)試社區(qū)字符串。

該模塊有幾個(gè)選項(xiàng):TIMEOUT,VERSION和ACCESS。默認(rèn)值為2秒,版本1和READ訪問。應(yīng)該注意的是,當(dāng)測(cè)試WRITE功能時(shí),模塊將讀取sysLocation的當(dāng)前值,然后將相同的值寫回系統(tǒng)。

由于SNMP是基于UDP的協(xié)議,因此在發(fā)送和接收傳輸層實(shí)體之間不存在握手。由于這種無連接通信,只有當(dāng)我們知道SNMP服務(wù)存在時(shí),才能發(fā)送正確的社區(qū)字符串,并且服務(wù)器發(fā)送響應(yīng)。所有其他查詢都不會(huì)導(dǎo)致任何響應(yīng)。我們?cè)谶@里使用的方法是最初只發(fā)送我們所有的SNMP GET請(qǐng)求。完成后,我們等待TIMEOUT秒的任何響應(yīng)。如果我們得到任何回應(yīng),我們檢查他們看看哪些public字符串是成功的。如果指定了ACCESS:WRITE,我們檢查每個(gè)先前成功的值的寫訪問權(quán)限??焖俣┝?。

SSH

SSH模塊使用SSHv2對(duì)SSH服務(wù)進(jìn)行測(cè)試。該模塊目前支持強(qiáng)制SSH鍵盤交互和密碼驗(yàn)證模式。

該模塊需要libssh2(www.libssh2.org)。這與libssh(0xbadc0de.be)不同。應(yīng)該注意的是,libssh2庫,因此,Medusa SSH模塊只支持強(qiáng)制服務(wù)器,可以與SSHv2通信。Libssh2不支持v1,它看起來可能永遠(yuǎn)不會(huì)。

該模塊有一個(gè)選項(xiàng),BANNER。如果不明顯,則允許您設(shè)置認(rèn)證測(cè)試期間發(fā)送的客戶端。默認(rèn)值為“SSH-2.0-MEDUSA”。

關(guān)于libssh2的一些注意事項(xiàng)使用庫存libssh2庫,運(yùn)行Medusa時(shí),用戶可能會(huì)遇到掛起的模塊線程。這個(gè)問題是由于libssh2的libssh2_session_startup()并不總是返回值,這是libssh2中掛起的原因。OpenSSH的默認(rèn)行為是僅允許10個(gè)未認(rèn)證的連接,并忽略其他所有內(nèi)容。雖然我們?cè)跍y(cè)試中并不總是運(yùn)行10個(gè)線程,但是我們的線程可能比目標(biāo)清除之前的連接更快地?fù)糁兴鼈?/p>

同時(shí)問題有兩個(gè)方面:

libssh2永遠(yuǎn)等待ssh服務(wù)器用banner回應(yīng)。這使我們的線程永遠(yuǎn)等待,這是一個(gè)打擊。我在/ misc目錄中添加了一個(gè)修補(bǔ)程序到

libssh2,使其計(jì)數(shù)到1000,然后停止等待。這個(gè)小修補(bǔ)程序已經(jīng)提交給libssh2的人,一個(gè)修復(fù)程序?qū)⒂邢M话趯淼陌姹局小?/p>

我們現(xiàn)在循環(huán)訪問libssh2_session_startup()調(diào)用。如果libssh2無法協(xié)商SSH會(huì)話,此功能將失敗。我們給它5張照片通過并在每個(gè)休眠之間設(shè)置一個(gè)用戶可配置的時(shí)間。如果我們?cè)?次嘗試后失敗,我們會(huì)顯示發(fā)生這種情況,并確定未測(cè)試的主機(jī)/用戶/

通行證組合。

**從libssh2 0.18(devel)開始,這個(gè)問題似乎解決了。**

應(yīng)該注意的是,雖然你可以運(yùn)行許多SSH的線程,但并不是越多越好好。當(dāng)您在10個(gè)以上時(shí),您將注意到該模塊會(huì)重試startup()函數(shù)

Subversion(SVN)

SVN模塊根據(jù)Subversion(SVN)服務(wù)來測(cè)試帳戶,該模塊需要安裝svn_client-1庫。這應(yīng)該作為Subversion的一部分安裝。

該模塊有一個(gè)選項(xiàng),BRANCH。這允許用戶指定目標(biāo)SVN URL。例如,svn:// host / branch。如果該選項(xiàng)未設(shè)置,則默認(rèn)行為是使用中繼。

遠(yuǎn)程登錄

TELNET模塊根據(jù)TELNET服務(wù)測(cè)試帳戶。該模塊支持telnet(23)和telnet(992)。

該模塊目前有一個(gè)選項(xiàng)MODE。MODE可以是NORMAL(默認(rèn))或AS400。AS400模式支持基本的AS / 400 tn5250連接。當(dāng)對(duì)AS / 400進(jìn)行測(cè)試時(shí),此方法允許比FTP更具描述性的錯(cuò)誤消息。但是,如果在AS / 400上可用,POP3仍然是更好的暴力選項(xiàng)。

Telnet模塊將輸出到發(fā)現(xiàn)只有密碼提示的日志文件主機(jī)。當(dāng)掃描使用或缺少AAA時(shí),這可能是有用的。

VMware身份驗(yàn)證守護(hù)程序(vmauthd)

VMWAUTHD模塊根據(jù)VMware身份驗(yàn)證守護(hù)程序測(cè)試帳戶。它支持服務(wù)的非SSL和SSL加密安裝。

VNC

VNC模塊根據(jù)VNC服務(wù)測(cè)試帳戶。

該模塊使用RealVNC和UltraVNC開發(fā),支持基本的抗暴力功能。例如,RealVNC允許5次嘗試失敗,然后執(zhí)行10秒延遲。對(duì)于后續(xù)嘗試,延遲加倍。UltraVNC似乎允許6次無效嘗試,然后在每次嘗試之間強(qiáng)制10秒延遲。此模塊嘗試識(shí)別這些情況,并通過調(diào)用sleep()進(jìn)行適當(dāng)?shù)捻憫?yīng)。使用MAXSLEEP參數(shù)強(qiáng)制強(qiáng)制RealVNC時(shí),用戶可設(shè)置休眠限制。一旦達(dá)到此值,模塊將退出。

此模塊支持無密碼和僅密碼身份驗(yàn)證以及UltraVNC MS-Logon(本地/域Windows憑據(jù))用戶名/密碼憑據(jù)。

通用包裝

封裝模塊的目的是允許用戶執(zhí)行任意腳本,同時(shí)利用Medusa管理主機(jī)/用戶/密碼。包裝器目錄中包含兩個(gè)示例腳本。

這是一個(gè)正在進(jìn)行的工作...該模塊目前使用的是不理想的fork()。不知道我是否可以啟動(dòng)一個(gè)線程,并重定向STDIN / STDOUT線程...

該模塊的初始目標(biāo)是使用rdesktop測(cè)試RDP服務(wù)器。rdesktop 1.4.1的修補(bǔ)程序已包含在/ misc / rdesktop目錄中。這擴(kuò)展了從cqure.net的字典修補(bǔ)程序與Medusa包裝器STDIN方法。應(yīng)該注意的是,當(dāng)連接到Windows 2000主機(jī)時(shí),rdesktop似乎不能使用命令行密碼。Windows 2003和XP在測(cè)試過程中工作正常。

以下示例顯示了使用rdesktop與包裝器模塊的

medusa -M wrapper -m TYPE:STDIN -m PROG:rdesktop -m ARGS:"-u %U -p - %H" -H hosts.txt -U users.txt -P passwords.txt

一種方法:用于隱藏rdesktop圖形輸出的一種可能方法:% Xvfb :97 -ac -nolisten tcp &% export DISPLAY=:97

Web表單

用于處理GET / POST請(qǐng)求的基本web表單強(qiáng)力模塊。支持可定制的提交參數(shù)和服務(wù)器響應(yīng)文本。

0x03在哪下載?

medusa-2.2.tar.gzMedusa-gui(由tak和bigmoneyhat開發(fā)的基于Java的GUI)

http://www.foofus.net/jmk/tools/medusa-2.2.tar.gz

https://github.com/Tak31337/medusa-gui

安裝說明:

簡(jiǎn)介

大部分的Medusa都是在基于Linux / Gentoo的系統(tǒng)上編寫和測(cè)試的。雖然已經(jīng)可以在各種操作系統(tǒng)處理問題,但很可能在非Gentoo設(shè)備上出現(xiàn)問題。當(dāng)然,到目前為止有一些問題也可能使Gentoo系統(tǒng)上遺漏的...

Medusa的構(gòu)建相當(dāng)簡(jiǎn)單:“./configure; make; make install”。要充分展現(xiàn)Medusa的強(qiáng)悍,必須滿足一些依賴。下表列出了具有附加依賴關(guān)系的模塊。為了模塊的功能,當(dāng)模塊本身被編譯時(shí),必須在系統(tǒng)上安裝相應(yīng)的頭文件。每個(gè)模塊的文檔中都包含其他模塊特定信息。

依賴主頁模塊備注OpenSSLhttp://www.openssl.orgHTTP,MSSQL,SMBNT,基于SSL的連接

LibSSH2http://www.libssh2.orgSSH提供LibSSH2補(bǔ)丁來解決時(shí)序問題。問題似乎在0.18中得到解決。NCPFSftp://platan.vc.cvut.cz/pub/linux/ncpfsNCP“make install-dev”LIBPQhttp://www.postgresql.orgPostgreSQL的

Subversionhttp://subversion.tigris.orgSVN

afpfs-NGhttp://alexthepuffin.googlepages.com/homeAFP手動(dòng)安裝。Autoconf目前安裝基礎(chǔ)為/ usr(例如/ usr / include / afpfs-ng)

還應(yīng)該注意的是,默認(rèn)情況下并不是所有的模塊都可以被構(gòu)建。尚未充分測(cè)試的不完整模塊可能會(huì)被禁用?!癱onfigure”輸出應(yīng)該標(biāo)識(shí)它將嘗試構(gòu)建哪些模塊。要啟用非默認(rèn)模塊,請(qǐng)使用“--enable-module-MODULE_NAME”配置選項(xiàng)。

Linux的/的Gentoo

此時(shí),Medusa在Portage版本內(nèi)不可用。Medusa的ebuild版本已經(jīng)提交到bugs.gentoo.org,但尚未進(jìn)入Portage版本。同時(shí),所有的ebuild版本都可以通過Portage Overlay使用。例如,Medusa可以通過位于trac.pentoo.ch的Gentoo“pentoo”覆蓋面進(jìn)行安裝。另外,ebuild已被包括在內(nèi),也可以手動(dòng)安裝。

以下ebuilds已包含在此分發(fā)中:

/misc/net-analyzer/medusa-2.1.ebuild

一些基本的Portage Overlay說明:

修改/etc/make.conf

PORTDIR_OVERLAY="/some/directory/"

在PORTDIR_OVERLAY目錄中創(chuàng)建以下內(nèi)容:net-analyzer/medusa

將每個(gè)ebuild和任何附帶的文件放在其相應(yīng)的

PORTDIR_OVERLAY目錄中。 cd進(jìn)入每個(gè)目錄并執(zhí)行:ebuild name_of_ebuild.ebuild digest

修改/etc/portage/package.keywordsnet-analyzer/medusa ~x86

其他系統(tǒng)

Medusa已經(jīng)建成,并在各種默認(rèn)系統(tǒng)安裝上進(jìn)行了基本測(cè)試。下表列出了這些測(cè)試中的一些注釋。

對(duì)比參考鏈接:Medusa和Hydra快速入門手冊(cè):01 - FreeBuf專欄·我的滲透測(cè)試之路

0x04誰創(chuàng)建的Medusa?

Foofus.net的怪人帶來了這個(gè)可怕的軟件(Medusa怪獸)。JoMo-Kun是首席執(zhí)行官,并寫下了Medusa的核心以及其中的幾個(gè)模塊。Foofus為可加載模塊創(chuàng)建了初始設(shè)計(jì)。Fizzgig提供了網(wǎng)絡(luò)代碼,幾個(gè)模塊,可加載模塊的實(shí)現(xiàn)以及修復(fù)了一堆JoMo-Kun的缺陷。pMonkey是一個(gè)瘋狂的模塊編碼魔術(shù)師。最后同樣重要的是,Heidi提供了這個(gè)工具的名字。

0x05嘿嘿嘿?

如果您有關(guān)于此應(yīng)用程序的問題,請(qǐng)隨時(shí)與我們聯(lián)系。直接發(fā)送電子郵件或加入我們的郵件列表foofus-tools。如果發(fā)生故障,請(qǐng)發(fā)送詳細(xì)的錯(cuò)誤報(bào)告。更好的是發(fā)送補(bǔ)丁。雖然我沒有聲稱這個(gè)程序會(huì)做成你想要的,但我們的確想這么做。在我們的評(píng)估過程中,我一直在使用它已經(jīng)好幾年了。希望別人會(huì)有類似的好運(yùn)一起使用Medusa。如果您發(fā)現(xiàn)Medusa有用,并希望給予回饋,請(qǐng)?zhí)峤恍碌哪K,代碼改進(jìn),或者在下一個(gè)DefCon上獻(xiàn)上Foofus.netgoons的啤酒。

From Joe

參考:http://foofus.net/goons/jmk/medusa/medusa-compare.html

Medusa和Hydra快速入門手冊(cè):01 - FreeBuf專欄·我的滲透測(cè)試之路

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容