高安邦
一、引言
隨著信息技術(shù)的發(fā)展,互聯(lián)網(wǎng)已經(jīng)滲透到我們社會(huì)生活的方方面面?;ヂ?lián)網(wǎng)在給我們的工作、生活帶來便利的同時(shí),網(wǎng)絡(luò)空間安全的形勢也越來越嚴(yán)峻。尤其是最近幾年,網(wǎng)絡(luò)安全事件層出不窮,例如2013年的斯諾登事件、2017年的Wannacry勒索病毒,等等。這些網(wǎng)絡(luò)安全事件給我們的隱私安全、社會(huì)安全帶來了極大的威脅,同時(shí)也給我們的網(wǎng)絡(luò)空間安全教育敲響了警鐘。習(xí)近平總書記在2018年4月21日全國網(wǎng)絡(luò)安全和信息化工作會(huì)議上指出,沒有網(wǎng)絡(luò)安全就沒有國家安全,就沒有經(jīng)濟(jì)社會(huì)穩(wěn)定運(yùn)行,廣大人民群眾利益也難以得到保障。2018年4月,教育部公布最新《學(xué)位授予和人才培養(yǎng)學(xué)科目錄》增設(shè)“網(wǎng)絡(luò)空間安全”一級(jí)學(xué)科。在此基礎(chǔ)上,很多大學(xué)增設(shè)了網(wǎng)絡(luò)空間安全學(xué)院,網(wǎng)絡(luò)空間安全人才培養(yǎng)體系逐步完善,網(wǎng)絡(luò)安全人才培養(yǎng)方興未艾。
中職網(wǎng)絡(luò)安全教育起步晚,基礎(chǔ)薄弱,面臨著教學(xué)內(nèi)容繁復(fù)、實(shí)驗(yàn)條件缺乏等現(xiàn)實(shí)問題。中職網(wǎng)絡(luò)攻防技術(shù)課程的主要內(nèi)容涵蓋:操作系統(tǒng)滲透測試及加固(Windows操作系統(tǒng)滲透測試及加固、Linux操作系統(tǒng)滲透測試及加固等)、Web應(yīng)用滲透測試及加固(SQL注入、命令注入、文件上傳等漏洞滲透測試及加固)、BT5和KaliLinux系統(tǒng)常見工具的使用等。在課程實(shí)訓(xùn)過程中,學(xué)生需要使用到WindowsXP、Windows2003、Windows7、Windows2008R2等Windows系列的操作系統(tǒng),以及BackTrack5、Kali Linux、ubuntu、CentOS等Linux系列的操作系統(tǒng)。
相比于網(wǎng)絡(luò)攻防技術(shù)課程對(duì)實(shí)訓(xùn)環(huán)境的較高要求,我們當(dāng)前的單機(jī)實(shí)訓(xùn)方式已經(jīng)顯露出了很多缺陷和不足。然而,要購買公司全套安全產(chǎn)品建立網(wǎng)絡(luò)安全實(shí)訓(xùn)室花費(fèi)巨大(100萬元左右)。基于以上原因,我們引入Proxmox VE(下文簡稱PVE)開源云計(jì)算平臺(tái),利用學(xué)校閑置計(jì)算資源,為網(wǎng)絡(luò)攻防技術(shù)課程提供虛擬化實(shí)訓(xùn)環(huán)境,并探索該實(shí)訓(xùn)環(huán)境在網(wǎng)絡(luò)攻防技術(shù)課程實(shí)訓(xùn)中的應(yīng)用模式和應(yīng)用策略,進(jìn)而評(píng)價(jià)這種應(yīng)用模式的效用,更好地變革我們的課程和實(shí)訓(xùn)模式。
本文從系統(tǒng)架構(gòu)設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)、系統(tǒng)應(yīng)用實(shí)踐等角度分析了使用開源云計(jì)算系統(tǒng)ProxmoxVE搭建中職網(wǎng)絡(luò)攻防技術(shù)課程云實(shí)訓(xùn)平臺(tái)的必要性、可行性和效用性,對(duì)于解決當(dāng)前中職學(xué)校網(wǎng)絡(luò)攻防技術(shù)課程實(shí)訓(xùn)環(huán)境缺乏提供了一種可供借鑒的解決方案。
二、概念界定
1.PVE
PVE的全稱為Proxmox Virtual Environment。它是一款完全開源的虛擬化和云計(jì)算平臺(tái),基于Debian Linux開發(fā),涵蓋了基于內(nèi)核的虛擬機(jī)(KVM)和基于容器的虛擬化(LXC)兩種虛擬化技術(shù)。PVE采用Web界面進(jìn)行管理,不需要額外安裝客戶端程序就能夠?qū)μ摂M化環(huán)境進(jìn)行很好的管理。它具有以下優(yōu)勢:開源軟件,無需購買;基于Linux內(nèi)核,運(yùn)行高效;支持多種硬件平臺(tái);快速安裝和易于使用;基于Web管理界面;有社區(qū)支持;管理成本低,部署簡單等特點(diǎn)。PVE在生產(chǎn)環(huán)境下的使用和部署絲毫不遜于VMware公司的VMware vSphere。
2.云實(shí)訓(xùn)
云實(shí)訓(xùn),顧名思義是在云端開展實(shí)訓(xùn),即通過云計(jì)算技術(shù)支持的環(huán)境進(jìn)行實(shí)訓(xùn)學(xué)習(xí)。換句話說這是一種采用虛擬化和云計(jì)算技術(shù)為基礎(chǔ)搭建起來的以支持學(xué)生學(xué)習(xí)與實(shí)訓(xùn)為目的的虛擬實(shí)訓(xùn)環(huán)境。相較于傳統(tǒng)機(jī)房單機(jī)的實(shí)訓(xùn)環(huán)境,云實(shí)訓(xùn)只需要在有網(wǎng)絡(luò)連接的環(huán)境下,登錄瀏覽器就可以進(jìn)入實(shí)訓(xùn)環(huán)境,因而具有安全便捷、突破時(shí)空等突出優(yōu)點(diǎn)。
三、云平臺(tái)系統(tǒng)架構(gòu)
1.系統(tǒng)網(wǎng)絡(luò)拓?fù)湓O(shè)計(jì)
我們采用3臺(tái)普通臺(tái)式機(jī)、1臺(tái)惠普服務(wù)器以及1臺(tái)千兆交換機(jī)完成整個(gè)系統(tǒng)的搭建,其網(wǎng)絡(luò)拓?fù)鋱D如圖1所示。
其中3臺(tái)主機(jī)安裝PVE系統(tǒng)作為PVE服務(wù)器,構(gòu)成PVE集群。惠普服務(wù)器安裝Centos系統(tǒng)作為NFS服務(wù)器為PVE提供共享存儲(chǔ),用于存放虛擬機(jī)文件。1臺(tái)物理交換機(jī)用于連接主機(jī)和校園網(wǎng),提供在校園網(wǎng)環(huán)境下對(duì)云實(shí)訓(xùn)平臺(tái)的訪問和管理。虛擬交換機(jī)是PVE集群提供的用于在虛擬主機(jī)(包括KVM和LXC主機(jī))之間提供通信連接的虛擬設(shè)備。值得一提的是,我們可以通過對(duì)虛擬交換機(jī)的設(shè)置決定一臺(tái)虛擬機(jī)是否可以跟校園網(wǎng)直接通信。該功能能夠?yàn)槲覀兲峁┮粋€(gè)隔離的實(shí)訓(xùn)環(huán)境,方便我們做一些具有破壞性的攻防實(shí)驗(yàn),相關(guān)設(shè)備的配置如表1所示。
2.系統(tǒng)IP規(guī)劃
本系統(tǒng)中,3臺(tái)PVE服務(wù)器和1臺(tái)NFS存儲(chǔ)服務(wù)器的IP地址采用校園統(tǒng)一分配的IP地址,以保證能夠跟校園網(wǎng)互通,方便學(xué)生在校園任意機(jī)房都可以訪問云實(shí)訓(xùn)平臺(tái)。KVM虛擬機(jī)和LXC容器采用單獨(dú)的IP地址規(guī)劃,擬采用172.16.1.0/24(共計(jì)254個(gè)IP地址,并配置一臺(tái)DHCP服務(wù)器用于分配IP地址,后期如果IP地址不夠,可重新規(guī)劃),具體的IP地址規(guī)劃如表2所示。
四、攻擊機(jī)和靶機(jī)設(shè)置
1.攻擊機(jī)配置
基于PVE的云實(shí)訓(xùn)平臺(tái)搭建完成之后,為了開展網(wǎng)絡(luò)攻防實(shí)驗(yàn),我們還需要準(zhǔn)備好攻擊機(jī)和靶機(jī)的模板。為了降低大量虛擬機(jī)運(yùn)行對(duì)資源的消耗,我們的攻擊機(jī)以PVE官網(wǎng)下載的Debian10的LXC鏡像為基礎(chǔ),自行添加滲透測試工具?;贒ebian10的LXC鏡像僅有225MB大小,創(chuàng)建虛擬機(jī)之后僅需分配512MB的內(nèi)存就可以流暢運(yùn)行。此外,LXC虛擬機(jī)啟動(dòng)速度特別快,僅需幾秒鐘的時(shí)間就可以完成啟動(dòng),大大降低了學(xué)生開啟虛擬機(jī)所需要的等待時(shí)間。
網(wǎng)絡(luò)攻防實(shí)驗(yàn)中可以選用的工具特別多,我們選取了其中比較經(jīng)典的幾款軟件安裝到Debian虛擬機(jī),這些軟件包括:nmap、p0f、arping、fping、hping3、ncat、nikto、sqlmap、crunch、medusa、ncrack、hydra、metasploit、weevely等。
攻擊機(jī)配置完成之后,我們將該虛擬機(jī)轉(zhuǎn)化成模板,然后使用shell腳本批量克隆略大于學(xué)生數(shù)量的虛擬機(jī),使用的代碼如表3所示。
另外,我們還可以下載專門的滲透測試操作系統(tǒng),通過創(chuàng)建KVM虛擬機(jī)的方式制備攻擊機(jī)模板,這些系統(tǒng)包括:KaliLinux、BT5、BlackArch、ParrotOS等。
2.靶機(jī)配置
網(wǎng)絡(luò)攻防技術(shù)云平臺(tái)的靶機(jī)資源主要有兩種類型:Windows虛擬機(jī)和Linux虛擬機(jī)。Windows虛擬機(jī)的制備相對(duì)比較麻煩,Windows的系統(tǒng)版本包括Windows2000、WindowsXP、Windows2003和Windows7。這些系統(tǒng)安裝完成之后需要關(guān)閉防火墻,無需安裝安全補(bǔ)丁。此外,我們還要人為安裝部署一些漏洞軟件和網(wǎng)站。例如,我們在WindowsXP虛擬機(jī)上安裝了office、flash、phpstudy、IE6、Serv-U等具有已知漏洞的軟件,部署了DVWA、pikachu、wordpress、joomla等帶有已知漏洞的滲透測試網(wǎng)站。
對(duì)于Linux系統(tǒng),我們選用了業(yè)界比較出名的Metasploitable2作為滲透測試平臺(tái),該平臺(tái)集成了弱口令、Samba、vsFTpd、PHP CGI、Druby等軟件漏洞,以及幾個(gè)Web滲透測試網(wǎng)站,如Mutillidae、DVWA、TWiki等。這里需要特別說明的是,Metasploitable2是以VMWare虛擬機(jī)的方式發(fā)行的,我們從網(wǎng)上下載打包文件,導(dǎo)入VMWare軟件即可直接使用。但是如果需要將該文件導(dǎo)入PVE平臺(tái),我們首先需要從VMWare導(dǎo)出該虛擬機(jī)的OVF格式文件,然后使用UltraISO制備出該文件的iso文件,再利用PVE的web界面上傳到PVE服務(wù)器,并最終使用qmimportovf命令還原成PVE平臺(tái)的虛擬機(jī)。
五、云實(shí)訓(xùn)平臺(tái)的應(yīng)用
在完成了PVE云實(shí)訓(xùn)平臺(tái)的搭建之后,我們可以使用自己創(chuàng)建的攻擊機(jī)和靶機(jī)完成相應(yīng)的滲透測試實(shí)驗(yàn)。PVE云實(shí)訓(xùn)平臺(tái)除了可以支持單個(gè)學(xué)生自主訓(xùn)練網(wǎng)絡(luò)攻防實(shí)驗(yàn)之外,還可以支持奪旗(CTF)、混戰(zhàn)等相關(guān)實(shí)驗(yàn)。通過多種形式的攻防實(shí)訓(xùn),不僅為學(xué)生提供了接近真實(shí)情形的訓(xùn)練環(huán)境,同時(shí)也增加了實(shí)訓(xùn)課程的趣味性。
測試發(fā)現(xiàn),在同時(shí)提供100臺(tái)Linux攻擊機(jī)、100臺(tái)WindowsXP靶機(jī)的實(shí)戰(zhàn)場景下,PVE服務(wù)器集群的資源消耗分別為:CPU(41%)、內(nèi)存(45%)、存儲(chǔ)(6%)。其中100臺(tái)攻擊機(jī)使用的是LXC模板,每臺(tái)給定內(nèi)存為512MB,經(jīng)測試可以流暢使用;100臺(tái)WindowsXP虛擬機(jī)給定內(nèi)存也是512MB,由于是作為靶機(jī),只需要正常開機(jī)就可以了,不需要進(jìn)行操作。因此,本云實(shí)訓(xùn)平臺(tái)不僅可以滿足兩個(gè)班(每班50人)同時(shí)上課,還具有很大的擴(kuò)展空間。經(jīng)測試發(fā)現(xiàn),本云實(shí)訓(xùn)平臺(tái)能夠有效支持學(xué)生開展網(wǎng)絡(luò)攻防技術(shù)課程的相關(guān)實(shí)驗(yàn)條件,滿足學(xué)生單兵作戰(zhàn)、奪旗、混戰(zhàn)等多種實(shí)訓(xùn)場景,其可行性、適用性和效用性符合預(yù)期。
責(zé)任編輯 何麗華