◆汪亞飛
(佛山市順德區(qū)勒流職業(yè)技術(shù)學(xué)校 廣東 528322)
近些年,網(wǎng)絡(luò)成為了信息建設(shè)的基礎(chǔ)設(shè)施。整個(gè)社會對網(wǎng)絡(luò)的依賴越來越高,而網(wǎng)絡(luò)安全問題卻日益嚴(yán)重,對網(wǎng)絡(luò)安全人才的需求日益增加。筆者在長期實(shí)訓(xùn)教學(xué)和競賽輔導(dǎo)的過程中,通過學(xué)習(xí)、總結(jié)和反思,發(fā)現(xiàn)利用開源的虛擬化技術(shù)搭建CTF 環(huán)境的方式,可以為中職學(xué)校的學(xué)生提供低成本的、能夠模擬真實(shí)網(wǎng)絡(luò)攻防的、并且可以高度可定制的實(shí)訓(xùn)環(huán)境,進(jìn)而解決網(wǎng)絡(luò)信息安全教學(xué)中面臨的實(shí)訓(xùn)設(shè)備不足、實(shí)訓(xùn)開出率不高的難題。
2.1 使用CTF 搭建實(shí)訓(xùn)室的功能框架,設(shè)計(jì)靶機(jī)
CTF,Capture The Flag,中文名“奪旗賽”,它通過參賽隊(duì)伍之間的攻防對抗、程序分析等形式,率先從主辦方給出的比賽環(huán)境中得到一串具有一定格式的字符串或其他內(nèi)容,并將結(jié)果提交給主辦方的一方隊(duì)伍,會奪得分?jǐn)?shù)。CTF 是網(wǎng)絡(luò)安全技術(shù)人員之間進(jìn)行的一種比賽,它的比賽內(nèi)容主要是網(wǎng)絡(luò)攻防。CTF 起源于1996年DEFCON全球黑客大會。CTF 最初的設(shè)想是用CTF 替代之前黑客們之間為了進(jìn)行技術(shù)比拼而發(fā)起的真實(shí)攻擊。CTF 的比賽形式和比賽內(nèi)容具備很明顯的黑客精神,是黑客文化的一種體現(xiàn)。目前CTF 受到了網(wǎng)絡(luò)安全行業(yè)、高校網(wǎng)絡(luò)安全專業(yè)、各級政府和國家安全部門的高度重視。對于學(xué)習(xí)網(wǎng)絡(luò)安全的同學(xué)來說,CTF 是一種鍛煉和保證學(xué)習(xí)信息安全的訓(xùn)練場。
2.2 使用VirtualBox 的虛擬化技術(shù)作為底層,部署CTF 實(shí)驗(yàn)所需要的靶機(jī)
VirtualBox 是一款既可以供企業(yè)使用,也可以在家庭PC 上使用的軟件。它是一款功能強(qiáng)大的x86 和AMD64(Intel64)虛擬化產(chǎn)品,還是唯一一個(gè)根據(jù)開源條款GNU 通用公共許可免費(fèi)提供給用戶使用的、可提供專業(yè)化解決方案的開源的虛擬化產(chǎn)品;VirtualBox 不僅可以運(yùn)行在Windows 上,還可以跨平臺運(yùn)行在Linux 上,Macintosh 機(jī)器上,還有Solaris 主機(jī)上;VirtualBox 支持的虛擬機(jī)操作系統(tǒng)包括:Windows 系列、Linux 系列、Solaris 和OpenBSD。開源、免費(fèi)和跨平臺特性,使得VirtualBox 廣受歡迎。使用開源的、可提供虛擬化功能的VirtualBox 作為底層搭建的網(wǎng)絡(luò)攻防靶機(jī)實(shí)訓(xùn)平臺,具備多平臺、快照功能,整個(gè)平臺成本低、部署快、性能高、彈性大。
2.3 利用聯(lián)想的EDU 硬盤保護(hù)系統(tǒng)中分區(qū)保護(hù)和網(wǎng)絡(luò)同傳功能,實(shí)現(xiàn)CTF 網(wǎng)絡(luò)攻防靶機(jī)平臺的底層部署
聯(lián)想公司開發(fā)的EDU 硬盤保護(hù)系統(tǒng)面向網(wǎng)吧和學(xué)校的機(jī)房管理。它可以快速、便捷地給機(jī)房中的電腦安裝操作系統(tǒng)、應(yīng)用程序和驅(qū)動程序,幫助機(jī)房管理員和電腦維護(hù)人員進(jìn)行快速的部署,快速地清楚前一個(gè)用戶的操作痕跡,保證下一個(gè)使用同一臺電腦的用戶有一個(gè)全新的、干凈的操作環(huán)境。
2.4 根據(jù)網(wǎng)絡(luò)攻防實(shí)驗(yàn)的需要,利用VirtualBox 的克隆功能快速部署,搭建實(shí)驗(yàn)所需要的攻防靶機(jī)和網(wǎng)絡(luò)環(huán)境,進(jìn)而快速、高效地實(shí)現(xiàn)高度定制的實(shí)訓(xùn)環(huán)境。
3.1 規(guī)劃靶場和靶機(jī)的虛擬機(jī)網(wǎng)絡(luò)連接
在進(jìn)行實(shí)訓(xùn)平臺的搭建之前,要先規(guī)劃好靶場和靶機(jī)之間的網(wǎng)絡(luò)連接。虛擬靶機(jī)是安裝在實(shí)訓(xùn)室學(xué)生用物理機(jī)上的虛擬機(jī),為了實(shí)現(xiàn)整個(gè)實(shí)訓(xùn)室,乃至整個(gè)學(xué)校所有的虛擬靶場實(shí)驗(yàn)室靶機(jī)之間的互聯(lián)和互通,我們需要將所有虛擬靶機(jī)的網(wǎng)絡(luò)設(shè)置為“橋接”物理機(jī)的物理網(wǎng)卡,使所有的虛擬靶機(jī)可以直接連入真實(shí)的物理網(wǎng)絡(luò)中。這樣為靶場的隨時(shí)擴(kuò)容虛擬機(jī),還有實(shí)驗(yàn)內(nèi)容的多樣化提供了更多選擇和實(shí)現(xiàn)的可能。
圖1 網(wǎng)絡(luò)攻防實(shí)訓(xùn)虛擬靶場實(shí)驗(yàn)室-拓?fù)鋱D
3.2 在物理機(jī)上安裝虛擬機(jī)平臺VirtualBox
規(guī)劃好靶場和靶機(jī)的虛擬網(wǎng)絡(luò)后,接下來在實(shí)訓(xùn)室準(zhǔn)備一天用作克隆模板的學(xué)生用物理機(jī)。在實(shí)驗(yàn)室的模板物理機(jī)上,先安裝作為靶機(jī)底層支撐的虛擬機(jī)平臺VirtualBox。注意,在安裝VirtualBox 后,務(wù)必啟用試驗(yàn)用物理靶機(jī)的CPU 虛擬化功能開關(guān)。
3.3 在VirtualBox 虛擬平臺上安裝實(shí)訓(xùn)用的虛擬機(jī)靶機(jī)
虛擬靶機(jī)可以根據(jù)實(shí)訓(xùn)室學(xué)生用物理機(jī)的CPU 內(nèi)核數(shù)、內(nèi)存容量和硬盤容量來確定其最佳的可部署靶機(jī)數(shù)量。一般一臺虛擬靶機(jī)的典型配置為:1 個(gè)CPU 內(nèi)核,1G 內(nèi)存,40G 硬盤容量。如果按照目前我們實(shí)訓(xùn)室學(xué)生電腦的典型配置:4 核心CPU,8G 內(nèi)存,500G 硬盤,則可以最大配置3 臺虛擬靶機(jī)。以所有的虛擬靶機(jī)的CPU 核心數(shù)、內(nèi)存容量和硬盤容量的總和不超過物理宿主機(jī)的配置為限,高配置物理機(jī)的實(shí)訓(xùn)室,則可以部署更多的虛擬靶機(jī);低配置物理機(jī)的實(shí)訓(xùn)室,則可以少配置一些靶機(jī);每一臺物理機(jī)至少配置一臺虛擬靶機(jī),借助靶場物理交換機(jī),實(shí)現(xiàn)所有物理機(jī)和虛擬靶機(jī)的互聯(lián)和互通,把整個(gè)實(shí)訓(xùn)室變成一個(gè)超級靶場,從而滿足大范圍的實(shí)訓(xùn)使用。
3.4 初始化攻防用的靶機(jī)
虛擬靶機(jī)安裝好了以后,需要根據(jù)網(wǎng)絡(luò)攻防課程計(jì)劃和CTF 線下攻防典型訓(xùn)練的要求,初始化訓(xùn)練靶機(jī)虛擬機(jī),安裝對應(yīng)的虛擬操作系統(tǒng)、對應(yīng)的服務(wù)和應(yīng)用軟件。安裝好靶機(jī)后,開啟虛擬靶機(jī),并保存一份快照,作為虛擬靶機(jī)日后維護(hù)的容錯備選。
圖2 CTF 線下網(wǎng)絡(luò)攻防-典型場景
3.5 使用聯(lián)想硬盤保護(hù)系統(tǒng),實(shí)現(xiàn)網(wǎng)絡(luò)同傳,實(shí)現(xiàn)靶機(jī)物理模板機(jī)的快速部署
靶機(jī)物理模板機(jī)上的虛擬靶機(jī)安裝并且做好初始化配置,且驗(yàn)證無誤后,就可以借助聯(lián)想的硬盤保護(hù)系統(tǒng)EDU 實(shí)現(xiàn)網(wǎng)絡(luò)同傳,快速部署到同一個(gè)實(shí)訓(xùn)室的每一臺物理機(jī)上。這個(gè)過程簡單易操作,幾個(gè)小時(shí)就可以完成60 臺靶機(jī)物理模板機(jī)的同傳發(fā)布。
系統(tǒng)同傳完成后,需要做物理機(jī)保護(hù)參數(shù)的設(shè)置,確保每次試驗(yàn)都能夠有全新的攻防環(huán)境,然后進(jìn)行分區(qū)參數(shù)的設(shè)置和同傳發(fā)布。根據(jù)實(shí)驗(yàn)的需要,可以設(shè)置分區(qū)恢復(fù)的參數(shù)為“每次開機(jī)”,也可以設(shè)置恢復(fù)參數(shù)為“手動恢復(fù)”模式,并制定恢復(fù)的間隔時(shí)間,比如一天。
3.6 驗(yàn)證
實(shí)訓(xùn)平臺搭建完成后,可參照CTF大賽的模式,組織目前在開設(shè)網(wǎng)絡(luò)安全課程的班級,利用學(xué)校的CTF 第二課堂時(shí)間進(jìn)行環(huán)境驗(yàn)證,驗(yàn)證的內(nèi)容包括虛擬機(jī)的運(yùn)行狀況是否穩(wěn)定,虛擬機(jī)之間的通訊、攻防靶機(jī)的服務(wù)是否正常運(yùn)行,實(shí)驗(yàn)完成后系統(tǒng)恢復(fù)到初識狀態(tài)是否實(shí)現(xiàn)等一系列驗(yàn)證性指標(biāo)。
借助CTF 模擬大賽的機(jī)制,通過虛擬化功能、物理機(jī)的分區(qū)保護(hù)、網(wǎng)絡(luò)的同傳等技術(shù)手段,實(shí)現(xiàn)了低成本和高度定制化的網(wǎng)絡(luò)攻防實(shí)訓(xùn)靶機(jī)平臺的搭建。這些都為網(wǎng)絡(luò)信息安全課程的開設(shè)提供了近乎真實(shí)的、可重復(fù)使用的、適合教學(xué)需要的網(wǎng)絡(luò)攻防實(shí)訓(xùn)環(huán)境。平臺的成功搭建,既解決了網(wǎng)絡(luò)攻防實(shí)驗(yàn)紙上談兵、缺少實(shí)戰(zhàn)的教學(xué)困境,又解決了購買高額費(fèi)用的商業(yè)實(shí)訓(xùn)平臺的問題,有利于具有中小規(guī)模的網(wǎng)絡(luò)安全相關(guān)專業(yè)的學(xué)校進(jìn)行網(wǎng)絡(luò)安全人才的培養(yǎng)。其借助校內(nèi)各種類型的活動和競賽,進(jìn)一步驗(yàn)證了CTF 靶機(jī)實(shí)訓(xùn)平臺的有效性和可靠性。不過,目前的實(shí)訓(xùn)平臺還僅限于我們學(xué)校自己網(wǎng)絡(luò)教學(xué)使用,主要是內(nèi)部網(wǎng)絡(luò)實(shí)訓(xùn)教學(xué)使用。在目前移動互聯(lián)網(wǎng)普及的今天,7*24、不限地域的云實(shí)驗(yàn)室的建設(shè)將成為新的趨勢,在經(jīng)費(fèi)允許的情況下,可以嘗試建設(shè)基于云平臺的網(wǎng)絡(luò)安全靶機(jī)實(shí)訓(xùn)平臺。