基于SPOC平台的翻转课堂教学研究

计算机教育 / 2018年05月14日 09:52

互联网+

SPOC环境下以 学习评价 为中心的翻转课堂教学模式改革

曹琰++王禹++丁文博++魏强

摘 要:针对漏洞分析课程存在理解抽象、实践性强、前序知识依赖度高的特点,构建涵盖流媒体、实验环境和知识体系导教的SPOC教学平台,提出基于SPOC平台开展漏洞分析课程翻转课堂教学改革的方法,从线上线下课堂、实验教学和考核方式等方面阐述具体改革内容。

关键词:漏洞分析;私播课;翻转课堂

0 引 言

2008年,加拿大爱德华王子岛大学的Dave Cormier教授提出了慕课(massive open online courses, MOOC)的概念[1]。它具有大规模(massive,每门课程同时学习人数可达数千至上万甚至几十万)、开放(open,学习内容免费,尊崇创用共享協议)、在线(online,学习资源通过互联网存储和传播)的特点。将慕课资源植入校内平台,针对学生的学习特点,结合课程属性,灵活调整教学内容,提供与慕课平台类似的课外学习环境,由此诞生了私播课(small private online course, SPOC)[2]。私播课针对的是几十人或者上百人规模的在线学习,其最大特点是面向指定人群,很好地将慕课技术应用于大学课堂教学之中。

漏洞分析课程是网络空间安全专业学科教学内容的重要组成,旨在对软件脆弱性进行发现和分析,从而达到维护信息系统安全的目的。该课程涉及底层汇编语言、程序逆向分析、操作系统内核原理等知识,具有理解抽象、技术难度大、前序课程相关性强、实践能力要求高等特点。将SPOC平台技术引入漏洞分析课,翻转课堂教学改革,是促进该课程教学方法改进的有效手段。

1 漏洞分析课程教学现状

漏洞分析技术是信息安全领域的研究热点和难点,也是网络空间安全专业学科不同学历层次学生的重要学习内容之一。根据漏洞分析技术特点和对已开设的相关课程的教学调研,目前漏洞分析课程存在的主要问题总结如下。

1.1 漏洞分析对象众多,知识碎片化

漏洞分析目标对象众多,包括操作系统、应用软件、硬件、数据库、网络协议、Web系统等,每个对象的漏洞检测和分析方法差别较大,在测试环境、样本构造、异常监控方法等方面都存在很大差异。比如,在测试环境方面Web应用的漏洞检测需要搭建客户端和服务端环境,而文件类程序的安全测试只需要在本地进行即可;在样本构造方面,文件类程序需要解析文件格式来构造有效样本,而协议类测试需要解析还原协议格式,从而构造网络数据包作为测试输入样本。

1.2 逆向分析难度大,技术门槛高

漏洞分析工作需要对可执行程序的静态文件结构和在内存中的动态运行机理熟悉掌握,这就需要利用逆向分析技术还原可执行文件的汇编代码,从而为进一步分析提供支撑。逆向分析研究的对象往往是底层语言甚至是硬件逻辑编码,这些对象不像高级语言容易理解,具有语义抽象、调试困难的特点。所以,开展逆向分析学习需要有扎实的编程基础和操作系统内核原理知识,这些技术本身难度较大。

1.3 前序课程依赖程度高,学生基础参差不齐

漏洞分析课程的前序课程包括操作系统原理、汇编语言、计算机网络安全、C语言编程等,漏洞分析课程对这些课程的依赖性很强。学生在学习过程中,知识积累程度不尽相同。知识碎片化的特点也导致学生很难熟练掌握漏洞分析的所有基础知识。学生基础的参差不齐,给教学带来了一定困难。根据学生情况,教师可能需要占用漏洞教学时间进行前序课程或背景知识的讲授,但如果不挤压漏洞教学时间进行基础知识的复习或讲解,可能导致部分学生完全无法理解本堂课的内容。

1.4 操作实践性强,理论体系化程度弱

漏洞分析课程属于实践技巧性强,理论程度相对弱化的课程。本门课程对学生动手实践能力要求较高,学生要能够使用代码编译、反汇编、动静态调试、测试分析等多种类型的工具。因为每个工具的操作命令、应用场景、界面使用都不相同,所以每个工具的使用和掌握都需要花费较多时间。本门课程的教学目的是学生能够了解和掌握典型漏洞形成的机理,具备分析漏洞成因的能力,高级要求是能够进一步发现新的安全漏洞。教学的目标本身带有很强的实践性要求,只有具有扎实的程序分析基础,才能够达成学习目标。但是,目前本门课程较为欠缺理论体系的建立,课程内容往往是针对某一具体漏洞案例或者某一典型漏洞类型的讲解,缺少对知识整体的梳理,对漏洞分析的一般规律总结提炼不够。漏洞分析类的工具书虽有不少可作为参考资料,但是适合本科生或研究生教学的理论和实践结合较好的教材依然欠缺。

2 基于SPOC平台的教学实践

2.1 基于流媒体的知识点教学

将课程基础知识点进行讲课视频录制,每个视频时长根据具体内容一般在10~30分钟。具体内容包括可执行文件的结构和运行机理,经典漏洞类型的触发原理,典型工具(IDA Pro、SoftICE、OllyDbg、WinDbg等)的使用,内存的分配和使用,通用验证代码的编写、ROP技术、SHE利用原理以及操作系统的防护机制(数据执行保护、地址空间布局随机化)等。

除此之外,还引入了漏洞分析课程的前序课程或关联知识的讲解视频资源,包括操作系统原理、汇编语言、计算机网络安全、 C语言编程、 Web安全实践等。

2.2 知识体系引导式学习

漏洞分析课程对前序课程和相关基础知识依赖较强,需要学生具有较强的编程和系统原理基础,而且,根据漏洞分析对象的不同,其所依赖的基础知识内容也不尽相同。具体来说,需要根据漏洞分析对象构建相应的知识体系,以知识体系引导学生就某类漏洞分析开展相应知识内容的学习,具体知识体系如图1所示。

2.3 教师学生双向互评

SPOC平台建立的双向评价机制,包括学生评价课程和教师评价学生两个部分。

学生可以对漏洞分析课程的教学内容进行评价,就课程比较难理解的部分提出问题,有助于教师改进教学方法或者选择教学内容的侧重点。同时,学生也可以对前序课程或关联知识点的教学内容进行评价,教师可以根据这些评价更新第三方公开的优质教学资源。endprint

平台在漏洞分析每个讲解单元后附有课后习题,以帮助学生掌握知识点,巩固学习效果。题目的选取紧扣流媒体教学内容,适当发散,主要以客观题(填空、选择)为主,系统可以自动打分,教师可以根据错题率统计掌握学生学习状况。同时设置了简答、推理等主观题目,主观题目需要由教师给出评分。同时,教师可以根据实验录像、实验报告,掌握学生实践能力情况并进行量化。

2.4 理论与实践相辅练习

学生利用平台在学习相关课程知识内容后可以进行习题练习和实验练习。课后习题由题库抽取,类型包括概念记忆、理解推理、混淆判断等。题目针对教学视频设置,由学生自行观看相应视频内容后自己完成,主要用于考查学生相应理论知识的掌握程度。

针对每个课程单元,平台共设置了36个实验,涵盖了触发原理验证、真实案例、检测方法、应用方法等内容。漏洞分析类实验中的大量畸形样本型测试会导致系统或应用异常,同时为了满足百人规模的在线实验需求,平台采用了基于OpenStack的虚拟化资源配置方法,管理和部署实验环境。当多人同时开展实验时,可以迅速地通过克隆部署完成资源配置,便于实验环境现场的快照保存、系统恢复和过程录制。

3 应用SPOC平台开展翻转课程教学

翻转课堂(flipped classroom),又称为翻转教室、颠倒教室,是近些年来逐步被应用的新的教学模式[3],2007年起源于美国。翻转课堂先由学生在家中看教师准备的在线课程内容,到学校时,学生和教师共同完成作业,并且进行问答及讨论。这种教学模式区别于传统的课堂讲授,课下完成作业,因此称为翻转课堂。建设利用SPOC平台分享在线教学资源,针对漏洞分析课程知识碎片化、难度大等特点,开展翻转课堂教学模式探索,是对这门课程教学方式改革的一个有益尝试。

3.1 线上、线下内容组织

如何利用SPOC在线教学平台,将线上与线下教学很好地组织起来,是反转课堂教学要研究的首要问题。漏洞分析课程理论理解较为抽象,需要大量基础知识学习做铺垫。而分析对象不同,基礎知识的需求又具有碎片化特点,且学生很难在掌握了全部前序课程或知识点的前提下再开始本门课程学习,即使学习成绩很好的学生也会因为遗忘或知识体系不完整而无法快速进入漏洞分析学习的状态,影响传统课堂的讲授效果。

因此,可以把图1中关联知识层所属教学内容作为线上学习内容。每堂课前,教师把教学目标和分析对象层的内容传达给学生,学生可以根据自己的基础灵活选择关联知识进行学习。这样,教师就不需要为了顾及学生的基础差异,而把大量时间用于补充前序课程知识讲授上;学生也不会因为基础知识储备不足,无法跟上漏洞分析课程的学习进度。

经研究发现,即使教师讲课很精彩,学生也很容易忘记上一堂课的主要内容[4]。因此,可以将漏洞分析课程中需要学生记忆的课程录制成视频,上传到SPOC平台,供学生随时、反复观看学习。以典型漏洞触发机理单元为例,将二进制程序运行机理和栈溢出漏洞触发原理教学录制成视频,供学生线上自主学习。线上视频教学采用的是基本原理讲解形式,以简短示例代码阐明某类型漏洞的触发原理,学生自学时也容易掌握。但是,难点在于如何利用这些知识,对真实软件中存在的安全缺陷进行分析,在真实环境中代码要复杂很多,也是学生容易产生畏难情绪的所在。所以,这一单元的教学,完全可以把案例式教学引入课堂教学,在学生线上学习已经储备了一定的基础知识,对基本原理掌握得很好的前提下,教师在课上进行案例引入教学,将真实软件中存在的漏洞实例导入课堂,引导学生进行分析。教师的作用是引导学生展开对真实漏洞案例的剖析,把基本原理和实际应用结合起来,有助于学生举一反三。

除了案例式教学,翻转课堂上也可以组织研讨交流等多种活动,学生在课下除了利用SPOC平台学习,还可以进行素材整理、资料查阅。比如,通用型验证代码编写单元,将学生分为两个大组,其中一组负责编写通用性、适用性好的验证代码,而另一组准备系统安全防护知识,防止验证代码的执行。两个组进行辩论式研讨,攻与防进行交锋,学生在课下的准备可以丰富自身知识结构,因为攻防不分家,一方为了驳倒另一方的论点也需要搜集整理对方的论据,所以也不会出现某一方学生只单纯积累本方所需知识的情况。这种辩论式研讨可以让学生掌握漏洞应用及其缓解的演化过程,明白安全技术的发展和漏洞分析是密不可分的。除了基本概念出错外,教师基本不去干扰学生研讨,只对进度做适度控制和研讨范围不离题的把握。这种辩论式的研讨和传统辩论会是不同的,教师需要选择具体的研讨场景、辩论的起始点,当学生提出技术方案时,需要学生能够对技术原理有较为详细的介绍。

3.2 渐进反馈式实验教学

漏洞分析课程对实践动手能力要求很高,所有实验均要在SPOC平台线上完成。实验内容采用分级打分法,根据学生实际进展做出评价。比如“补丁比对工具的使用”实验,比对对象是MS-06040漏洞,以百分制评判(见表1)。这种做法摒弃了以往实验只有“完成”和“未完成”的定性评判,可以对学生的实践能力进行量化。该实验的考核目标是分步完成的,能够使用IDA比对插件是基础要求,通过工具展开对可执行文件和补丁文件的比较,明白可疑函数的列表含义。通过对可疑函数的人工分析,进一步确定漏洞修补的正确位置,是实验的更高一级要求。最终的要求是要根据漏洞位置正确、详细做出漏洞成因分析报告。漏洞分析类实验难度较大,很难用“完成”或“不完成”这种单纯定性的考核方法,采用渐进分步考核是有必要的。

因为漏洞分析课程的部分实验相对困难,对调试器和逆向分析工具的使用和掌握也有一定难度,实验采用全程录像,教师可以对学生的整个实验过程进行观测。教师可以通过实操视频发现学生知识运用瓶颈,对视频反映出的能力较差的学生进行重点分析,有助于改进教学方法和调整教学要点,有针对性地答疑解惑。

线上实验遇到的问题,还可以在线下课堂进行讨论和交流,也是翻转课堂的一种表现形式。比如,Web应用程序安全测试实验,该实验存在多种测试方法。部分学生可能采用文件型输入样本测试,这就需要对Web应用的文件读取接口和格式进行理解掌握;另外一部分学生可能通过抓取Web通信数据包,利用协议测试的方法,把构造畸形数据包作为输入样本,检测Web应用的脆弱性。在线下课堂上,教师可以用实验中遇到的问题和解决思路引导学生开展课堂讨论,学生也可以针对每种方法的优劣,实现的难易程度和获得测试的效果展开讨论,博采众长,达到知识共享的目的。线上与线下课堂的结合成为这门课程理论与实践结合的一个方式,在实践中的经验总结,可以使得理论学习得到进一步提升。endprint

3.3 多维度考核方法

因为翻转课堂教学是线上和线下结合的,考核方法也是多维度的。该门课程从期末笔试、平时成绩、课堂研讨和实验成绩4个方面综合考察,见表2。期末笔试主要考查学生对基本理论和概念的掌握情况,题目重在考查学生对基本原理的理解,而不是记忆某个概念;平时成绩主要是线上课后习题的考评,线上教学视频主要针对多次课堂基础知识的储备,课后习题的考评成绩可以反映学生对于这些基础知识的学习效果;课堂研讨主要针对实验研讨或设置论题研讨过程中学生研讨报告和表达能力的打分;实验成绩的主要依据是学生提交的实验报告,实验视频辅助评判。

因为课程对实践能力要求较高,实验成绩占总成绩60%的比重。理论掌握要求相对较低,主要考查学生对基本概念的理解情况,期末笔试占比20%,平时成绩和课堂研讨各占比10%。线上考试(平时成绩、实验)占总成绩70%,线下考试(课堂研讨、期末笔试)占总成绩30%。

依托SPOC平台不仅改变了线上、线下教学方式,也进一步促进了考核方法的改革。考核手段的多元化也能从不同侧面综合考查学生能力,督促学生线上与线下的学习,使得课程成为一个有机整体,提高教学效果。

3.4 与传统课堂教学的对比分析

应用SPOC平台开展的翻转课堂与传统课堂的不同可以从教师、学生在课堂中的地位,教学形式,课堂内容以及考核方式几个方面来体现,见表3。翻转课堂教学改变了传统课堂以教师为主体,进行知识单向灌输的教学方法。类似漏洞分析课程这样实操性强、理论理解抽象、前序知识依赖度高的课程,尤其适合将教学内容进行线上、线下分离,将传统课堂的基础知识讲授迁移到线上平台让学生自主学习,把真实案例分析、问题研讨等内容引入课堂教学,帮助学生将抽象理论具体化,以问题为牵引激发学习兴趣,最大限度地增强学生的学习主动性。SPOC平台教学的引入也为改变传统单一考核模式,进行多维度考核提供了支撑。

总体而言,利用SPOC平台实施教学的学生在学习过程中表现出了更大的优势,基础知识学习可以不受时间、地点限制,随时进行。线上课后习题便于学生自查知识掌握情况,相比于传统的教师批改作业,学生对知识掌握情况的反馈更加及时。在互动或翻转课堂环节,学生也能表现出更大的参与度。以往单一考核模式只能考查学生对知识点和原理的掌握情况,通过记忆也能获取高分,无法对学生理解、实践能力进行衡量。多维度考核方法能够对学生知识运用能力、思维过程合理性进行评估,在评价更为完善合理的同时,也为教师改进教学内容提供了依据。通过考评和课堂反馈发现,学生采用SPOC平台学习,使以往存在的前后单元知识脱节、学习进度差异大等问题得到了较好解决。

4 结 语

漏洞分析课程SPOC平台的建设,将教学流媒体、实验环境进行整合,构建了漏洞分析的知识体系,为学生进行线上学习、互助交流提供了便利。虚拟化的资源管理,可以高效、灵活地进行实验场景的部署,为原理驗证、真实案例分析、分析工具使用等多类型的实验提供了稳定平台。针对漏洞分析课程教学中存在的问题,利用SPOC平台进行翻转课堂教学改革,改变了教学手段,切分了线上、线下教学内容,丰富了考核方法,激发了学生学习兴趣。在今后的工作中,需要进一步完善SPOC平台中知识体系的构建,引入优质教学资源,更新实验内容,在翻转课堂中课上设置的研讨论题需要在教学实践中进行合理调整。

参考文献:

[1] 贺斌. 慕课: 本质、现状及其展望 [J]. 江苏教育研究, 2014(1): 3-7.

[2] 徐葳, 贾永政, 阿曼多·福克斯, 等. 从MOOC到SPOC: 基于加州大学伯克利分校和清华大学MOOC实践的学术对话[J]. 现代远程教育研究, 2014(4): 13-22.

[3] 伍大清, 阳小华, 刘志明, 等. 基于慕课的翻转课堂实战化教学模式构建[J]. 计算机教育, 2015(5): 78-80.

[4] National Research Council. How People Learn: Bridging Research and Practice[M]. Washington, DC: The National Academies Press, 1999: 1-374.

(见习编辑:景贵英)endprint

1.环球科技网遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.环球科技网的原创文章,请转载时务必注明文章作者和"来源:环球科技网",不尊重原创的行为环球科技网或将追究责任;3.作者投稿可能会经环球科技网编辑修改或补充。