课程思政融入信息安全专业课程《软件安全》的教学实践
2023-11-12北方工业大学杜春来
北方工业大学 杜春来
当前,随着软件功能的需求增加,导致代码量的规模不断持续扩大且复杂度激增,攻击者通过实施恶意代码的注入、隐藏使得用户面临极大的风险,如何有效与之对抗的需求越发强烈。高校肩负人才的培养职能,针对《软件安全》课程在提升学生对恶意代码分析与对抗能力的同时,因该课程知识的“双刃剑”安全属性,需将思政融入课程,加强学生的守法守纪教育。
1 思政融入《软件安全》课程讲授的必要性
《软件安全》是我国高校网络空间安全专业和信息安全专业的一门骨干课程,重点以攻击者视角讲授计算机病毒的编写、隐藏、自我保护技术等和因“知其所以然”拓展的计算机病毒防御技术,更好地培养计算机病毒的对抗分析人才。同时为了更好地培养专业人才,从知识点的章节分配看,当前高校教材更多的篇幅侧重计算机病毒的编写技术,不仅涉及基础理论的讲授,也涉及具体实现技术的讲解,诸如计算机病毒重定位技术、Kernel32 核心库地址的获取技术,乃至花指令技术、多态技术、变形技术。从计算机病毒的类型上看,该课程不仅涉及二进制病毒,也涉及脚本病毒、宏病毒等。
《软件安全》课程讲授的知识点具有很强的技术转化性,如果在教学中不侧重政治思想教育,将导致与培养目标不同的后果。因此,该课程具有“双面”角色,首先是正面角色,即可以解决当前我国软件安全上面临的安全问题;其次是又具有反面角色,即对计算机病毒技术的错误使用。后面一点是高校网络空间安全专业和信息安全专业人才培养过程中要特别重视的问题。
如何在提升软件安全课程知识点的讲授过程中,引导加强学生思想教育成为该课程的必然要求。而思政融入《软件安全》课程的讲授正是确保我国高校网络安全方向人才正向培养目标达成的必要途径和手段。
2 《软件安全》课程教学的现状
《软件安全》这门课程重点围绕计算机病毒编写技术、隐藏技术、自我保护技术,以攻击者视角来进行学习,重点是通过计算机病毒知识的学习掌握运行机理和实现技术,为更好地实现对计算机病毒进行对抗处置提供支撑,课程具有两个方面的维度:知识讲授和能力实践。
2.1 软件安全课题知识体系
课程的知识体系及能力培养遵循教育部高等学校网络空间安全专业教学指导委员会发布的指导规范。
北方工业大学在讲授中分成三大部分:计算机病毒分类、计算机病毒机理与技术、基于漏洞的利用。计算机病毒分类更多是让学生掌握平展式各分类和分类依据。在此基础上掌握各类计算机病毒的编写技术和宿主植入技术和技巧,利用更多的关注点放在漏洞的复现上面,知晓热点函数的漏洞原因。
此外,除了课程知识的讲授(如图1 所示),也提供网络空间安全专业或信息安全专业学生的实践机会。目前北方工业大学建有网络攻防实验室、与启明星辰、天融信等安全企业建有联合实验室,为专业学生的课内上机实训提供支撑。但是,由于网络安全的技术发展与实训系统的滞后更新,所以,在教学中也充分利用免费网络资源和一些网络实训平台的免费实验等。以兴趣小组为牵头,吸纳带动对恶意代码技术感兴趣的同学,将课堂知识转化为实践能力,如图2 所示。
图1 讲授知识要点Fig.1 Key point of lecture
图2 实践能力Fig.2 Practical ability
2.2 《软件安全》课程教学开展中发现的一些问题
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 题目、逆向题目。《软件安全》的课程性质决定了要学习掌握计算机病毒的机理和技术离不开知识与实践的融合,而不是像诸如其他专业的学生通过简单学习数据结构、C 语言就能够轻松学习掌握,充分体现“专业壁垒属性”,展现了各类学生学习情况的正态分布也印证了该属性的真实存在。
当前随着兴趣小组的内部交流,由于知识难度、实践交流讲解水平的差异,导致兴趣小组内优秀的同学知识掌握越发牢固、信心也越发充足,与之对比的新情况是,新成员由于知识理解不充分或动手实践能力受到对比式降维打击,出现心理落差,甚至出现放弃心态,最终造成兴趣小组的拉动作用未达预期,呈现学习效果不明显局面。
3 《软件安全》课程的一点经验建议
3.1 课程思政融入《软件安全》课程教学是非常必要的
在讲授课程知识的内容时,特别是以某一具体计算机病毒举例展现其实现技术细节时,加强学生的守法守纪教育,特别是对于动手实践能力强且跃跃欲试进行尝试的同学。此外,经过分析,由于网络空间安全专业和信息安全专业的知识点多导致的课程数量上相对于计算机专业多,使得第2 类学生普遍编程重复训练度不足,因此可加强该类学生的代码复现,在复现过程中,提升自身的编程能力。这一点要求任课教师多部署自选作业时,需加强学生思政方面的教育,使其在断网环境和虚拟机环境内复现,确保安全。
3.2 兴趣小组的拉动作用还需深入挖掘
《软件安全》教师加强与兴趣小组的实践交流沟通,将优秀的事件案例安排进入课程讲授实例教案或实验验证中,这样使得对同专业非兴趣小组同学按照步骤复现学习,提升对专业的热爱兴趣。同时,兴趣小组与我校网络中心建立联系,在诸如4.29 网络安全日等限定时间,允许学生实战测试我校网络系统的安全性,并根据上报测试结果给予奖励。这能够提升兴趣小组的拉动性,最终形成以点带面局面,带动更多的信息安全专业学生加强对专业知识的学习兴趣。
4 结语
本文以北方工业大学信息专业骨干课程《软件安全》为例,探讨了信息安全专业学生的学习效果分类并分析了原因。在知识的学习和实践经验研讨中,阐述了思政入课的必要性和对《软件安全》课程教学的必要性以及正向促进性。
引用
[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.