北方工業大學 杜春來
當前,隨著軟件功能的需求增加,導致代碼量的規模不斷持續擴大且復雜度激增,攻擊者通過實施惡意代碼的注入、隱藏使得用戶面臨極大的風險,如何有效與之對抗的需求越發強烈。高校肩負人才的培養職能,針對《軟件安全》課程在提升學生對惡意代碼分析與對抗能力的同時,因該課程知識的“雙刃劍”安全屬性,需將思政融入課程,加強學生的守法守紀教育。
《軟件安全》是我國高校網絡空間安全專業和信息安全專業的一門骨干課程,重點以攻擊者視角講授計算機病毒的編寫、隱藏、自我保護技術等和因“知其所以然”拓展的計算機病毒防御技術,更好地培養計算機病毒的對抗分析人才。同時為了更好地培養專業人才,從知識點的章節分配看,當前高校教材更多的篇幅側重計算機病毒的編寫技術,不僅涉及基礎理論的講授,也涉及具體實現技術的講解,諸如計算機病毒重定位技術、Kernel32 核心庫地址的獲取技術,乃至花指令技術、多態技術、變形技術。從計算機病毒的類型上看,該課程不僅涉及二進制病毒,也涉及腳本病毒、宏病毒等。
《軟件安全》課程講授的知識點具有很強的技術轉化性,如果在教學中不側重政治思想教育,將導致與培養目標不同的后果。因此,該課程具有“雙面”角色,首先是正面角色,即可以解決當前我國軟件安全上面臨的安全問題;其次是又具有反面角色,即對計算機病毒技術的錯誤使用。后面一點是高校網絡空間安全專業和信息安全專業人才培養過程中要特別重視的問題。
如何在提升軟件安全課程知識點的講授過程中,引導加強學生思想教育成為該課程的必然要求。而思政融入《軟件安全》課程的講授正是確保我國高校網絡安全方向人才正向培養目標達成的必要途徑和手段。
《軟件安全》這門課程重點圍繞計算機病毒編寫技術、隱藏技術、自我保護技術,以攻擊者視角來進行學習,重點是通過計算機病毒知識的學習掌握運行機理和實現技術,為更好地實現對計算機病毒進行對抗處置提供支撐,課程具有兩個方面的維度:知識講授和能力實踐。
課程的知識體系及能力培養遵循教育部高等學校網絡空間安全專業教學指導委員會發布的指導規范。
北方工業大學在講授中分成三大部分:計算機病毒分類、計算機病毒機理與技術、基于漏洞的利用。計算機病毒分類更多是讓學生掌握平展式各分類和分類依據。在此基礎上掌握各類計算機病毒的編寫技術和宿主植入技術和技巧,利用更多的關注點放在漏洞的復現上面,知曉熱點函數的漏洞原因。
此外,除了課程知識的講授(如圖1 所示),也提供網絡空間安全專業或信息安全專業學生的實踐機會。目前北方工業大學建有網絡攻防實驗室、與啟明星辰、天融信等安全企業建有聯合實驗室,為專業學生的課內上機實訓提供支撐。但是,由于網絡安全的技術發展與實訓系統的滯后更新,所以,在教學中也充分利用免費網絡資源和一些網絡實訓平臺的免費實驗等。以興趣小組為牽頭,吸納帶動對惡意代碼技術感興趣的同學,將課堂知識轉化為實踐能力,如圖2 所示。

圖1 講授知識要點Fig.1 Key point of lecture

圖2 實踐能力Fig.2 Practical ability
2.2.1 國內外研究中未對選課學生的個體差異化學習情況做分類督學
由于《軟件安全》課程知識點較多,惡意代碼的學習和掌握總是存在不理想的局面。國內開設網絡空間安全專業或信息安全專業的各個兄弟院校提出了諸多教學經驗。龐巖梅等[1]提出了基于遷移理論面向正面應用的計算機病毒課程教學模式,引導學生將相應技術遷移到正面問題上面,本質也是理論結合實踐。難點技術例如Hook 技術由教師來演示為主,而通用技術諸如腳本病毒以學生主導實踐為主,并未考慮學生的知識接受多樣性和興趣熱度的多態性。王靜等[2]提出以“學習產出”為導向的教學思路,據此提出教學評價思想,但是并未給出實際的評價模型或方法。國外佛羅里達理工學院Oconnor 等[3]提出了一個面向漏洞利用的課程教學方案,以激發學生自主性比賽為實施途徑的方式提升學生在漏洞逆向分析、利用代碼編寫方面的能力,實現課程知識講授和實踐的結合。
由此可以看出,無論國外高校還是國內高校都是在激發學生的主動性為途徑以達到教學目標,即強調教學和實踐的集合,但是從當前已發表的教學實踐成果中,沒有充分考慮學生的分類接受度,因此并未針對學生的類別情況作出因勢利導。
當前,按照《軟件安全》課程學習的效果將學生分成三類:(1)因有收獲自主性動力強類;(2)因知識難度喪失興趣類;(3)渾渾噩噩專業學習堅持到畢業類。根據19 級、20 級選課學生的學習狀態進行的分類評價呈現正態分布,如表1 所示。

表1 學生學習情況分類Tab.1 Classification of student learning situation
2.2.2 學習主動性強的學生遇到新問題,思政入課必要性凸顯
這部分學生真正理解計算機病毒運行機理并具備了一定的技能實踐的經驗,他們很容易出于炫耀技術或挑戰更高難度的目的,躍躍欲試的嘗試脫離教師指定的虛擬實踐環境,這種心態很容易造成他們踏入法律法規的領域。在每一屆學生和教師的交流中,都會出現1 ~2名優秀同學或多或少地暴露了這種不良的危險心理,交流過程中已及時糾正,因此,加強思政融入課程教學是非常必要的和迫切的。
2.2.3 興趣小組的拉動作用未達預期、效果不明顯
《軟件安全》是網絡空間安全專業和信息安全專業的一門具有“專業壁壘屬性”的核心骨干課程,需要學習的學生在理解課程講授知識的前提下,加強知識的轉化應用實戰,體現在計算機病毒技術與進階技巧的實踐,乃至CTF 賽題中的PWN 題目、逆向題目?!盾浖踩返恼n程性質決定了要學習掌握計算機病毒的機理和技術離不開知識與實踐的融合,而不是像諸如其他專業的學生通過簡單學習數據結構、C 語言就能夠輕松學習掌握,充分體現“專業壁壘屬性”,展現了各類學生學習情況的正態分布也印證了該屬性的真實存在。
當前隨著興趣小組的內部交流,由于知識難度、實踐交流講解水平的差異,導致興趣小組內優秀的同學知識掌握越發牢固、信心也越發充足,與之對比的新情況是,新成員由于知識理解不充分或動手實踐能力受到對比式降維打擊,出現心理落差,甚至出現放棄心態,最終造成興趣小組的拉動作用未達預期,呈現學習效果不明顯局面。
在講授課程知識的內容時,特別是以某一具體計算機病毒舉例展現其實現技術細節時,加強學生的守法守紀教育,特別是對于動手實踐能力強且躍躍欲試進行嘗試的同學。此外,經過分析,由于網絡空間安全專業和信息安全專業的知識點多導致的課程數量上相對于計算機專業多,使得第2 類學生普遍編程重復訓練度不足,因此可加強該類學生的代碼復現,在復現過程中,提升自身的編程能力。這一點要求任課教師多部署自選作業時,需加強學生思政方面的教育,使其在斷網環境和虛擬機環境內復現,確保安全。
《軟件安全》教師加強與興趣小組的實踐交流溝通,將優秀的事件案例安排進入課程講授實例教案或實驗驗證中,這樣使得對同專業非興趣小組同學按照步驟復現學習,提升對專業的熱愛興趣。同時,興趣小組與我校網絡中心建立聯系,在諸如4.29 網絡安全日等限定時間,允許學生實戰測試我校網絡系統的安全性,并根據上報測試結果給予獎勵。這能夠提升興趣小組的拉動性,最終形成以點帶面局面,帶動更多的信息安全專業學生加強對專業知識的學習興趣。
本文以北方工業大學信息專業骨干課程《軟件安全》為例,探討了信息安全專業學生的學習效果分類并分析了原因。在知識的學習和實踐經驗研討中,闡述了思政入課的必要性和對《軟件安全》課程教學的必要性以及正向促進性。
引用
[1] 龐巖梅,李冬冬,范潔.基于遷移理論面向正面應用的計算機病毒課程教學模式[J].北京電子科技學院學報,2021,29(1):27-33.
[2] 王靜,熊育婷.以“學習產出”為導向的計算機病毒課程教學方法研究[J].網絡空間安全,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.