◆宋 超 王克壘
(無錫旅游商貿(mào)高等職業(yè)技術(shù)學(xué)校 江蘇 214000)
網(wǎng)絡(luò)安全是當(dāng)前社會的熱點(diǎn),培養(yǎng)安全意識要從小、從學(xué)校抓起,2019 年“網(wǎng)絡(luò)信息安全”首次成為全國中職學(xué)校的新增專業(yè),網(wǎng)絡(luò)靶機(jī)是一類的帶有漏洞的主機(jī)系統(tǒng),它是網(wǎng)絡(luò)安全專業(yè)學(xué)生很好的實(shí)踐平臺,能幫助學(xué)生認(rèn)識信息收集、漏洞檢測,入侵系統(tǒng)、后門植入等黑客攻擊的整個(gè)流程,提高學(xué)生對網(wǎng)絡(luò)安全知識內(nèi)容的理解程度,然而如何搭建一個(gè)網(wǎng)絡(luò)靶機(jī)的環(huán)境,卻是擺在廣大中職網(wǎng)絡(luò)安全課程任課教師面前的一道難題。
ExploitDB 是一個(gè)面向全世界黑客的漏洞提交平臺https://www.exploit-db.com/,該平臺會公布最新漏洞的相關(guān)情況,這些可以幫助企業(yè)改善公司的安全狀況,同時(shí)也以幫助安全研究者和滲透測試工程師更好地進(jìn)行安全測試工作。
本文以Linux 系統(tǒng)中常見的proftp 服務(wù)為例,闡述了如何從ExploitDB 網(wǎng)站上下載并配置proftp 服務(wù)的漏洞版本,搭建一個(gè)網(wǎng)絡(luò)靶機(jī)的環(huán)境,最后使用攻擊機(jī)kali Linux 成功入侵, 從而為中職安全課程網(wǎng)絡(luò)靶機(jī)的搭建提供一條思路。
proftp 是一個(gè)Linux 平臺上文件傳輸服務(wù),目前最新版本為1.3.7。Proftp 作為歷史悠久且廣泛應(yīng)用的一種服務(wù),在其使用過程中由于其版本設(shè)計(jì)缺陷出現(xiàn)了很多問題,如2019 年7 月爆出的CVE-2019-12815 漏洞影響了100 多萬臺服務(wù)器,如2016 年 網(wǎng)上爆出的ProFtpd<=1.3.5 mod_copy 未授權(quán)文件復(fù)制漏洞以及2015 年 proftpd v1.3.5a 堆溢出漏洞等。以下以 Proftp 1.3.3 backdoored 漏洞為例介紹如何從exlpoit-db 網(wǎng)站下載、配置漏洞版本搭建網(wǎng)絡(luò)靶機(jī)。
(1)在exlpoit-db 網(wǎng)站上下載環(huán)境和攻擊模塊
進(jìn)入www.exploit-db.com 網(wǎng)站在search 輸入proftp 如下圖所示,其中D 表示攻擊機(jī)(kali、backtrack5)可使用的攻擊模塊、A 顯示的是網(wǎng)絡(luò)靶機(jī)(Linux 或windwows)使用的漏洞版本,分別點(diǎn)擊下載在電腦出現(xiàn)兩個(gè)文件 16921.rb ,backdoored_proftpd-1.3.3c.
tar.gz,其中是前者是攻擊機(jī)使用的ruby 滲透模塊,后者是網(wǎng)絡(luò)靶機(jī)需要安裝的漏洞服務(wù)的壓縮包文件(圖1)。
圖1 proftp 服務(wù)漏洞搜索
(2)在網(wǎng)絡(luò)靶機(jī)中安裝和配置有漏洞的proftp 服務(wù)
在Vmware 中打開一臺CentOS6.0 的虛擬機(jī),以此作為網(wǎng)絡(luò)靶機(jī),將帶有漏洞的
proftp 服務(wù)壓縮包在CentOS6.0 系統(tǒng)中解壓指令如下:
[root@localhost] #tar -xzvf backdoor-proftped-1.3.3(壓縮包在桌面),
接著設(shè)置proftp 的安裝目錄:[root@localhost] #./configure --prefix = /root/proftp
由于在CentOS 中要安裝proftp 服務(wù)就必須下載安裝GCC 編輯器、編譯、安裝如下:
[root@localhost]#yum install gcc*&& make &&make install
在 proftp 服務(wù)的安裝目錄中修改 proftp 的配置文件:[root@localhost etc]#vi proftpd.conf 將文件30 行 Group 后對應(yīng)的值改成nobody(系統(tǒng)中沒有設(shè)定ftp 服務(wù)用戶組所以配置文件設(shè)置成nobody),運(yùn)行proftp 軟件并查看端口如下:
[root@localhost backdoored_proftpd-1.3.3c]# ./proftpd &&netstat -anlt |grep 2121 端口是ftp 默認(rèn)端口,回顯結(jié)果為listen。
(3)在攻擊機(jī)加載漏洞模塊設(shè)置參數(shù)進(jìn)行攻擊
在Vmware 中打開一臺Kali Linux 或BackTrack5(Kali Lin ux 或BackTrack5 是著名的網(wǎng)絡(luò)滲透集成工具內(nèi)含metasploit),將16921.rb 放入kali 的/usr/share/metasploit-framework/exploits/mo dules/unix/ftp 的目錄下(此目錄是metsploit 中存放攻擊模塊的默認(rèn)位置),在Linux 中輸入msfconsole 進(jìn)入metasploit,查找并利用16921.rb 指令:
msf > use exploit/unix/ftp/16921,輸入 show options 這時(shí)可以看到這個(gè)模塊的參數(shù)只有設(shè)置RHOST 一項(xiàng),即只需設(shè)置網(wǎng)絡(luò)靶機(jī)的地址,值得注意的是網(wǎng)絡(luò)靶機(jī)和滲透機(jī)必須相通,set rhost網(wǎng)絡(luò)靶機(jī)地址后exploit 攻擊,稍等片刻之后輸入id 就會出現(xiàn)如下代碼:
uid=0(root)gid=0(root)groups=0(root),99(nobody)context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
這時(shí)已經(jīng)成功入侵網(wǎng)絡(luò)靶機(jī)并獲得了最高權(quán)限,此外為了保證入侵的成功可以嘗試不同的 payloads 即攻擊載荷,比如cmd/unix/bind_perl、cmd/unix/reverse_perl 等。
我們對kali 攻擊機(jī)exploit 指令之后進(jìn)行抓包,在wireshark中顯示如圖2:
圖2 Wireshark 抓包顯示
從圖中可以看出攻擊機(jī)首先ftp 連接網(wǎng)絡(luò)靶機(jī),靶機(jī)則回顯ftp 服務(wù)的版本信息1.3.3c,之后攻擊機(jī)發(fā)送了一段指令“HELP ACIBITCHEZ”給靶機(jī),而靶機(jī)回復(fù)如下代碼:
在代碼中靶機(jī)會反彈一個(gè)4444 端口給攻擊機(jī),攻擊機(jī)通過此端口獲得了靶機(jī)的shell 權(quán)限??梢姟癏ELP ACIBITCHEZ”是預(yù)先植入到proftp 中的后門指令。
以上本文介紹了如何從exlpoit-db 網(wǎng)站下載漏洞環(huán)境、以proftp 后門漏洞為例部署了網(wǎng)絡(luò)靶機(jī),介紹了黑客入侵的全過程,最后分析了proftp 后門漏洞產(chǎn)生的原理??傊?,部署網(wǎng)絡(luò)靶機(jī)在中職網(wǎng)絡(luò)安全課程實(shí)施中是一項(xiàng)富有挑戰(zhàn)的事。