吳淑泉,楊澤輝
(1.山西省財(cái)政稅務(wù)??茖W(xué)校實(shí)訓(xùn)中心,山西 太原 030024;
?
基于metasploit和armitage整合的圖形化掃描滲透技術(shù)實(shí)現(xiàn)
吳淑泉1,楊澤輝2
(1.山西省財(cái)政稅務(wù)專科學(xué)校實(shí)訓(xùn)中心,山西 太原 030024;
2.山西省財(cái)政稅務(wù)??茖W(xué)校信息系,山西 太原 030024)
摘要:在Kali Linux2.0平臺(tái)的基礎(chǔ)上,實(shí)現(xiàn)了metasploit和armitage的無(wú)縫連接。通過(guò)在Armitage中調(diào)用Metasploit框架所裝載的許多模塊,將原來(lái)metasploit復(fù)雜的命令行掃描滲透模式轉(zhuǎn)換為圖形化模式,且在armitage掃描完成后可根據(jù)掃描結(jié)果自動(dòng)匹配相應(yīng)模塊進(jìn)行滲透,提高了執(zhí)行效率,極大的簡(jiǎn)化了滲透過(guò)程。此外不但可以實(shí)現(xiàn)圖形界面與命令行界面同步顯示,而且可以實(shí)現(xiàn)Tabs區(qū)多個(gè)console實(shí)例隨意切換。
關(guān)鍵詞:metasploit armitage;掃描;滲透;測(cè)試
隨著信息化建設(shè)創(chuàng)新速度的不斷加快,面向網(wǎng)絡(luò)設(shè)備和應(yīng)用服務(wù)器的安全掃描及滲透測(cè)試的需求不斷增加,通過(guò)滲透測(cè)試,可以了解設(shè)備的薄弱環(huán)節(jié)并加以鞏固和修正。從使用者的角度來(lái)看,作為安全人員來(lái)使用,各種安全團(tuán)隊(duì)可以利用掃描滲透 協(xié)同工作并在最終的安全報(bào)表中將結(jié)果匯總,它提供了真正的安全風(fēng)險(xiǎn)信息和有效的安全防護(hù)評(píng)估,有助預(yù)防數(shù)據(jù)泄露;作為黑客來(lái)使用,可以實(shí)現(xiàn)網(wǎng)絡(luò)掃描及滲透并控制網(wǎng)絡(luò)設(shè)備和計(jì)算機(jī)。因此開(kāi)源的掃描滲透測(cè)試特別是圖形化界面的開(kāi)發(fā)應(yīng)用在國(guó)內(nèi)具有良好的前景及市場(chǎng)。
1Metasploit框架介紹及整體架構(gòu)
Metasploit是一款免費(fèi)的開(kāi)源滲透測(cè)試軟件,由于其在漏洞掃描、管理以及滲透測(cè)試、評(píng)估等眾多功能的發(fā)揮和使用,極大的減輕了安全人員的工作量。Metasploit在世界black hat會(huì)議上對(duì)該項(xiàng)目的公布及滲透演示,更是眾多安全人員甚至黑客的關(guān)注和使用。
Metasploit的整體框架結(jié)構(gòu)采用了模塊化的設(shè)計(jì),主要分為基礎(chǔ)庫(kù)文件、接口、模塊及插件四大部分。基礎(chǔ)庫(kù)文件包括Ruby extension、framework-core和framework-base[1]三部分,主要提供了核心框架和一些基礎(chǔ)功能的支持;接口主要包括msfconsole、msfcli、msfgui等接口;模塊通過(guò)框架所裝載調(diào)用并提供核心的滲透測(cè)試功能;插件不但能夠擴(kuò)充框架的功能,還可以調(diào)用外部安全工具,如OpenVAS、Nessus、nexpose等漏洞掃描器來(lái)提高掃描效率。
實(shí)驗(yàn)中我們已將metasploit升級(jí)到了2016年1月4日的新版,共包含1 517個(gè)exploit溢出漏洞、 875個(gè)auxiliary輔助模塊 257post后滲透攻擊模塊[2]等,執(zhí)行db_status可以看到數(shù)據(jù)庫(kù)msf已連接成功,所有這些模塊都可以在armitage中調(diào)用,實(shí)現(xiàn)了數(shù)據(jù)模塊共享。
圖1 metasploit framework整體架構(gòu)
圖2 metasploit啟動(dòng)及數(shù)據(jù)庫(kù)狀態(tài)檢測(cè)
2Metasploit與Armitage整合技術(shù)實(shí)現(xiàn)
Metasploit也有自己的GUI界面,但是功能比較簡(jiǎn)單且部分功能主要提供給metasploit pro專業(yè)付費(fèi)版用戶使用,因此msfconsole模式成為其最常用的接口[3],可是由于其命令繁多而且參數(shù)復(fù)雜對(duì)部分人的使用帶來(lái)一定困難。
Armitage是針對(duì)metaspolit而開(kāi)發(fā)的一款可視化圖形工具,讓其使用上更加直觀便利且自動(dòng)滲透功能強(qiáng)大。調(diào)用Armitage需要具備下列條件:Metasploit Framework、Postgresql數(shù)據(jù)庫(kù)、Nmap以及Oracle的java 1.7版本。為了實(shí)現(xiàn)快速調(diào)用Armitage,建議使用基于滲透測(cè)試的linux發(fā)行版本如Kali Linux或Pentoo Linux,因?yàn)檫@樣的發(fā)行版本在系統(tǒng)安裝
好后已經(jīng)集成了調(diào)用Armitage所具備的條件,這極大的簡(jiǎn)化了安裝及配置的步驟,可以讓使用者用更少的時(shí)間安裝和配置系統(tǒng),而可以有更多的時(shí)間來(lái)掃描和滲透測(cè)試并最終提高網(wǎng)絡(luò)安全。本文所做研究都在基于Kali Linux2.0的平臺(tái)上實(shí)現(xiàn)。
在kali 2.0中啟動(dòng)Metasploit和armitage(支持?jǐn)?shù)據(jù)庫(kù)調(diào)用)過(guò)程:
# /etc/init.d/postgresql start//啟動(dòng)postgresql數(shù)據(jù)庫(kù)
# update-rc.d postgresql enable//增加開(kāi)機(jī)自動(dòng)啟動(dòng)
# msfconsole//運(yùn)行msf的console模式
# msfdb init[4]//初始化MSF數(shù)據(jù)庫(kù)
# db_status//在msf中查看數(shù)據(jù)庫(kù)連接狀態(tài)
#msfrpcd -U msf -P test -f -S -a 127.0.0.1//啟動(dòng)msfrpcd服務(wù)并在55553端口監(jiān)聽(tīng)
# armitage//啟動(dòng)armitage
Armitage啟動(dòng)時(shí)要確保msfrpcd服務(wù)首先啟動(dòng)并在55553端口監(jiān)聽(tīng),同時(shí)會(huì)連接到Metasploit 數(shù)據(jù)庫(kù)并自動(dòng)查找其數(shù)據(jù)庫(kù)配置,該文件定位于/usr/share/metasploit-framework/config/database.yml。
圖3 基于metasploit和armitage整合的整體框架圖
3基于Metasploit的console模式滲透測(cè)試
實(shí)驗(yàn)中以ip為192.168.119.51的windows xp為靶機(jī),192.168.119.50的 Kali Linux2.0為攻擊機(jī)作為測(cè)試,console模式的好處是可以一步一步輸入命令并觀察執(zhí)行效果,但是操作比較復(fù)雜。
# /usr/share/metasploit-framework/msfconsole//啟動(dòng)console模式
# db_namp -sT -sU -O -A 192.168.119.51//對(duì)靶機(jī)進(jìn)行nmap掃描
# search ms08-067//搜索ms08_067漏洞模塊裝載位置
# use exploit/windows/smb/ms08_067_netapi//調(diào)用ms08_067溢出模塊
# show options//查看設(shè)置選項(xiàng)
# set RHOST 192.168.119.51//設(shè)置目標(biāo)主機(jī)ip
圖4 基于Metasploit的console模式滲透測(cè)試截圖
# set LHOST 192.168.119.50//設(shè)置本地主機(jī)ip
# set LPORT 443//設(shè)置本地監(jiān)聽(tīng)端口
# show targets//查看攻擊目標(biāo)系統(tǒng)類型
# set target 10//設(shè)定目標(biāo)機(jī)器為windows xp simplified
# exploit//執(zhí)行滲透
# shell//獲取目標(biāo)機(jī)shell權(quán)限
總體來(lái)說(shuō),metasploit分為掃描-查找漏洞-調(diào)用模塊-滲透溢出-取得權(quán)限五個(gè)步驟來(lái)實(shí)現(xiàn)目標(biāo)滲透。
4基于Armitage和Metasploit整合的GUI圖形化模式滲透測(cè)試
由下圖看出,該模式將滲透過(guò)程簡(jiǎn)化為了掃描-自動(dòng)滲透-取得權(quán)限三個(gè)步驟來(lái)實(shí)現(xiàn),首先選擇Hosts選項(xiàng)執(zhí)行掃描,執(zhí)行完掃描后目標(biāo)主機(jī)會(huì)自動(dòng)添加到targets區(qū)域,然后
圖5 Armitage圖形化界面及滲透測(cè)試捕獲主機(jī)截圖
選中目標(biāo)機(jī)后執(zhí)行Attacks-Find attacks就會(huì)啟動(dòng)自動(dòng)掃描程序找出目標(biāo)機(jī)的漏洞,最后執(zhí)行exploit即可,圖中帶抓手圖標(biāo)的即為已滲透成功的目標(biāo)機(jī)。同時(shí)在下方Tabs區(qū)會(huì)同步顯示命令行執(zhí)行效果。此外hosts主機(jī)選項(xiàng)還支持以 Burp Session XML、Nessus XML (v1 and v2)、NeXpose XML Report、Nmap XML、Retina XML等格式的文件導(dǎo)入[5]。
5兩種模式的實(shí)驗(yàn)比較及差異對(duì)比
首先它可視化你的攻擊目標(biāo),其次它的操作者圍繞著Metasploit控制臺(tái)展開(kāi),它通過(guò)標(biāo)簽tabs來(lái)管理最終命令行的執(zhí)行效果,由于支持多標(biāo)簽操作,因此也可以同時(shí)執(zhí)行多個(gè)Msfconsle和session進(jìn)程會(huì)話,此外它結(jié)合Metasploit已知的exploit來(lái)針對(duì)存在的漏洞進(jìn)行自動(dòng)化攻擊。使用直觀的Armitage圖形界面,無(wú)需復(fù)雜的命令行即可調(diào)用和執(zhí)行各種復(fù)雜的滲透測(cè)試。同時(shí)安全人員還可在很短的時(shí)間內(nèi)改變被滲透測(cè)試的目標(biāo)及范圍,并即時(shí)將其反映到所有測(cè)試中。
Armitage的最大好處是可以運(yùn)行模塊對(duì)多主機(jī)進(jìn)行滲透測(cè)試,不但可以直觀的在target區(qū)以圖形界面顯示結(jié)果,而且可以在tabs區(qū)以多個(gè)tab標(biāo)簽顯示每個(gè)命令的運(yùn)行效果,既有圖形效果,還有命令運(yùn)行提示且能夠集中到一個(gè)整體界面中并隨意切換,這是Metasploit做不到的。
6結(jié)束語(yǔ)
通過(guò)Metasploit和Armitage兩種免費(fèi)開(kāi)源軟件的整合,實(shí)現(xiàn)了由復(fù)雜命令行的通用console模式向操作簡(jiǎn)單的圖形化GUI模式轉(zhuǎn)變,同時(shí)結(jié)合Modules、Targets、Tabs區(qū)域的組合,還可以實(shí)現(xiàn)圖形和命令的同步顯示,此外還可以執(zhí)行多個(gè)console實(shí)例,通過(guò)兩種模式的實(shí)驗(yàn)將滲透測(cè)試過(guò)程由原來(lái)的五個(gè)步驟簡(jiǎn)化為了三個(gè)步驟。本文中我們只是使用exploit模塊下的ms08_067_netapi漏洞作為實(shí)驗(yàn),后續(xù)還有auxiliay、payload、post[6]等多個(gè)模塊下的多個(gè)實(shí)例需要我們?nèi)ミM(jìn)一步的研究和實(shí)驗(yàn)。
參考文獻(xiàn)
[1]孟江橋,李愛(ài)平.基于Metasploit加載Nessus的漏洞掃描技術(shù)實(shí)現(xiàn)[J].信息網(wǎng)絡(luò)安全,2012(8):185-187.
[2]趙北庚.Metasploit滲透測(cè)試基本流程研究[J].信息系統(tǒng)工程,2015(4):122.
[3]嚴(yán)俊龍.基于Metasploit框架自動(dòng)化滲透測(cè)試研究[J].信息網(wǎng)絡(luò)安全,2013(2):53-56.
[4]Aharoni M.Using Kali Linux/Metasploit Framework[EB/OL].http://docs.kali.org/general-use/starting-metasploit-framework-in-kali,2016-01-26.
[5]Mudge R.Importing Hosts[EB/OL].http://www.fastandeasyhacking.com/manual,2016-01-26.
[6]魏占禎,高駿濤,劉倩,等.基于Metasploit下的瀏覽器滲透攻擊[J].北京電子科技學(xué)院學(xué)報(bào),2015(6):16-21.
The Implementation of Graphical Scanning and Penetration Technology Based on the Integration of Metasploit and Armitage
Wu Shuquan1, Yang Zehui2
(1.TrainingCenter,ShanxiFinance&TaxationCollege,TaiyuanShanxi030024,China;2.InformationDepartment,ShanxiFinance&TaxationCollege,TaiyuanShanxi030024,China)
Abstract:Based on the Kali Linux2.0 platform, the article achieves a seamless connection between metasploit and armitage. By using most of the metasploit framework modules in armitage, it changes the original metasploit’s complex command-line mode to the graphical mode which can automatically match the appropriate modules for penetration according to the scan results. Finally the paper improves the efficiency and greatly simplifies the penetration process. Furthermore, the synchronized display between the graphical interface and the command-line interface can be archived, and the optionally switching between the multiple consoles of the tabs can be archived, too.
Key words:metasploit; armitage; scan; penetration; test
收稿日期:2016-03-07
作者簡(jiǎn)介:吳淑泉(1978- ),男,山西人,工程師,大學(xué)本科,研究方向:電教實(shí)驗(yàn)、計(jì)算機(jī)網(wǎng)絡(luò)。
文章編號(hào):1674- 4578(2016)03- 0058- 03
中圖分類號(hào):TP393.08
文獻(xiàn)標(biāo)識(shí)碼:A