网络安全国家级虚拟仿真实验教学中心建设探索

2020-01-13 09:48张沪寅黄建忠彭红梅
实验室研究与探索 2019年12期
关键词:密码学网络安全实验教学

张沪寅, 陈 晶, 黄建忠, 彭红梅

(武汉大学 计算机学院; 网络安全学院,武汉 430072)

0 引 言

2013年教育部发布文件[1-3]着重强调要逐步建设一批具有示范、引领作用的虚拟仿真实验教学中心,同时伴随大规模开放在线课程(MOOC和MOOE)的快速发展,近几年远程开放式虚拟仿真实践教学模式越来越得到关注和重视[4]。目前,国内多所高校已经建成了可支撑网络安全实践教学的虚拟仿真实验教学中心,成果显著。但新的问题也随之而来,诸如虚拟仿真专业实践教学体系不完备、实验教学资源开放共享度低、有效利用率低等问题愈发明显,最为突出的是,由于缺乏教学思路的匠心设计、研发技术不成熟等因素的限制,导致能够真正锻炼和提升学生网络安全技术水平和职业胜任力的精良设计型、综合型、创新研究型等复杂实验严重不足,这对于充分锻炼学生的动手能力、思维能力、创新能力、利用所学知识解决复杂工程问题的能力,教学效果并不理想,也有悖于OBE工程科技人才培养理念[5-6]。因此,研发如何集知识性、趣味性、挑战性、创新性于一体的复杂实验,打造网络安全虚拟仿真“金课”,将成为网络安全虚拟仿真实践教学改革和实验教学中心建设的重中之重。本文将重点探讨网络安全虚拟仿真实验教学中心针对该课题的建设成效,以及在网络安全复杂实验研发和教学改革方面的探索尝试和阶段性创新成果。

1 网络安全虚拟仿真实验教学平台设计

网络安全虚拟仿真实验教学平台是一套支持大规模并发的在线虚拟仿真实验平台,并内置云计算、大数据、人工智能、信息安全等多学科的专业课程实验教学资源,方便学院组建多学科交叉融合的课程体系,结合系统完善的学习路径和行为、教学管理等大数据分析功能,可有效促进和提升教师“以学生个性和兴趣为基础”的“因材施教”教学质量。平台提供的院校级教务管理决策支持服务,可有效助力学校教育信息化、工程教育教学改革和高素质泛IT技术人才培养。平台特有的强大云融合技术,支持学校建设院级、校级、区域级教学资源共享服务中心,高效推进泛IT领域优秀工程科技人才培养,驱动武汉市、湖北省乃至全国泛IT产业和经济发展。

1.1 平台系统架构设计

平台是基于OpenStack云架构技术实现,融合SDN、KVM等虚拟化技术,并根据教学场景做了大量二次开发,构建的高性能、高并发、弹性可扩展的大规模云融合虚拟仿真实验教学平台[7-10],其业务架构如图1所示。

图1 虚拟仿真实验教学平台系统架构图

该平台的云服务层由两部分构成:基础硬件资源子层和虚拟资源子层。基础硬件资源子层主要包含控制节点服务器、计算节点服务器、存储服务器、交换机等硬件设备及相关组网;虚拟资源子层主要为OpenStack+KVM提供实验所需的虚拟资源调度、监控,虚拟机的生命周期管理等。虚拟网络服务模块主要实现虚拟机的网络资源管理,以及虚拟网络的二层/三层组网管控服务[11-14]。

1.2 平台的教学价值优势和特点

网络安全虚拟仿真实验对比实体实验,最大的区别在于用虚拟的手段模拟了成本昂贵的实体实验器材和实验场地,节省了资金,同时带来了教学的灵活性;避免破坏性。因此网络安全虚拟仿真教学平台教学价值的重要性不言而喻,并具备以下优势和特点:

(1) 教学方式灵活。所有实验资源及实验环境均部属于云端,用户无需在本地部属实验环境,只要网络环境畅通既可启动云端虚拟机,一键式部署实验环境进行实验。

(2) 实验环境独立。使用虚拟机来构造各种实验环境,使用Vlan、Vxlan虚拟网络技术保证实验环境的独立。

(3) 危险、极端实验环境仿真。可虚拟仿真各种不可逆的危险网络安全实验环境。

(4) 教学可实时跟踪。提供实验实时录屏功能,可记录学生所有操作步骤,老师可以随时检查并纠正学生的操作错误。

(5) 支持实验快照。实验操作过程中可以随时保存实验状态,下次可以恢复快照,继续实验流程。

(6) 写时拷贝技术。平台使用稀疏文件技术和COW(写时拷贝)技术,最大限度节省硬件磁盘成本。

(7) 高效学习行为分析。可根据学生操作记录进行学习行为分析,形成学习用户画像,便于老师掌握教学效果、查漏补缺和因材施教,便于学生了解自己学习的优势和不足等具体情况。

(8) 支持区域教学资源共享服务中心功能。实现了校内、校际间教学资源服务共享,打造以武汉大学网络安全学院为中心,服务于全校、武汉市乃至整个湖北区域的优秀教学资源共享平台。

2 “四类型六环节”实践教学体系建设与探索

遵循学校“厚德载物”的办学思想和“创新能力、创新意识、创新人格”的教育理念,紧密结合当前社会环境对人才需求,学院设计并实现了覆盖网络安全人才培养全过程的“四类型六环节”网络安全专业实践教学体系,如图2所示。网络安全专业4年的本科工程技术人才培养,需要充分思考学生的入学基础和个性化学习心理,制定符合学生接受水平的由易到难阶梯渐进式专业课程教学计划。因此学院根据具体课程和集中实践教学项目的难易程度和学科知识技能范围覆盖度,将专业整体实践教学环节细分为:认知实验、验证实验、设计实验、综合实训、毕业设计和科研竞赛六个环节,完成四种类型实验,分别是:专业基础实验、专业核心能力实验、专业综合实验、科研创新实验。

图2 网络安全虚拟仿真实践教学体系

3 网络安全虚拟仿真复杂实验研究与创新

依托网络安全虚拟仿真实验教学平台和多年积累的实践教学经验,学院开发了多种虚拟仿真复杂实验课程,基于网络安全虚拟仿真实验教学平台的专业课程实践教学效果得到明显提升。

3.1 网络安全虚拟仿真复杂实验场景设计技术框架

网络安全虚拟仿真包括以下维度:设备仿真、场景仿真、结构流程仿真。每种网络安全试验仿真环境由虚拟机、设备仿真,通过拓扑组件连接,形成一套完整的仿真试验环境[15]。

网络安全虚拟仿真复杂实验的主要场景软硬件资源编排和部署方式如图3所示,每种实验场景都部署了仿真典型企业网络场景的设备(虚拟主机)、网络拓扑、软件系统环境和完成实验任务所需的多种实验工具[16]。

图3 网络安全虚拟仿真实验场景软硬件资源编排和部署原理图

3.2 网络安全虚拟仿真复杂实验教学设计原则

为切实保障优质的教学质量和效果,网络安全领域虚拟仿真实验任务设计遵循以下原则:

(1) 遵循教育心理学规律,从学习任务的利用性价值激发学习兴趣,设计实验任务。

(2) 要求学生在充分理解并掌握网络安全相关知识和技能的基础上,阶段性完成每个实验的几个任务。完成这些任务,既需要学生积极思考,又能激发学生解决网络安全问题的探索欲望和学习兴趣。

(3) 每门课程所有实验的知识技能点全面覆盖课程知识技能点,并有适度拓展和挑战。

(4) 实验任务设置考核点、考核题目以及任务成绩分值,系统自动统计分数。

(5) 实验任务设置操作时长限制,有效督促学生高效完成实验任务。

(6) 对于抽象课程,设计可视化操作界面双模式(可视化操作验证和在线编程)实验任务,充分锻炼学生对抽象原理的理解能力和运用所学知识解决复杂工程问题的能力。

(7) 学生实验过程中可随时进行截图、录屏、记录笔记、与老师互动交流等操作。

(8) 实验的步骤、报告的提交、成绩的评定等可由老师针对每个实验灵活控制。

(9) 平台提供关键词百科功能,对关键词提供有效知识链接,有效促进学生的知识拓展。

3.3 虚拟仿真复杂实验案例分析

学院已经研发了计算机网络安全、密码学、网络攻防、网络硬件虚拟仿真等十几门课程的虚拟仿真复杂实验,基本覆盖了网络安全专业课程体系。由于每门课程的实验内容以及教学方法均有所不同,每个实验在教学设计和技术呈现上各具特色,在此仅对网络安全和密码学复杂实验设计的创新特色进行案例介绍和分析。

(1) 网络安全漏洞挖掘和利用实验设计。漏洞挖掘实验旨在通过常用网络扫描工具在企业复杂网络场景中的应用,让学生深刻理解漏洞的概念、特性、必然性以及危害性,并先于攻击者掌握漏洞挖掘和利用技术。本实验设计了四个实验任务,要求学生依次完成:① 使用nmap、MSF和Metasploit进行漏洞挖掘和利用;② 使用nikto、crunch和burpsuit进行网站渗透和控制;③ 获取webshell权限并拿到目标机开放的远程桌面端口号;④ 向目标机添加新用户并控制目标机,获取目标机文件和数据。

学生正式开始实验之前,平台会向学生展示实验概况以及实验网络拓扑结构,便于学生全面了解实验背景、实验任务和实验原理,有助于学生顺利完成实验任务和考核题目。实验指导书中的拓展知识和经验分享将有效拓展学生知识视野,培养学生终生学习的良好素养。

学生操作虚拟仿真平台完成实验的操作界面如图4所示。开始实验时,平台将为学生创建实验虚拟机镜像环境,并开始实验计时。操作窗口左侧为学生操作的Linux系统命令环境,窗口右侧为实验指导浮动面板,学生通过该面板执行提交实验任务结果、查看任务操作步骤、记录笔记、与老师在线问答互动等操作。学生需要依次完成每一个任务,任务完成即获得该任务考核得分,所有任务都完成,单击“完成实验”按钮,即可获得整个实验的操作得分。

图4 漏洞挖掘和利用虚拟仿真实验操作画面截图

(2) 密码学复杂实验创新设计分析。传统的密码学实验教学大多采用验证式实验,学生缺少深入的辩证思考,也未能尝试独立应用算法解决实际问题。

虚拟仿真密码学复杂实验使用虚拟化+Web IDE编程可视化模式,模拟密码学算法的加/解密实际工作流程,让学生在可视化图形界面进行数据验证或在线算法编程实现,直观感受每个算法每一步的执行过程和结果。

虚拟仿真实验平台的Web IDE集成编程环境如图5中的代码区所示,平台支撑语法高亮、自动缩进、代码版本管理等基本功能,提供交互式变异执行的展示终端,可支持C/C++、Java、Python等多种编程语言,为学生带来良好的代码编辑和终端交互体验。学生通过密码算法编程实战,可独立完成部分或全部算法的源代码实现。

图5 密码学MD5算法实验操作画面

为了让学生更加直观感受密码学抽象算法的加解密流程,设计了可视化算法流程数据跟踪和验证面板,让学生体验“看得见”的密码学算法加解密流程。

图6以MD5算法为例,阐释密码学可视化算法流程数据跟踪和验证的实验任务操作过程。如图6左侧面板所示,当输入明文并单击“开始”按钮,系统自动计算生成初始的128 bit计算变量,大致算法原理为:系统自动计算生成的128 bit计算变量分为等长4块,分别存储在4个寄存器中。每个分块总共4个回合,每回合计算16步,合计64轮次计算,算法中需要加入sin(x)非线性的函数参数值,MD5算法具体原理请参考相关文献,在此不再赘述。

学生单击“第一轮函数变换”按钮,实验将切换到右侧的“轮函数变换”面板,即开始第一回合第一轮次的函数变换。为考察学生对MD5算法流程的掌握程度,实验分别选定第1-4回合中某3个轮次的“模232加”和“循环左移s位”操作结果输出对应文本框作为算法流程数据验证点,要求学生实验程序输出正确结果前,先行输入自己的“模232加”和“循环左移s位”计算结果,系统会自动比对学生输入数据的正确性,并将比对结果显示到屏幕,同时自动计算学生实验任务得分。这种方式大大提高了学生学习算法的趣味性和挑战性,深受学生好评。

图6 密码学MD5算法实验操作画面

4 特色和创新点

虚拟仿真实验教学中心建设的特色和创新点主要有以下5个方面:

(1) “四类型六环节”实践教学体系既相互对应,也相对独立,循序渐进、由浅入深,形成了协调一致的专业实践教学有机整体,有效保障能力水平不一的学生均能获得“量身定制”的实践学习方案。

(2) 基于SDN技术和云融合的网络安全虚拟仿真实验场景设计架构,以及强调“学做合一”的实验任务设计原则、完备的知识技能覆盖度,全方位保证学生在仿真实验中扎实掌握网络安全关键知识和技术。

(3) 流程结构可视化的复杂实验以前瞻性教学视野和创新实验研发技术为基础,突破了当前大多网络安全实验仅为验证型实验的教学局限,让学生深度参与实验操作,提升学生学习效果和职业胜任力。

(4) 大规模虚拟仿真和并发访问能力:可支持500名学生同时并发在线上课学习。

(5) 区域资源共享服务中心:实现校内、校际间资源服务共享,打造以学院为中心,服务于全校乃至整个区域的优秀教学资源共享平台。

5 结 语

学校现已初步建成具有云融合能力的国家级网络安全虚拟仿真实验教学中心和“四类型六环节”实践教学体系,将教育心理学和虚拟仿真技术结合,创新研发虚拟仿真图形可视化综合与创新型复杂实验,奠定了建设虚拟仿真实践教学“金课”的坚实基础,打造“虚实”结合的实验平台,为国内外高校的网络安全实践教学积累了办学经验,推进我国网络安全专业发展和工程科技人才培养有着重要的实践意义。

猜你喜欢
密码学网络安全实验教学
小议初中化学演示实验教学
电容器的实验教学
对初中化学实验教学的认识和体会
图灵奖获得者、美国国家工程院院士马丁·爱德华·海尔曼:我们正处于密钥学革命前夕
网络安全
网络安全人才培养应“实战化”
上网时如何注意网络安全?
信息安全专业密码学课程体系的建设
密码学课程教学中的“破”与“立”
几何体在高中数学实验教学中的应用