俞 炯,孟 魁,劉功申
(上海交通大學(xué) 電子信息與電氣工程學(xué)院,上海 200240)
計(jì)算機(jī)病毒教學(xué)實(shí)驗(yàn)系統(tǒng)的構(gòu)建
俞 炯,孟 魁,劉功申
(上海交通大學(xué) 電子信息與電氣工程學(xué)院,上海 200240)
傳統(tǒng)的計(jì)算機(jī)病毒課程教學(xué)通常以理論知識教授為主,缺乏與實(shí)踐的結(jié)合,導(dǎo)致學(xué)生對知識理解不深,教學(xué)效果一般。通過教學(xué)實(shí)驗(yàn)系統(tǒng)配合理論教學(xué)的計(jì)算機(jī)病毒課程教學(xué)模式,可以有效彌補(bǔ)傳統(tǒng)教學(xué)方式的不足,提升教學(xué)質(zhì)量。該文介紹了計(jì)算機(jī)病毒教學(xué)實(shí)驗(yàn)系統(tǒng)的功能設(shè)計(jì)、內(nèi)容設(shè)計(jì),并給出了實(shí)驗(yàn)教學(xué)的課時建議。
計(jì)算機(jī)病毒;教學(xué)實(shí)驗(yàn)系統(tǒng);教學(xué)模式;構(gòu)建
伴隨著信息時代大潮的來臨,信息安全問題引起全社會關(guān)注。2002年起,武漢大學(xué)、上海交通大學(xué)、電子科技大學(xué)等國內(nèi)高校在教育部支持下設(shè)立了信息安全專業(yè),開展信息安全專業(yè)人才的培養(yǎng)。
計(jì)算機(jī)病毒是信息安全專業(yè)的重要基礎(chǔ)課程,也是計(jì)算機(jī)學(xué)科相關(guān)專業(yè)的重要選修課程。其主要作用是讓學(xué)生掌握計(jì)算機(jī)病毒的基本原理、基本技術(shù),通過分析現(xiàn)有計(jì)算機(jī)病毒案例及充分實(shí)踐,掌握防范計(jì)算機(jī)病毒的方法和技術(shù)。
由于計(jì)算機(jī)病毒課程理論性強(qiáng)、實(shí)踐能力要求高、技術(shù)發(fā)展變化快,對學(xué)生和教師都存在較大的挑戰(zhàn)。首先,課程對學(xué)生的綜合素質(zhì),尤其是動手實(shí)踐能力有著較高的要求。形形色色的病毒種類,變化萬千的攻擊手段,晦澀的程序代碼,以及跨語言、跨平臺的實(shí)現(xiàn)方式等,都制約著學(xué)生對病毒的深入了解。其次,傳統(tǒng)的教學(xué)模式也常常止步于走馬觀花、紙上談兵式的講解,不符合了解計(jì)算機(jī)病毒應(yīng)有的偏向于實(shí)踐的特質(zhì)。同時,單純理論知識的學(xué)習(xí)往往使學(xué)生對知識印象不深、學(xué)了就忘,使得教學(xué)效果十分有限。
因此,如何在教學(xué)過程中提高學(xué)生的學(xué)習(xí)興趣,合理地教學(xué)重要知識點(diǎn),如何通過實(shí)驗(yàn)、實(shí)踐,配合理論教學(xué)高效地達(dá)到教學(xué)目的,就成為我們在教學(xué)研究中需要解決的主要問題。
在此,本文圍繞原理、實(shí)踐和應(yīng)用并重的教學(xué)思路,提出并開發(fā)了一套計(jì)算機(jī)病毒教學(xué)實(shí)驗(yàn)系統(tǒng),配合計(jì)算機(jī)病毒課程理論教學(xué),通過一系列計(jì)算機(jī)病毒實(shí)驗(yàn),從理解能力、分析能力、實(shí)踐能力等不同著重點(diǎn)對學(xué)生進(jìn)行培養(yǎng)。通過邊學(xué)習(xí)、邊實(shí)踐的方式,幫助學(xué)生加深對計(jì)算機(jī)病毒的理解,提高開發(fā)能力與科研能力。
2.1 系統(tǒng)簡介
教學(xué)實(shí)驗(yàn)系統(tǒng)采用B/S(瀏覽器/服務(wù)器)架構(gòu),系統(tǒng)在Ubuntu服務(wù)器上進(jìn)行部署。服務(wù)器端采用JSP/Servlet+Tomcat+MySQL,可至少支持200人同時在線,足以滿足教學(xué)需求。
系統(tǒng)以網(wǎng)站的形式向?qū)W生開放。服務(wù)器開啟后,學(xué)生只需通過瀏覽器訪問Internet或者服務(wù)器所在局域網(wǎng),就能進(jìn)入實(shí)驗(yàn)系統(tǒng)進(jìn)行學(xué)習(xí)與作業(yè)。
各個實(shí)驗(yàn)的教學(xué)課件已集成到系統(tǒng)中,學(xué)生可以在系統(tǒng)中輕松找到具體實(shí)驗(yàn)對應(yīng)的基礎(chǔ)知識、實(shí)驗(yàn)原理及實(shí)驗(yàn)步驟。教學(xué)課件中所提及的實(shí)驗(yàn)所需相關(guān)文件、代碼等資料,也已在系統(tǒng)中標(biāo)注并附上鏈接,學(xué)生可自行從服務(wù)器下載。另外,學(xué)生也可以在系統(tǒng)內(nèi)完成作業(yè)并提交。
實(shí)驗(yàn)系統(tǒng)界面如圖1所示,左側(cè)為實(shí)驗(yàn)?zāi)夸?,右?cè)為對應(yīng)的實(shí)驗(yàn)內(nèi)容,包括實(shí)驗(yàn)?zāi)康?、原理、相關(guān)演示、步驟以及其他一些參考資料。
圖1 學(xué)生實(shí)驗(yàn)系統(tǒng)界面
教師管理系統(tǒng)的主界面如圖2所示。教師進(jìn)入該系統(tǒng)后,可以查看與管理學(xué)生信息,查看實(shí)驗(yàn)結(jié)果、評分等。
圖2 教師管理系統(tǒng)主界面
2.2 實(shí)驗(yàn)內(nèi)容設(shè)計(jì)
根據(jù)不同的實(shí)驗(yàn)內(nèi)容及教學(xué)目的,計(jì)算機(jī)病毒教學(xué)實(shí)驗(yàn)系統(tǒng)中包括三類實(shí)驗(yàn)項(xiàng)目:基礎(chǔ)型實(shí)驗(yàn)、分析型實(shí)驗(yàn)和開發(fā)型實(shí)驗(yàn)。
基礎(chǔ)型實(shí)驗(yàn)的主要目的是增進(jìn)學(xué)生對基礎(chǔ)知識的理解。此類實(shí)驗(yàn)難度不大,教學(xué)內(nèi)容以病毒的基本原理、功能的介紹為主,通過展示、簡單的動手操作等方法,使學(xué)生對相應(yīng)的計(jì)算機(jī)病毒知識有一定的感性認(rèn)識。
分析型實(shí)驗(yàn)側(cè)重于對病毒原理、算法等的分析,主要目的為提高學(xué)生的研究能力。實(shí)驗(yàn)以學(xué)生自主閱讀及思考為主,除給出的參考資料外,學(xué)生還必須自主查找相關(guān)資料并提出想法,對學(xué)生今后從事科研工作有重要意義。
開發(fā)型實(shí)驗(yàn)以提升學(xué)生的動手能力為目的。教學(xué)中給出一定的實(shí)驗(yàn)指導(dǎo),要求學(xué)生實(shí)現(xiàn)病毒的感染、查殺等工作。實(shí)驗(yàn)使學(xué)生在書寫代碼、配置環(huán)境等多方面得到鍛煉,并且通過動手加深學(xué)生對理論知識的理解。
在計(jì)算機(jī)病毒教學(xué)實(shí)驗(yàn)系統(tǒng)中,實(shí)驗(yàn)室設(shè)計(jì)了12個實(shí)驗(yàn)項(xiàng)目。
1)引導(dǎo)區(qū)病毒實(shí)驗(yàn)
①實(shí)驗(yàn)?zāi)康模毫私庖龑?dǎo)區(qū)病毒的感染對象和感染特征;重點(diǎn)學(xué)習(xí)引導(dǎo)病毒的感染機(jī)制和恢復(fù)染毒文件的方法;提高匯編語言的使用能力。
②實(shí)驗(yàn)內(nèi)容:引導(dǎo)階段病毒由軟盤感染硬盤實(shí)現(xiàn),Dos運(yùn)行時病毒由硬盤感染軟盤實(shí)現(xiàn)[1]。實(shí)驗(yàn)中,學(xué)生主要通過觸發(fā)病毒、觀察病毒發(fā)作的現(xiàn)象和步驟,學(xué)習(xí)病毒的感染機(jī)制;閱讀病毒源代碼并進(jìn)行分析。
2)可執(zhí)行文件區(qū)病毒實(shí)驗(yàn)
①實(shí)驗(yàn)?zāi)康模毫私獠《靖腥緦ο?,學(xué)習(xí)文件感染病毒前后的特征變化;重點(diǎn)學(xué)習(xí)病毒感染機(jī)制和恢復(fù)染毒文件的方法;提高匯編語言使用能力。
②實(shí)驗(yàn)內(nèi)容:包括COM病毒以及PE病毒,主要內(nèi)容包括通過病毒感染實(shí)驗(yàn),學(xué)習(xí)病毒的感染機(jī)制;使用系統(tǒng)提供的殺毒工具,學(xué)習(xí)恢復(fù)染毒文件;閱讀和分析殺毒程序代碼,并完成習(xí)題。
3)宏病毒實(shí)驗(yàn)
①實(shí)驗(yàn)?zāi)康模毫私饷符惿《竞团_灣No.1病毒的運(yùn)行機(jī)制;分別利用兩個宏病毒進(jìn)行感染,觀察效果后清除病毒。
②實(shí)驗(yàn)內(nèi)容:學(xué)習(xí)梅麗莎病毒和臺灣No.1病毒的基本運(yùn)行原理;模擬梅麗莎病毒,利用一個含有惡意代碼的Word自動宏,模擬癱瘓郵件服務(wù)器的效果;利用臺灣No.1病毒,模擬癱瘓用戶計(jì)算機(jī)的效果。
③特色功能:宏病毒的自動感染功能。在梅麗莎病毒和臺灣No.1病毒的實(shí)驗(yàn)中,用戶只需要輸入想要的參數(shù)(如發(fā)作日期、感染目標(biāo)等),系統(tǒng)就能自動幫助用戶實(shí)現(xiàn)病毒的植入。
4)腳本病毒實(shí)驗(yàn)
①實(shí)驗(yàn)?zāi)康模豪斫饽_本病毒的感染和傳播機(jī)制,重點(diǎn)了解新歡樂時光病毒的感染和傳播行為;學(xué)習(xí)病毒的加/解密技術(shù);學(xué)習(xí)檢測和防范腳本病毒的方法。
②實(shí)驗(yàn)內(nèi)容:包括網(wǎng)絡(luò)炸彈、萬花谷、歡樂時光3種腳本病毒[2]。內(nèi)容主要包括病毒演示,通過單步跟蹤病毒發(fā)作全過程,學(xué)習(xí)腳本病毒的感染技術(shù)和傳播技術(shù);病毒的查殺,修復(fù)病毒對系統(tǒng)的惡意修改,修復(fù)對象包括注冊表、Outlook Express和被感染的腳本文件;病毒的加密與解密實(shí)驗(yàn),根據(jù)解密的腳本,推導(dǎo)出加密算法,并對病毒體進(jìn)行加密;閱讀和分析病毒源代碼。
③特色功能:網(wǎng)絡(luò)炸彈的模擬功能,用戶只需自行選擇彈出窗口的數(shù)量、內(nèi)容,就能進(jìn)行病毒的模擬;萬花谷病毒與歡樂時光病毒的感染與修復(fù)功能,對用戶屏蔽了相對復(fù)雜的感染與修復(fù)過程,使其可以更清楚與直觀地觀察到病毒效果;腳本的加/解密功能,可以根據(jù)用戶自行定義的種子數(shù)字與算法進(jìn)行加/解密運(yùn)算,使用戶對惡意腳本的施行過程有更加直觀的了解。
5)蠕蟲病毒實(shí)驗(yàn)
①實(shí)驗(yàn)?zāi)康模貉芯繘_擊波病毒如何利用微軟RPC漏洞獲取目標(biāo)機(jī)器最高權(quán)限;了解蠕蟲病毒的攻擊模式;了解shell以及socket編程原理,并要求能看懂源代碼。
②實(shí)驗(yàn)內(nèi)容:了解病毒原理,演示感染后的效果與病毒的查殺,包括U盤蠕蟲病毒,為U盤創(chuàng)建autorun.inf文件,利用Windows的自動播放功能觸發(fā)病毒程序;RPC漏洞蠕蟲病毒,利用RPC DCOM漏洞的shellcode,實(shí)驗(yàn)需要預(yù)先知道攻擊機(jī)器的IP地址以及機(jī)器類型[3]。
6)木馬病毒實(shí)驗(yàn)
①實(shí)驗(yàn)?zāi)康模毫私饽抉R程序基本原理及其主要工作步驟,即配置、傳播、運(yùn)行、信息獲取、建立連接和遠(yuǎn)程控制等;通過運(yùn)行源代碼,深化理解,同時提高編程能力。
②實(shí)驗(yàn)內(nèi)容:學(xué)習(xí)木馬的基本結(jié)構(gòu);閱讀BO2K源代碼,并對源代碼的編譯;運(yùn)行其服務(wù)器端和客戶端程序,嘗試使用其基本控制命令。
7)惡意代碼遠(yuǎn)程植入實(shí)驗(yàn)
①實(shí)驗(yàn)?zāi)康模毫私饽抉R植入的工作方式;掌握網(wǎng)站掛馬的基本原理和實(shí)現(xiàn)方法。
②實(shí)驗(yàn)內(nèi)容:了解木馬病毒的常見植入手段,常見的首次運(yùn)行植入以及網(wǎng)站掛馬技術(shù)等;惡意代碼遠(yuǎn)程植入攻擊模擬實(shí)驗(yàn),利用MS06-014漏洞進(jìn)行遠(yuǎn)程攻擊,獲取對目標(biāo)主機(jī)的控制[4]。
8)僵尸網(wǎng)絡(luò)實(shí)驗(yàn)
①實(shí)驗(yàn)?zāi)康模毫私饨┦W(wǎng)絡(luò)原理與基本工作方式;了解僵尸工具agobot;通過改進(jìn)agobot源碼,加深對其機(jī)制的理解,同時提高代碼能力。
②實(shí)驗(yàn)內(nèi)容:了解僵尸網(wǎng)絡(luò)傳播、加入和控制3個階段的運(yùn)行方式;學(xué)習(xí)agobot源碼并做出改進(jìn);運(yùn)行改進(jìn)后的agobot源碼,觀察效果。
9)手機(jī)惡意代碼實(shí)驗(yàn)
①實(shí)驗(yàn)?zāi)康模毫私夂唵蔚氖謾C(jī)木馬的工作方式;重點(diǎn)學(xué)習(xí)簡單Android程序的編寫;學(xué)習(xí)對應(yīng)模擬器的使用。
②實(shí)驗(yàn)內(nèi)容:配置Android開發(fā)環(huán)境,啟動模擬器調(diào)試;參考給出的代碼,在模擬器中模擬來電并測試教學(xué)代碼的功能,實(shí)現(xiàn)來電時后臺錄音,并查看實(shí)驗(yàn)結(jié)果。
10)Linux系統(tǒng)惡意代碼實(shí)驗(yàn)
①實(shí)驗(yàn)?zāi)康模毫私釲inux腳本型惡意代碼的基本編制原理;了解惡意腳本的感染與破壞機(jī)制,進(jìn)一步認(rèn)識Linux操作系統(tǒng)下的惡意代碼;了解Linux 感染ELF可執(zhí)行文件的病毒的基本編制原理;了解可執(zhí)行文件病毒的感染、破壞機(jī)制。
②實(shí)驗(yàn)內(nèi)容:Linux系統(tǒng)下shell惡意腳本以及ELF病毒的原理學(xué)習(xí);根據(jù)給出的腳本代碼創(chuàng)建測試用腳本文件,觀察執(zhí)行效果;結(jié)合文本段之后填充區(qū)感染和數(shù)據(jù)段之后感染技術(shù),利用給出的源碼實(shí)現(xiàn)一個ELF病毒。
11)惡意代碼檢測實(shí)驗(yàn)
①實(shí)驗(yàn)?zāi)康模赫莆仗卣鞔a掃描法檢測病毒的基本原理;了解病毒文件中常見的特征碼。
②實(shí)驗(yàn)內(nèi)容:實(shí)驗(yàn)基于開源組織OpenAntivirus提供的軟件ScannerDaemon[5]。學(xué)生需要下載ScannerDaemon與最新的病毒簽名文件,進(jìn)行配置與安裝;啟動ScannerDaemon,并通過telnet方式訪問;掃描給出的樣例文件,觀察結(jié)果并分析。
③特色功能:利用在服務(wù)器后臺部署的掃描程序ScannerDaemon的post功能,可以對實(shí)驗(yàn)中的樣例文件或者用戶自行選擇的任意文件進(jìn)行病毒掃描。
12)木馬檢測實(shí)驗(yàn)
①實(shí)驗(yàn)?zāi)康模毫私鈾z測特洛伊木馬的常用方法;掌握利用端口號檢測木馬的基本原理;利用原理實(shí)現(xiàn)簡單的木馬檢測。
②實(shí)驗(yàn)內(nèi)容:使用Windows系統(tǒng)中的netstat命令獲取本地打開端口的列表,利用開放主機(jī)端口號和各個木馬程序使用端口間的對應(yīng)關(guān)系,判斷主機(jī)是否已中木馬,中了何種木馬,并能根據(jù)所中木馬的類型進(jìn)行殺滅[6],包括終止運(yùn)行中的木馬進(jìn)程、刪除木馬文件、刪除木馬在注冊表中添加的項(xiàng)以及木馬其他文件中添加的自啟動項(xiàng)等。
實(shí)驗(yàn)系統(tǒng)中的12個實(shí)驗(yàn)分屬基礎(chǔ)型、開發(fā)型、分析型,難度深淺也各有不同。本文對各個實(shí)驗(yàn)的類型和難易程度等進(jìn)行了設(shè)計(jì),并根據(jù)教學(xué)經(jīng)驗(yàn)給出了各實(shí)驗(yàn)的課時建議,如表1所示。
表1 各實(shí)驗(yàn)?zāi)K一覽表
教師可以根據(jù)課程對象和教學(xué)重點(diǎn)的不同,在教學(xué)過程中進(jìn)行相應(yīng)的組合。在絕大部分學(xué)生可以順利完成的前提下,讓部分學(xué)有余力的學(xué)生可以進(jìn)一步發(fā)揮,既不顧此失彼,又能因材施教,有利于助長學(xué)生學(xué)習(xí)的熱情。
計(jì)算機(jī)病毒課程教學(xué)實(shí)驗(yàn)系統(tǒng)的出現(xiàn)改變了傳統(tǒng)計(jì)算機(jī)病毒課程單一、刻板的教學(xué)模式,不僅有利于教師對原理的講解和分析,代碼的分析和運(yùn)行,理論教學(xué)和實(shí)踐解析的有效結(jié)合,也為學(xué)生提供了一個深入實(shí)踐的平臺。在幾年的教學(xué)實(shí)踐中發(fā)現(xiàn),通過系統(tǒng)中基礎(chǔ)型、開發(fā)型、分析型等多種實(shí)驗(yàn)類型的實(shí)踐,可以由淺入深地培養(yǎng)學(xué)生的動手實(shí)踐能力、分析能力和自主科研能力。
此外,該教學(xué)實(shí)驗(yàn)系統(tǒng)不僅可以支持計(jì)算機(jī)病毒課程的學(xué)習(xí),其他信息安全專業(yè)課程也可以選擇其中的實(shí)驗(yàn)內(nèi)容作為課程教學(xué)的有益補(bǔ)充,對于學(xué)生掌握理論知識有相當(dāng)大的幫助。
[1]胡錚. 網(wǎng)絡(luò)與信息安全[M].北京:清華大學(xué)出版社, 2006.
[2]張仕斌,譚三,易勇,等.網(wǎng)絡(luò)安全技術(shù)[M].北京:清華大學(xué)出版社, 2004.
[3]蔡皖東.網(wǎng)絡(luò)與信息安全[M].西安:西北工業(yè)出版社, 2004.
[4]侯整風(fēng).網(wǎng)絡(luò)與信息安全系列課程實(shí)踐教程[M].合肥:合肥工業(yè)大學(xué)出版社, 2006.
[5]劉功申.計(jì)算機(jī)病毒及其防范技術(shù)[M].北京:清華大學(xué)出版社, 2008.
[6]國家信息化安全教育認(rèn)證管理中心.信息安全技術(shù)[M].廣州:廣州出版社,2003.
Construction of Experimental Teaching System for Computer Virus
YU Jiong, MENG Kui, LIU Gongshen
(School of Electronic Information and Electrical Engineering, Shanghai Jiao Tong University, Shanghai 200240, China)
The traditional teaching of computer virus is usually based on the teaching of theoretical knowledge. Proper practices are usually ignored, which leads to the students’ limited understanding of knowledge and poor effect in teaching. Therefore, this paper brings up a method of education which combines the use of experimental system and the teaching of theoretical knowledge. It gives the descriptions of the main features of this system and contents of the experiments. Suggestions on the teaching hours are also made. We intend to solve the shortcomings of traditional teaching and enhance the quality of teaching in college.
computer virus; experimental teaching system; teaching mode; construction
2014-04-24;修改日期:2014-05-30
信息網(wǎng)絡(luò)安全公安部重點(diǎn)實(shí)驗(yàn)室開放課題項(xiàng)目(C12609);上海交通大學(xué)教學(xué)改革項(xiàng)目。
俞 炯(1992 -),男,碩士研究生,主要從事惡意代碼防范方面的研究。
Adoi:10.3969/j.issn.1672-4550.2015.06.057