龐巖梅 李冬冬 范 潔
北京電子科技學院,北京市 100070
計算機病毒課程作為網絡空間安全專業(yè)和信息安全專業(yè)的專業(yè)課程之一,對于網絡安全人才的培養(yǎng)目標具有重要的支撐作用。 計算機病毒課程具有涉及的知識廣、內容深、難度大等特點,且課程主要內容之一的“病毒技術”具有明顯雙面性,這些都給這門課程的教學帶來了不小的挑戰(zhàn)。 所謂“雙面性”指的是,同樣的技術既可以用于解決積極正面的問題,又可以被病毒所應用造成安全威脅。 最典型的,Windows 操作系統(tǒng)中的代碼注入技術,既是計算機病毒用來隱蔽自身的一種技術,也是安全軟件用來檢測病毒的一種技術。 因此,如果教學只是專注于計算機病毒技術的剖析和實踐,那么必然存在著指導學生如何編寫病毒的錯誤導向;但如果對于技術只是點到為止,那么教學效果必然是學生對技術僅限于表面了解,無法真正理解吸收并應用于實踐,進而對“提升能力素質”這一培養(yǎng)目標起不到支撐作用。 因此,需要找到一種適合的教學模式,使得學生在不編寫病毒的基礎上,既能加深對計算機病毒技術的理解,又能提高技術的正面應用能力,其中的“正面”指的是積極有益的一面,“正面應用”指的是利用技術雙面性中有益的一面解決實際中積極有益的那些問題。
針對計算機病毒課程普遍存在的教學效果不夠理想的情況,目前的解決方案主要有兩個方向:第一是在講解分析原理技術的基礎上加大實踐力度;第二是改善教學過程的設計。 俞炯和王靜等人[1-4]都強調通過實踐環(huán)節(jié)來改善教學效果。 其中,俞炯等人[1]采用教學實驗系統(tǒng)配合理論教學的課程教學模式來提高教學質量;王靜和熊育婷等人[2,3]提出通過不同類型的實踐進行病毒原理的學習。 薛明富[4]強調以實踐活動為中心開展基于項目和任務的學習。 趙春蕾和彭曉紅等人[5,6]重點從教學過程的設計進行思考和改進。 但上述方案都存在著通過讓學生編寫病毒樣例來深入理解技術的情況,雖然這種方式能夠在一定程度上讓學生深入了解病毒技術,但也給學生帶來了可以生產和制造病毒的錯覺。因此,如何通過課堂教學達到既能讓學生深入理解計算機病毒技術又能引導學生正面應用技術的目的非常具有研究價值。
在總結和反思多輪教學基礎上,課程團隊提出并實施了“基于遷移理論,面向正面應用”的教學模式。 在這種教學模式下,教師基于遷移理論指導學生將病毒技術正面應用到實際問題的解決中,同時配合課程思政教育,從思想上引導學生認識技術兩面性,樹立正確的世界觀、人生觀和價值觀,強化技術正面應用的意識。 通過這種教學模式,使得學生不僅在學習和應用技術的基礎上能夠逐步提高實踐能力,而且又能將這種實踐能力應用于正確的方向,并且這種應用出自于學生對正面應用技術的理性認同。
在心理學中,所謂遷移是指一種學習對另一種學習的影響。 它是學習者運用已有認知結構對新課題進行分析和概括的基礎上實現的,其實質是一種揭示新、舊課題共同本質的過程[7]。許多心理學家和教育學家從不同的角度出發(fā)提出了許多種學習遷移理論,美國心理學家Judd提出的“經驗類化說”遷移理論正是其中之一。這一理論的主要觀點包含三個方面[7,8]:第一,兩種學習活動中的共同成分是產生遷移的必要前提。 若希望從源領域中學習知識并運用到目標領域中,那么必須保證源領域與目標領域有共同的知識。 對計算機病毒課程來說,源領域是計算機病毒所用的技術,目標領域是正面應用所采用的技術。 這兩個領域有著共同的知識——某種技術。 因此,計算機病毒課程的教學具備采用遷移理論的基礎。 第二,遷移發(fā)生的關鍵在于對學習課題里共同因素的概括化。 “概括化”一般由教師指導。 對于計算機病毒課程來說,對病毒技術和正面應用技術這兩個領域中共同知識的概括是可行的,并且病毒技術本身紛繁復雜,難度較深,所以課堂教學正是實現這一概括最合適的契機。 教師可以進行教學過程設計,通過首先引入具體病毒樣例,并基于病毒樣例代碼對技術進行分析,而后抽象出該類病毒所用的具體技術,繼而再概括化出同類技術。 因此,計算機病毒課程的教學具備遷移理論中遷移能夠發(fā)生的關鍵條件。 第三,學習者應用原理、法則的“心向”也影響遷移。 計算機病毒課程講解案例和技術,而技術具有雙面性的特征,非常便于結合恰當的案例開展課程思政。 通過課程思政引導學生樹立正確的世界觀、人生觀和價值觀,將技術的應用和國家安全觀聯系起來,可以讓學生意識到用技術解決實際正面問題的重要性和必要性。 因此計算機病毒課程具備學習者應用遷移的條件。 綜上,計算機病毒課程的教學可以采用遷移理論來解決講解病毒技術,又不應該和不可以鼓勵學生制造病毒的問題。
如果將計算機病毒領域中的典型病毒視為A,將待解決的正面問題視為B,通過對A(計算機病毒)領域中計算機病毒技術的研究,獲得一般原理和技術,然后再將這些原理和技術運用于B(待解決的正面問題)中,那么就可以將從A(計算機病毒)領域中學習到的原理和技術遷移到B(待解決的正面問題)領域中,從而實現技術的正面應用,這一過程可以用圖1進行表示。
要讓學生掌握計算機病毒的相應技術,同時又要求他們在掌握了技術之后不能去制造計算機病毒,就必須先從思想意識層面讓學生樹立正確的技術應用觀,打通技術的正面應用與國家安全觀之間的聯系。 而這也恰是基于遷移原理能夠有效實施的前提條件之一。
計算機病毒技術是典型的雙面性技術。 當被用在計算機病毒中時,這種技術就是對他人、社會和國家安全造成威脅的技術;當被用在普通程序或者安全軟件中時,這種技術可能就是一種提高效率、提升安全的技術。 針對技術雙面性的特點,在授課過程中融入思政教育,使學生始終對技術的應用保持警醒,樹立技術應用的紅線意識,從國家安全觀出發(fā)去認識技術應用。 同時通過思政教育對學生的世界觀、人生觀、價值觀進行積極引導,激發(fā)學生的愛國熱情,堅定正確的理想信念,鼓勵學生為了國家安全而努力學習。在教學中強調國家安全是國家生存發(fā)展的基本前提,而網絡空間安全正是國家安全中不可忽視的重要一環(huán),計算機病毒技術是威脅網絡空間安全最主要的原因之一。 通過對APT 病毒整體態(tài)勢,挖礦木馬、勒索病毒等地下黑色產業(yè)鏈以及某些國家基礎設施遭到病毒攻擊等情況的分析,一方面使得學生認識到如果將技術應用在計算機病毒中,那么就有可能帶來巨大的網絡安全威脅,從而進一步威脅國家安全和社會穩(wěn)定;而這些技術如果應用在正面問題中,那么它們不僅可能成為提高效率、改進工作的助手,而且可能成為網絡安全的防護手段,對維護社會穩(wěn)定和國家安全產生積極作用;另一方面讓學生認識到金錢、私利至上的扭曲三觀造成的網絡犯罪已經成為了每個人都有責任積極參與解決的全球公害,明確目前網絡空間安全成為各國新戰(zhàn)場的嚴峻現實,作為中華民族復興未來的中堅力量,同學們有責任也有義務為了保衛(wèi)國家的網絡空間安全而努力學習等。 通過將思政元素和課程內容自然的統(tǒng)一在一起,讓學生不僅關注技術更要關注德行,不僅有利于學生增強用好的德行指導技術正確應用的內驅力,同時還可以達到專業(yè)課程與思想政治理論課同向同行,為全員全程全方位育人服務的目的。
經過課程思政的鋪墊,學生具備了技術應用的紅線意識,明確了技術服務的目的,解決了正面應用的“心向”問題,再采用“基于遷移理論,面向正面應用”的教學模式就是順理成章的事情。 在實際授課過程中,分章節(jié)講解不同類型的病毒,對每一類病毒剖析其具體技術,然后對技術進行概括化,最后將概括化之后的技術遷移到可以利用該技術的正面應用問題中。 根據病毒技術相應難度的不同,在教學的具體實施過程中,又采用了教師講解分析型和學生設計實踐型兩種不同的教學方法。
3.2.1 教師講解分析型
針對諸如木馬所用的鉤子技術、PE 文件型病毒所用的感染技術以及勒索病毒所用的文件加密技術等這類難度較大、涉及的基礎知識也較為深入和廣泛的技術,采用教師講解分析型教學方法。 具體的,教師授課時首先分析病毒具體原理和主要技術,其次對該類病毒所采用的技術本質進行概括化,緊接著講解這種技術在正面問題中的應用場景,最后分析該技術應用在正面應用領域中的具體方法。
例如,HOOK 技術是木馬最主要和常用的技術之一。 在講解這一技術時,首先分析鍵盤記錄型木馬的核心代碼及其所對應的HOOK 技術的實現原理和具體手段;然后對HOOK 技術進行概括化,向學生講解HOOK 技術及其各種不同類型;然后介紹HOOK 技術可以遷移的典型正面應用場景(例如翻譯詞典、殺毒軟件和防護軟件等正面應用中),并以屏幕取詞為例具體分析HOOK 技術在其中的應用方法。 具體過程如圖1 圖2 所示。
圖2 木馬技術的正面應用
從教學反饋來看,學生通過教師的這種教授思路,可以在一定程度上理解病毒所用的具體技術,并且能夠了解相應技術的實質,對于什么是正面應用有了清晰的認識,掌握了技術在正面應用中的基本使用方法。
3.2.2 學生設計實踐型
對于諸如腳本病毒技術、宏病毒技術以及U盤自啟動病毒技術等此類難度適中、涉及的基礎知識較為集中的病毒技術,主要采用學生設計實踐型的教學方法。 具體的,教師在課堂上講授相應的病毒技術,并對技術進行概括化后介紹所能應用的一些正面問題,在此基礎上,學生以實踐方式自主完成相應技術的正面應用。
例如,在講解腳本病毒時,會分析各類典型腳本病毒的基本原理和代碼編寫方法,引導學生基于腳本技術實現正面功能。 有學生實現了將PPT 內容寫入WORD 文件的功能;有學生實現了將磁盤中隨意存放的照片按日期進行整理的功能;有學生實現了一鍵登錄郵箱的功能等,如圖3 所示。
從這種方法的實際教學效果來看,部分學生思維活躍,作品豐富,在自主設計實踐正面應用方面百花齊放。 同時,學生反映這種方式增加了他們對病毒本身原理和技術的理解,同時也增強了他們正面應用技術的意識。
在課程的實際教學過程中,基于遷移理論引導和鼓勵學生所進行的正面應用探索并不是一蹴而就的事情,這一過程需要學生理解原理、掌握技術、深入思考,是一個循序漸進的過程,并不是每個學生都能迅速地產生反饋。 并且,對于一些難度較大的技術,在有限的課堂時間內直接進行遷移對學生來說還具有一定的挑戰(zhàn)性。 對于一些能力較好、也對這一方面有興趣的同學來說,這種教學模式為他們提供了繼續(xù)深入思考和研究的空間,部分學生在這一方向上深入探索并將課堂學習延伸到了課外項目和畢業(yè)設計中。
例如,針對PE 文件型病毒的感染技術,有學生就將其延展并正面應用于軟件保護。 設計并編程實現了一個軟件保護方案作為課外項目:當執(zhí)行某個軟件時,必須先輸入合法的用戶名和口令,如果輸入正確,那么軟件會正常執(zhí)行;否則,軟件會自動退出無法執(zhí)行。 通過這種方式對該軟件進行一定程度上的版權保護,程序執(zhí)行效果如圖4 所示。 圖(a)中,用戶選擇需要保護的程序為notepad.exe,使用login.exe 進行保護,當點擊界面中的“確認”按鍵后,login.exe 就會和notepad.exe 結合在一起;當任何人想使用該電腦中的notepad.exe 程序時,程序首先會彈出圖(b)中的login 對話框要求用戶輸入合法的用戶名和口令,輸入正確則notepad.exe 程序正常執(zhí)行,否則該程序自動退出,不允許使用。
圖4 PE 文件型病毒感染技術正面應用作為學生課外項目
再比如,針對木馬的HOOK 技術,有學生將其延展到SSDT 系統(tǒng)級HOOK 的探索,并進一步研究和分析了基于SSDTHOOK 技術的沙盒的基本原理,作為畢業(yè)設計課題,給出了分析報告并自己嘗試以此為基礎編寫程序攔截進程注入。 圖5 為該同學畢業(yè)論文基本信息。
圖5 木馬HOOK 技術正面應用作為學生畢業(yè)設計課題
通過“基于遷移理論,面向正面應用”教學模式的實施,解決了計算機病毒課程教學一直以來存在著的如何能既向學生剖析病毒技術,又不以指導學生編寫病毒為目的而講授技術的問題;通過基于案例的課程思政和基于技術的正面應用講解,強化了學生對技術進行正面應用的思想意識,讓學生對技術雙面性的認識從感性理解上升到了理性認同;基于難度適當的技術鼓勵學生自主設計和實踐正面應用,加深了學生對于原理和技術的理解,同時也提高了基于技術進行正面應用的實踐能力;通過難度較大技術的正面應用的講授,又讓學有余力的學生找到了深入探索的方向,并為相關課外項目提供了素材和技術支持。 但這種教學模式在現實應用中也存在明顯的弱點:第一,對教師來說,備課與授課難度較大。 這一教學模式需要教師在理解病毒技術深層原理的基礎上熟悉各種技術的外圍應用,并且還要找到適合課堂教學的難度適宜的點。 而且,通常病毒技術都會涉及到系統(tǒng)內核,較為復雜,并且常常隨著操作系統(tǒng)版本的不同而發(fā)生較大變化;第二,對學生來說,需要投入較多的時間與精力。 這一教學模式一方面需要學生消化理解已有的病毒技術,而這些技術本身的難度相對并不低;另一方面還需要學生找到適合實踐的正面應用的點,并且對技術和正面應用點進行實踐的設計和驗證,相對來說,需要付出的時間和精力都較多。 對于部分基礎較差和學習積極性較弱的學生來說,學習難度很大,容易掉隊。 因此要想較好的實施這一教學模式,教師和學生都必須保證時間和精力的投入。
計算機病毒課程作為網絡安全專業(yè)和信息安全專業(yè)的專業(yè)課程所具有的技術雙面性的特點,是安全相關課程中技術的共同特點,“基于遷移理論,面向正面應用”的教學模式對此類課程都具有一定的借鑒意義。