北方工業(yè)大學(xué) 杜春來(lái)
當(dāng)前,隨著軟件功能的需求增加,導(dǎo)致代碼量的規(guī)模不斷持續(xù)擴(kuò)大且復(fù)雜度激增,攻擊者通過(guò)實(shí)施惡意代碼的注入、隱藏使得用戶面臨極大的風(fēng)險(xiǎn),如何有效與之對(duì)抗的需求越發(fā)強(qiáng)烈。高校肩負(fù)人才的培養(yǎng)職能,針對(duì)《軟件安全》課程在提升學(xué)生對(duì)惡意代碼分析與對(duì)抗能力的同時(shí),因該課程知識(shí)的“雙刃劍”安全屬性,需將思政融入課程,加強(qiáng)學(xué)生的守法守紀(jì)教育。
《軟件安全》是我國(guó)高校網(wǎng)絡(luò)空間安全專業(yè)和信息安全專業(yè)的一門(mén)骨干課程,重點(diǎn)以攻擊者視角講授計(jì)算機(jī)病毒的編寫(xiě)、隱藏、自我保護(hù)技術(shù)等和因“知其所以然”拓展的計(jì)算機(jī)病毒防御技術(shù),更好地培養(yǎng)計(jì)算機(jī)病毒的對(duì)抗分析人才。同時(shí)為了更好地培養(yǎng)專業(yè)人才,從知識(shí)點(diǎn)的章節(jié)分配看,當(dāng)前高校教材更多的篇幅側(cè)重計(jì)算機(jī)病毒的編寫(xiě)技術(shù),不僅涉及基礎(chǔ)理論的講授,也涉及具體實(shí)現(xiàn)技術(shù)的講解,諸如計(jì)算機(jī)病毒重定位技術(shù)、Kernel32 核心庫(kù)地址的獲取技術(shù),乃至花指令技術(shù)、多態(tài)技術(shù)、變形技術(shù)。從計(jì)算機(jī)病毒的類型上看,該課程不僅涉及二進(jìn)制病毒,也涉及腳本病毒、宏病毒等。
《軟件安全》課程講授的知識(shí)點(diǎn)具有很強(qiáng)的技術(shù)轉(zhuǎn)化性,如果在教學(xué)中不側(cè)重政治思想教育,將導(dǎo)致與培養(yǎng)目標(biāo)不同的后果。因此,該課程具有“雙面”角色,首先是正面角色,即可以解決當(dāng)前我國(guó)軟件安全上面臨的安全問(wèn)題;其次是又具有反面角色,即對(duì)計(jì)算機(jī)病毒技術(shù)的錯(cuò)誤使用。后面一點(diǎn)是高校網(wǎng)絡(luò)空間安全專業(yè)和信息安全專業(yè)人才培養(yǎng)過(guò)程中要特別重視的問(wèn)題。
如何在提升軟件安全課程知識(shí)點(diǎn)的講授過(guò)程中,引導(dǎo)加強(qiáng)學(xué)生思想教育成為該課程的必然要求。而思政融入《軟件安全》課程的講授正是確保我國(guó)高校網(wǎng)絡(luò)安全方向人才正向培養(yǎng)目標(biāo)達(dá)成的必要途徑和手段。
《軟件安全》這門(mén)課程重點(diǎn)圍繞計(jì)算機(jī)病毒編寫(xiě)技術(shù)、隱藏技術(shù)、自我保護(hù)技術(shù),以攻擊者視角來(lái)進(jìn)行學(xué)習(xí),重點(diǎn)是通過(guò)計(jì)算機(jī)病毒知識(shí)的學(xué)習(xí)掌握運(yùn)行機(jī)理和實(shí)現(xiàn)技術(shù),為更好地實(shí)現(xiàn)對(duì)計(jì)算機(jī)病毒進(jìn)行對(duì)抗處置提供支撐,課程具有兩個(gè)方面的維度:知識(shí)講授和能力實(shí)踐。
課程的知識(shí)體系及能力培養(yǎng)遵循教育部高等學(xué)校網(wǎng)絡(luò)空間安全專業(yè)教學(xué)指導(dǎo)委員會(huì)發(fā)布的指導(dǎo)規(guī)范。
北方工業(yè)大學(xué)在講授中分成三大部分:計(jì)算機(jī)病毒分類、計(jì)算機(jī)病毒機(jī)理與技術(shù)、基于漏洞的利用。計(jì)算機(jī)病毒分類更多是讓學(xué)生掌握平展式各分類和分類依據(jù)。在此基礎(chǔ)上掌握各類計(jì)算機(jī)病毒的編寫(xiě)技術(shù)和宿主植入技術(shù)和技巧,利用更多的關(guān)注點(diǎn)放在漏洞的復(fù)現(xiàn)上面,知曉熱點(diǎn)函數(shù)的漏洞原因。
此外,除了課程知識(shí)的講授(如圖1 所示),也提供網(wǎng)絡(luò)空間安全專業(yè)或信息安全專業(yè)學(xué)生的實(shí)踐機(jī)會(huì)。目前北方工業(yè)大學(xué)建有網(wǎng)絡(luò)攻防實(shí)驗(yàn)室、與啟明星辰、天融信等安全企業(yè)建有聯(lián)合實(shí)驗(yàn)室,為專業(yè)學(xué)生的課內(nèi)上機(jī)實(shí)訓(xùn)提供支撐。但是,由于網(wǎng)絡(luò)安全的技術(shù)發(fā)展與實(shí)訓(xùn)系統(tǒng)的滯后更新,所以,在教學(xué)中也充分利用免費(fèi)網(wǎng)絡(luò)資源和一些網(wǎng)絡(luò)實(shí)訓(xùn)平臺(tái)的免費(fèi)實(shí)驗(yàn)等。以興趣小組為牽頭,吸納帶動(dòng)對(duì)惡意代碼技術(shù)感興趣的同學(xué),將課堂知識(shí)轉(zhuǎn)化為實(shí)踐能力,如圖2 所示。
圖1 講授知識(shí)要點(diǎn)Fig.1 Key point of lecture
圖2 實(shí)踐能力Fig.2 Practical ability
2.2.1 國(guó)內(nèi)外研究中未對(duì)選課學(xué)生的個(gè)體差異化學(xué)習(xí)情況做分類督學(xué)
由于《軟件安全》課程知識(shí)點(diǎn)較多,惡意代碼的學(xué)習(xí)和掌握總是存在不理想的局面。國(guó)內(nèi)開(kāi)設(shè)網(wǎng)絡(luò)空間安全專業(yè)或信息安全專業(yè)的各個(gè)兄弟院校提出了諸多教學(xué)經(jīng)驗(yàn)。龐巖梅等[1]提出了基于遷移理論面向正面應(yīng)用的計(jì)算機(jī)病毒課程教學(xué)模式,引導(dǎo)學(xué)生將相應(yīng)技術(shù)遷移到正面問(wèn)題上面,本質(zhì)也是理論結(jié)合實(shí)踐。難點(diǎn)技術(shù)例如Hook 技術(shù)由教師來(lái)演示為主,而通用技術(shù)諸如腳本病毒以學(xué)生主導(dǎo)實(shí)踐為主,并未考慮學(xué)生的知識(shí)接受多樣性和興趣熱度的多態(tài)性。王靜等[2]提出以“學(xué)習(xí)產(chǎn)出”為導(dǎo)向的教學(xué)思路,據(jù)此提出教學(xué)評(píng)價(jià)思想,但是并未給出實(shí)際的評(píng)價(jià)模型或方法。國(guó)外佛羅里達(dá)理工學(xué)院Oconnor 等[3]提出了一個(gè)面向漏洞利用的課程教學(xué)方案,以激發(fā)學(xué)生自主性比賽為實(shí)施途徑的方式提升學(xué)生在漏洞逆向分析、利用代碼編寫(xiě)方面的能力,實(shí)現(xiàn)課程知識(shí)講授和實(shí)踐的結(jié)合。
由此可以看出,無(wú)論國(guó)外高校還是國(guó)內(nèi)高校都是在激發(fā)學(xué)生的主動(dòng)性為途徑以達(dá)到教學(xué)目標(biāo),即強(qiáng)調(diào)教學(xué)和實(shí)踐的集合,但是從當(dāng)前已發(fā)表的教學(xué)實(shí)踐成果中,沒(méi)有充分考慮學(xué)生的分類接受度,因此并未針對(duì)學(xué)生的類別情況作出因勢(shì)利導(dǎo)。
當(dāng)前,按照《軟件安全》課程學(xué)習(xí)的效果將學(xué)生分成三類:(1)因有收獲自主性動(dòng)力強(qiáng)類;(2)因知識(shí)難度喪失興趣類;(3)渾渾噩噩專業(yè)學(xué)習(xí)堅(jiān)持到畢業(yè)類。根據(jù)19 級(jí)、20 級(jí)選課學(xué)生的學(xué)習(xí)狀態(tài)進(jìn)行的分類評(píng)價(jià)呈現(xiàn)正態(tài)分布,如表1 所示。
表1 學(xué)生學(xué)習(xí)情況分類Tab.1 Classification of student learning situation
2.2.2 學(xué)習(xí)主動(dòng)性強(qiáng)的學(xué)生遇到新問(wèn)題,思政入課必要性凸顯
這部分學(xué)生真正理解計(jì)算機(jī)病毒運(yùn)行機(jī)理并具備了一定的技能實(shí)踐的經(jīng)驗(yàn),他們很容易出于炫耀技術(shù)或挑戰(zhàn)更高難度的目的,躍躍欲試的嘗試脫離教師指定的虛擬實(shí)踐環(huán)境,這種心態(tài)很容易造成他們踏入法律法規(guī)的領(lǐng)域。在每一屆學(xué)生和教師的交流中,都會(huì)出現(xiàn)1 ~2名優(yōu)秀同學(xué)或多或少地暴露了這種不良的危險(xiǎn)心理,交流過(guò)程中已及時(shí)糾正,因此,加強(qiáng)思政融入課程教學(xué)是非常必要的和迫切的。
2.2.3 興趣小組的拉動(dòng)作用未達(dá)預(yù)期、效果不明顯
《軟件安全》是網(wǎng)絡(luò)空間安全專業(yè)和信息安全專業(yè)的一門(mén)具有“專業(yè)壁壘屬性”的核心骨干課程,需要學(xué)習(xí)的學(xué)生在理解課程講授知識(shí)的前提下,加強(qiáng)知識(shí)的轉(zhuǎn)化應(yīng)用實(shí)戰(zhàn),體現(xiàn)在計(jì)算機(jī)病毒技術(shù)與進(jìn)階技巧的實(shí)踐,乃至CTF 賽題中的PWN 題目、逆向題目?!盾浖踩返恼n程性質(zhì)決定了要學(xué)習(xí)掌握計(jì)算機(jī)病毒的機(jī)理和技術(shù)離不開(kāi)知識(shí)與實(shí)踐的融合,而不是像諸如其他專業(yè)的學(xué)生通過(guò)簡(jiǎn)單學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)、C 語(yǔ)言就能夠輕松學(xué)習(xí)掌握,充分體現(xiàn)“專業(yè)壁壘屬性”,展現(xiàn)了各類學(xué)生學(xué)習(xí)情況的正態(tài)分布也印證了該屬性的真實(shí)存在。
當(dāng)前隨著興趣小組的內(nèi)部交流,由于知識(shí)難度、實(shí)踐交流講解水平的差異,導(dǎo)致興趣小組內(nèi)優(yōu)秀的同學(xué)知識(shí)掌握越發(fā)牢固、信心也越發(fā)充足,與之對(duì)比的新情況是,新成員由于知識(shí)理解不充分或動(dòng)手實(shí)踐能力受到對(duì)比式降維打擊,出現(xiàn)心理落差,甚至出現(xiàn)放棄心態(tài),最終造成興趣小組的拉動(dòng)作用未達(dá)預(yù)期,呈現(xiàn)學(xué)習(xí)效果不明顯局面。
在講授課程知識(shí)的內(nèi)容時(shí),特別是以某一具體計(jì)算機(jī)病毒舉例展現(xiàn)其實(shí)現(xiàn)技術(shù)細(xì)節(jié)時(shí),加強(qiáng)學(xué)生的守法守紀(jì)教育,特別是對(duì)于動(dòng)手實(shí)踐能力強(qiáng)且躍躍欲試進(jìn)行嘗試的同學(xué)。此外,經(jīng)過(guò)分析,由于網(wǎng)絡(luò)空間安全專業(yè)和信息安全專業(yè)的知識(shí)點(diǎn)多導(dǎo)致的課程數(shù)量上相對(duì)于計(jì)算機(jī)專業(yè)多,使得第2 類學(xué)生普遍編程重復(fù)訓(xùn)練度不足,因此可加強(qiáng)該類學(xué)生的代碼復(fù)現(xiàn),在復(fù)現(xiàn)過(guò)程中,提升自身的編程能力。這一點(diǎn)要求任課教師多部署自選作業(yè)時(shí),需加強(qiáng)學(xué)生思政方面的教育,使其在斷網(wǎng)環(huán)境和虛擬機(jī)環(huán)境內(nèi)復(fù)現(xiàn),確保安全。
《軟件安全》教師加強(qiáng)與興趣小組的實(shí)踐交流溝通,將優(yōu)秀的事件案例安排進(jìn)入課程講授實(shí)例教案或?qū)嶒?yàn)驗(yàn)證中,這樣使得對(duì)同專業(yè)非興趣小組同學(xué)按照步驟復(fù)現(xiàn)學(xué)習(xí),提升對(duì)專業(yè)的熱愛(ài)興趣。同時(shí),興趣小組與我校網(wǎng)絡(luò)中心建立聯(lián)系,在諸如4.29 網(wǎng)絡(luò)安全日等限定時(shí)間,允許學(xué)生實(shí)戰(zhàn)測(cè)試我校網(wǎng)絡(luò)系統(tǒng)的安全性,并根據(jù)上報(bào)測(cè)試結(jié)果給予獎(jiǎng)勵(lì)。這能夠提升興趣小組的拉動(dòng)性,最終形成以點(diǎn)帶面局面,帶動(dòng)更多的信息安全專業(yè)學(xué)生加強(qiáng)對(duì)專業(yè)知識(shí)的學(xué)習(xí)興趣。
本文以北方工業(yè)大學(xué)信息專業(yè)骨干課程《軟件安全》為例,探討了信息安全專業(yè)學(xué)生的學(xué)習(xí)效果分類并分析了原因。在知識(shí)的學(xué)習(xí)和實(shí)踐經(jīng)驗(yàn)研討中,闡述了思政入課的必要性和對(duì)《軟件安全》課程教學(xué)的必要性以及正向促進(jìn)性。
引用
[1] 龐巖梅,李冬冬,范潔.基于遷移理論面向正面應(yīng)用的計(jì)算機(jī)病毒課程教學(xué)模式[J].北京電子科技學(xué)院學(xué)報(bào),2021,29(1):27-33.
[2] 王靜,熊育婷.以“學(xué)習(xí)產(chǎn)出”為導(dǎo)向的計(jì)算機(jī)病毒課程教學(xué)方法研究[J].網(wǎng)絡(luò)空間安全,2018,9(8):98-102..
[3] OCONNOR T J,MANN C,PETERSEN T.Toward an Automatic Exploit Generation Competition for an Undergraduate Binary Reverse Engineering Course[C]//Proceedings of the 27th ACM Conference on Innovation and Technology in Computer Science Education,2022(1):442-448.