高校挑战性课程教学模式探索与实践——以数据安全与取证课程为例

时间:2024-03-14 14:44:02 来源:网友投稿

杨 挺

(电子科技大学 计算机科学与工程学院,四川 成都 611731)

随着中国网信事业的蓬勃发展,在网络安全和信息化工作持续推进过程中,网络空间安全所需的复合型人才的需求缺口持续扩大,且对相关人才的问题解决、创新思维和工程实践等能力提出了更高要求。高校教育不仅需要提供扎实的理论知识,而且能够让学生学习处理现实世界的实际问题[1],具备解决复杂工程问题的能力。网络空间安全直接面向工程,面向应用的专业领域,因此信息安全专业教育需要结合实际情况,探索符合国情和时代的教学模式,以提升教育水平。然而,采用传统的教学和学习方法难以吸引学生并激励其取得成就感,理论教学也很难满足网络空间安全的工程实践需求。因此,针对问题和项目的挑战式学习模式将在网络空间安全教育中发挥着越来越重要的作用。

挑战性课程的设计随着教育理念的发展,在实践中不断进步。从20世纪60年代末,美国Howard Barrows提出以学生为中心的问题式教学法(Problem-based Learning,PL)开始,到2008年,苹果公司针对现代工程教育首先提出了挑战式学习(Challenge Based Learning,CBL)教学理念[2-3],围绕着“学”和“问”探索培养下一代工程师的方式。马萨诸塞大学波士顿分校在CBL的理念下,通过竞赛驱动,完成了综合性的学习任务[4]。

以挑战式学习为主要教学手段的课程即为挑战性课程。我国清华大学在同一时期,即2008年开始探索挑战性学习课程理论,在2012年通过开展15门挑战课来启动挑战性学习课程建设[5],构建了高强度师生互动模式促进学生的主动学习。上海交通大学信息安全综合实践课程根据工科学生的学习特征[6]设计了课程内容、问题导向和挑战的教学方案,直接启发了本文的挑战课程设计。上述研究表明,以学生为中心的挑战课程确实能够在培养学生的问题发现、自主学习、交流表达、团队管理等能力方面起到积极作用。从复合型人才培养角度,挑战课程也开始逐步纳入多学科内容,例如在文献[7]中,课程鼓励学生自主选择跨学科的技术方案来解决挑战问题;
文献[8]提出将课题的教学内容分成多个小主题,串联成一个整体主线课题进行教学;
文献[9]则通过一系列的APP小任务学习神经系统结构和功能,目标明确,但不适用于知识点繁多的应用型课程。而在另外一些研究中,更关心在教学内容之外支持课程实施的方法,包括支持学生借助社交媒体完成课程目标、创建学习氛围[10]、重视教师关怀[11]和通过建模构建学习评估系统[12]等方式。总体而言,挑战式教学模式也在不断发展,为主动型学生提供了绝佳的学习环境,也对教师提出了更高要求。

在信息安全领域,应用类课程常常需要覆盖较多技术,例如在数据安全与取证课程中,需要对文件系统、数据库、内存、计算机网络等可以保存数据的部件或文件进行取证与数据恢复,而仅一个挑战目标无法覆盖所有内容。因此,需要构建多个挑战目标覆盖课程的知识点。由于课时有限,若要求学生同时完成多个挑战目标,任务安排明显不合理。因此,本文提出将各个目标分为若干阶段,以叠瓦式方式进行安排,让学生能够在有限时间内完成多个挑战任务。挑战课程设置以学生为中心的系列挑战任务,该设计可增强学生的参与度,促进学生自学和团队合作,提升学生自主解决复杂工程问题的能力。

在新工科建设的背景下,电子科技大学教育教学改革研究项目对现代教育进行了探索与实践,构建了多个挑战性课程。其中,数据安全与取证技术课程按挑战性课程设计。该课程通过快速构建基础知识框架,让学生集中投入大量实践时间,并辅以研讨互动,进一步全面掌握相关知识。在此基础上,学生可以进一步拓展学科知识,培养创新能力。多阶段挑战课程的教学模式主要从3个方面进行建设,即课程学时分配、挑战目标阶段划分和挑战目标分类。

为了发挥学生的主动性,课程的基础知识讲授不应超过课程的1/3。剩余时间应由教师组织和指导,为师生提供讨论和分享的时间及空间。数据安全与取证技术挑战课程总课时为24学时,课程学时分配比例如图1所示。为了支持基础操作和环境搭建,实验操作课为4学时,对基础理论、核心技术、项目目标的讲授内容仅占6学时,评估过程占4学时,作品呈现和方案研讨为10学时。

Fig.1 Class hours allocation ratio图1 课程学时分配比例

挑战课程需要培养学生的综合开发能力,因此最好选择在大三期间开展课程,难度可以通过学生完成课程的时间进行初步判断,平均1:1的课内/课外时间比是合适的。根据调查,参加挑战课的小组完成任务的时间如表1所示,课外总占用时间平均为20~68h。技术能力欠缺的小组,课内/课外时间占比约为1:3。

Table 1 Statistics of extra-curricular time表1 课外占用时间统计

数据安全与取证技术挑战课程构建了“基础知识—挑战目标—主动学习—研讨—评估—拓展—创新”的多阶段教学模式,让学生快速、主动地获得专业知识,培养工程实践能力与团队协同能力,并激发创新意识。该课程的教学模式和挑战目标如图2所示。基于问题的学习[13],可让学生主动学习基础和专业知识,并将过去课程中学习的知识用于完成挑战目标。对教师而言,设计挑战目标时,最重要的原则是让挑战目标彼此之间高度相关,根据课程进度让学生能够不断达到特定目标,获得成就感。在依次完成挑战目标后,学生将遇到更多待解决的问题,激发其挑战兴趣。

Fig.2 Challenging teaching mode图2 挑战式教学模式

课程根据挑战目标,陆续对文件系统、日志系统、数字图像处理等基础知识结合案例进行讲授,构建课程的上下文环境,让学生对这些技术领域有个初步认知,了解各领域的发展进展,便于学生寻找研究资料,并提供解决挑战目标的关键技术和知识。

课程将挑战目标分为3类:“基础挑战”、“专项挑战”和“擂台赛”。基础挑战提供专业背景知识,专项挑战体现课程核心内容,擂台赛进行专业拓展,提升创新能力。

“基础挑战”构建一个虚拟案例,赋予学生探案角色,学生需要用文件系统的基本知识和工具进行数据恢复,再根据司法取证的标准流程完成取证,从而直接让学生进入一个身临其境的实践环节。在课程的第一次课中,学生需要通过“基础挑战”完成基础训练,并达到以下几个目标:首先学生对彼此之间的能力、习惯形成了一个初步认识,便于在后续学习过程中组建小组;
其次,具备该领域的基础知识,掌握相关工具的使用,确定开发环境;
最后,熟悉专项挑战的3个学习阶段。

随着课程的进展,课程在第二周即进入专项挑战目标环节。专项挑战目标环节设计了3个目标,即文件雕刻、日志分析和图像伪造检测。各专项挑战的教学过程分为4个阶段,即主动学习、讨论、评估和拓展阶段。

主动学习阶段是学生在课后分工进行相关资料的阅读,寻找最佳解决方案,通过主动寻找资料完成知识的积累。实践发现,不同小组主动学习的能力不同,在完成第一个目标挑战任务时,查找的资料通常还局限于课程资料、中文资料,学术论文涉及较少,而在完成第三个任务时,很多小组查询资料的数量和范围明显扩大,能够找到很多有效的解决方案。

讨论和评估阶段的设计需要充分考虑团队间的合作与竞争关系,实现激烈但不冲突、互助但不迁让的学习环境。在讨论阶段,各小组分别将学习的知识和讨论的解决方案进行跨组共享,研讨挑战目标的技术路线,展示初步进展,并相互解答疑难问题,实现团队之间相互沟通和协助。该阶段的另一个目标是基本完成作品的小组能够继续修改和完善技术方案,并协助能力欠缺的小组继续完成挑战任务。在评估阶段,学生和教师将共同对挑战目标的完成度进行评价与打分。课程通过设计各阶段的评分标准,让研讨阶段和评估阶段的讨论激烈化,增强学生的投入感。从效果上看,研讨和评估阶段能够培养学生的批判性思维。从教学效果上看,各阶段的讨论会随着学生对课程内容的熟悉而趋向于白热化。为了减少冲突,讨论的礼节和氛围掌控是课程指导中教师需要注意的重点。通过评估阶段,能力较强的小组甚至能够在原基础之上有所创新,为拓展阶段打下良好基础。

在课程后期,各小组已积累了足够的专业领域知识和工程经验,并且完成了团队磨合,至此可进入拓展阶段。拓展阶段主要通过擂台赛完成,各小组将自主进行命题,并在完成相关工作后构建擂台目标。小组进行评估后,可以相互选择挑战目标。由于各小组的创新和把控能力不同,自主命题的难度可能过高或过低,吸引力不够,导致擂台上的挑战题目较少,不够分配,因此没有选题的小组可以在已完成的挑战目标基础上继续优化任务。另外,教师也可以提前准备1~2个题目,增加擂台赛的选择。该阶段的主要目的是让学生从命题过程中,将学习到的知识进行再组织,鼓励其开拓性地发掘新的工程目标,培养创新意识。

挑战课程的挑战目标可以分为3类,即案例资源、基础挑战和专项挑战。其内容的选择在于是否能够在挑战过程中提高学生的学习效率与学习主动性,增强学生的团队合作能力和面对复杂工程问题时解决问题的能力。同时,挑战内容还需要综合考虑知识覆盖面与挑战目标的平衡以及挑战难度的阶梯递增关系。另外,专项挑战任务难度大,需要根据每届学生的实际能力变化目标难度。

2.1 案例资源设计

课程根据挑战目标设计了案例资源,包括案例虚拟盘、文件碎片挑战包和图像库。案例虚拟盘模拟一个刑事案件调查中获取的证物,学生需要代入司法鉴定所的电子数据鉴定人员角色,通过分区恢复、文件恢复、文件垃圾箱取证、MAC时间取证、关键词搜索等操作,完成鉴定表。文件碎片包为50MB,包含了JPEG、ZIP、HTML、Text和Microsoft Office等文件碎片。挑战包中包含32个文件,分为若干挑战场景,例如在碎片化的HTML场景中,HTML文件分为头尾两块,中间是其它数据,例如JPEG文件、Word文件、随机数据或text文件等。根据教学需要,学生可以自选不同文件格式的类型开发相应工具,尽力从文件碎片包中提取尽量多的文件。图像库采用萨格勒布大学视频通信实验室提供的复制粘贴图像库[14],包括260张伪造图像,涉及平移、旋转、缩放、组合和变形处理5大类别。学生需要实现基于离散余弦变换DCT的暴力匹配检测进行辩伪,然后通过主动学习完成旋转、缩放、组合和变形处理的图像取证算法代码。

2.2 基础挑战设计

基础挑战通过教师引入案例故事进行理论知识讲解,让学生熟悉专业术语和行业背景,最后通过案例快速了解行业标准、规范和基础技能。该挑战通过虚拟案例完成,2021年的基础挑战设计了一个MBR被破坏的虚拟硬盘镜像文件,虚拟硬盘中有一批图像文件,以及存放物证的密码文件(已删除)。该挑战目标需要根据取证流程规定,完成包括数据恢复、图像文件时间线判断和密码文件搜索等目标。从课程知识点看,基础挑战需要学生熟悉文件系统结构,包括MBR、分区表、FAT文件系统以及文件的MAC时间属性、哈希计算、文件数据保存位置等内容。除知识点学习外,该环节的教学目标还有两个:一是使学生熟悉专业方向场景和操作流程;
二是在小组中初步尝试合作解决问题,用最短的时间完成磨合,确保在进行后续挑战任务前能够顺利组队。

2.3 专项挑战设计

在专项挑战目标中设计了3个专项挑战,即文件雕刻、日志分析和图像伪造检测。该阶段的教学目标主要为培养学生解决问题的能力。如图3所示,3个专项挑战的难度经过刻意安排,呈叠瓦式部署,确保学生在一个星期内只需重点开发一个项目。例如任务最繁忙的第4周,学生需要重点开发日志分析任务,同时学习图像取证相关内容,但可避免同时编写两个项目的代码,因此不会有太多冲突。另外,组队的方式需要能够让学生合理分配时间。

Fig.3 Stages of specific challenge图3 专项挑战的各个阶段

文件雕刻需要学生对磁盘中残留的文件碎片进行恢复,涉及扇区操作以及多种文件格式分析和文件雕刻算法。因此,课程首先介绍文件雕刻原理,并在课堂上通过开源工具Scalpel针对特别制作的挑战素材进行初步的文件恢复,同时为学生提供了相关论文作为学习资料,再让各小组各自选择两种文件类型开发自己的工具进行文件碎片恢复。出于复杂性方面的考虑,多数同学选择了JPEG和HTML,部分小组选择了TXT和ZIP进行数据恢复,没有小组选择复合文档恢复。

日志分析挑战目标的主要课程内容是学习使用rsylog用于跟踪用户登录、登出等认证活动,并记录到/var/log/forensics.log 中。课程将指导学生创建一个MySQL数据库和一个“event”表用于记录和分析。挑战目标需要学生开发日志解析程序,该程序具有持续监视日志文件、转换多种标准格式、解析用户认证活动中的关键信息,将时间戳的GMT格式转换为UTC格式等功能,最后将分析结果插入到数据库的“event”表中。该任务要求学生具备较强的综合能力,需要完成前端、后台和数据库交互,构成一个完整框架。学生需要设计与实现相关的数据分析、协议过程分析、格式转换和数据库操作等内容。

图像伪造检测的挑战目标是识别数字图像中伪造的部分,包括区域复制粘贴、不同图片区域合成等伪造操作。由于多数学生没有学习数字图像处理课程,该环节需要让学生尽快学习数字图像处理的基础知识和相关算法库,主要包括数字图像处理中的算术运算、空间操作、图像变换、图像篡改技术、图像矩等核心知识。挑战目标的设计是提供一个图像库,图像库中有若干伪造的图像,学生需要通过设计与实现软件,对图像库中所有图像进行辨认,找出伪造的图像。课程提供了基础算法,但只能解决1/3的图像识别问题,课程还提供了一些常规思路,能解决另外1/3的图像识别问题,剩下的问题学生必须通过资料查找两类图像辨认算法或自己设计新算法来解决。

2.4 擂台赛设计

在经历了一系列挑战后,课程进入擂台赛,该阶段着重培养学生提出问题的能力。在擂台赛阶段,由教师和小组出题,即提出“擂台目标”,学生组从中选择挑战题目。该阶段要求小组提出挑战题目的同时也需要提供解决方案和答案。为了让挑战题目难度更加合理,课程为擂台赛作了以下设置:

(1)若存在其他小组选择本队提出的擂台目标,则本队获得加分。该规则的设计目的在于避免小组提出的擂台目标难度过大,其他小组不会选择该题目。

(2)擂台赛的评分按小组数量划分为不同的档次,且每个分数具有唯一性。该规则的设计目的是为了防止某些小组提出的挑战内容难度过小,导致其它小组获得高分。

(3)教师需要提前准备几个擂台题目,作为部分小组题目没有被选中时的候选题目。

2.5 能力拓展

在教师确定专项挑战后,每个专项挑战安排3个阶段,即研讨、评估和拓展阶段。评估和拓展阶段均包含作品展示部分,3个阶段均有不同的教学目标。

研讨阶段的主要目标是培养团队与团队间的合作和交流能力。该阶段分为课堂小组间研讨和课后的小组内部研讨。

评估阶段的主要目标是提升学生对知识掌握情况的评估能力。学生通过对其它小组的作品进行评估和他队对自己的评估,从两个方面取长补短,了解自身的优点和不足。教师既需要对学生的评估进行总结,又需要根据经验提出各种改进意见。在评估阶段,教师需要努力将评估过程转变为自由发言的脑力风暴,激发创新思维。例如在文件雕刻的评估过程中,一个小组的学生突然意识到调试过程过于繁琐,因此在拓展阶段开发了界面工具,以减少调试过程。

在拓展阶段,学生除完成挑战内容的课程要求外,还需要额外实现与挑战内容相关的功能。创新性越强,评价越高。从结果中可以看到,当学生通过前两阶段的学习和训练后,已完全掌握相关知识、算法和技能,在拓展阶段的发挥自由度则比较高。有的小组会开发辅助工具,有的小组设计新算法,有的小组增强处理功能,往往令人耳目一新。

课程评价采用形成性评价与总结性评价相结合的形式。形成性评价需要对学生在设计、研讨、相互协作、功能实现、成果展示各个阶段进行评价,总结性评价主要根据各挑战报告进行评价。由于设计、成果展示等过程评价的主观性较强,学生参与上述环节的评价过程,将这些阶段的学生评分比例控制在80%左右。评价内容如表2所示,从工程教育角度,通过表达/研讨效果鼓励学生提高组织管理能力、语言和文字表达能力;
通过研讨工程完整性,培养学生的计算机软硬件系统设计和方案选择能力;
通过评估成果是否具有突破/创新性,让学生思考自身的创新意识和国际竞争力。

Table 2 Student evaluation system表2 学生评价系统

此外,评分采用阶梯制,防止学生在评分时相互敷衍,同时教师也需要参与所有组的评价,并给出评价报告。评价报告包括展示表现、研讨效果、创新能力、代码可读性和整洁度等内容。由于学生的主动参与,学生对评分标准的合理性较为满意(4.5/5分)。

为了解教学效果,课程结束后进行了教学效果调查,如表3所示。

Table 3 Investigation on after-school teaching effect表3 课后教学效果调查

教学效果的统计显示挑战课程的难度超出年级学生的平均能力。在60%的学生在基础挑战后就退出课程的情况下,坚持学习课程的学生认为课程难度和内容饱和度均为4.5。但从第一个专项挑战开始到最后的擂台赛,能够看到学生各项能力的进步显著。根据调查,学生认为提升最大的是自学能力、团队合作和交流能力,其次是编程能力。例如有仅能够完成编程作业的学生投入大量时间后,也能够独立完成图像取证项目。但统计结果也反映了一些问题,例如文献查找能力和创新能力提升效果不佳。因此,后续课程需要补充查找文献的技巧和创新思维教学。从总体上看,学生的实践能力获得了较大提升,学生开阔了视野,对项目的把控,以及自学能力、团体协作能力、主动学习和创新能力均得到了提升。

本文通过数据安全与取证挑战性课程的实践,形成了分阶段的挑战课程教学设计模式和挑战目标选择方法,达到了提升学生学习的主动性、扩大知识面、培养其综合开发和创新能力的效果。课程安排在第三学年的第二学期,本阶段完成该课程的学生参与各种竞赛的需求明显降低,因而很难将所学知识应用到实践中。因此,第三学年的挑战课程设计最好以培养学术研究能力出发,增加文献查询和创新性引导,可能更能符合该阶段学生的需求。最后,本课程未来将建立健全的配置管理措施和标准化的软件接口,构造跨届的挑战项目,以促进各届学生之间的交流,以取得更好的教学效果。

猜你喜欢挑战阶段图像改进的LapSRN遥感图像超分辨重建黑龙江大学自然科学学报(2022年4期)2022-11-17关于基础教育阶段实验教学的几点看法科学与社会(2022年1期)2022-04-19有趣的图像诗作文小学中年级(2020年6期)2020-07-24在学前教育阶段,提前抢跑,只能跑得快一时,却跑不快一生。莫愁(2019年36期)2019-11-13大热的O2O三个阶段,你在哪?营销界(2015年22期)2015-02-28两岸婚恋迈入全新阶段海峡姐妹(2015年6期)2015-02-27第52Q 迈向新挑战当代体育·扣篮(2014年8期)2014-05-23遥感图像几何纠正中GCP选取自然资源遥感(2014年3期)2014-02-27趣味数独等4则意林(2011年10期)2011-05-14

推荐访问:课程 为例 取证