◆汪亚飞
(佛山市顺德区勒流职业技术学校 广东 528322)
近些年,网络成为了信息建设的基础设施。整个社会对网络的依赖越来越高,而网络安全问题却日益严重,对网络安全人才的需求日益增加。笔者在长期实训教学和竞赛辅导的过程中,通过学习、总结和反思,发现利用开源的虚拟化技术搭建CTF 环境的方式,可以为中职学校的学生提供低成本的、能够模拟真实网络攻防的、并且可以高度可定制的实训环境,进而解决网络信息安全教学中面临的实训设备不足、实训开出率不高的难题。
2.1 使用CTF 搭建实训室的功能框架,设计靶机
CTF,Capture The Flag,中文名“夺旗赛”,它通过参赛队伍之间的攻防对抗、程序分析等形式,率先从主办方给出的比赛环境中得到一串具有一定格式的字符串或其他内容,并将结果提交给主办方的一方队伍,会夺得分数。CTF 是网络安全技术人员之间进行的一种比赛,它的比赛内容主要是网络攻防。CTF 起源于1996年DEFCON全球黑客大会。CTF 最初的设想是用CTF 替代之前黑客们之间为了进行技术比拼而发起的真实攻击。CTF 的比赛形式和比赛内容具备很明显的黑客精神,是黑客文化的一种体现。目前CTF 受到了网络安全行业、高校网络安全专业、各级政府和国家安全部门的高度重视。对于学习网络安全的同学来说,CTF 是一种锻炼和保证学习信息安全的训练场。
2.2 使用VirtualBox 的虚拟化技术作为底层,部署CTF 实验所需要的靶机
VirtualBox 是一款既可以供企业使用,也可以在家庭PC 上使用的软件。它是一款功能强大的x86 和AMD64(Intel64)虚拟化产品,还是唯一一个根据开源条款GNU 通用公共许可免费提供给用户使用的、可提供专业化解决方案的开源的虚拟化产品;VirtualBox 不仅可以运行在Windows 上,还可以跨平台运行在Linux 上,Macintosh 机器上,还有Solaris 主机上;VirtualBox 支持的虚拟机操作系统包括:Windows 系列、Linux 系列、Solaris 和OpenBSD。开源、免费和跨平台特性,使得VirtualBox 广受欢迎。使用开源的、可提供虚拟化功能的VirtualBox 作为底层搭建的网络攻防靶机实训平台,具备多平台、快照功能,整个平台成本低、部署快、性能高、弹性大。
2.3 利用联想的EDU 硬盘保护系统中分区保护和网络同传功能,实现CTF 网络攻防靶机平台的底层部署
联想公司开发的EDU 硬盘保护系统面向网吧和学校的机房管理。它可以快速、便捷地给机房中的电脑安装操作系统、应用程序和驱动程序,帮助机房管理员和电脑维护人员进行快速的部署,快速地清楚前一个用户的操作痕迹,保证下一个使用同一台电脑的用户有一个全新的、干净的操作环境。
2.4 根据网络攻防实验的需要,利用VirtualBox 的克隆功能快速部署,搭建实验所需要的攻防靶机和网络环境,进而快速、高效地实现高度定制的实训环境。
3.1 规划靶场和靶机的虚拟机网络连接
在进行实训平台的搭建之前,要先规划好靶场和靶机之间的网络连接。虚拟靶机是安装在实训室学生用物理机上的虚拟机,为了实现整个实训室,乃至整个学校所有的虚拟靶场实验室靶机之间的互联和互通,我们需要将所有虚拟靶机的网络设置为“桥接”物理机的物理网卡,使所有的虚拟靶机可以直接连入真实的物理网络中。这样为靶场的随时扩容虚拟机,还有实验内容的多样化提供了更多选择和实现的可能。
图1 网络攻防实训虚拟靶场实验室-拓扑图
3.2 在物理机上安装虚拟机平台VirtualBox
规划好靶场和靶机的虚拟网络后,接下来在实训室准备一天用作克隆模板的学生用物理机。在实验室的模板物理机上,先安装作为靶机底层支撑的虚拟机平台VirtualBox。注意,在安装VirtualBox 后,务必启用试验用物理靶机的CPU 虚拟化功能开关。
3.3 在VirtualBox 虚拟平台上安装实训用的虚拟机靶机
虚拟靶机可以根据实训室学生用物理机的CPU 内核数、内存容量和硬盘容量来确定其最佳的可部署靶机数量。一般一台虚拟靶机的典型配置为:1 个CPU 内核,1G 内存,40G 硬盘容量。如果按照目前我们实训室学生电脑的典型配置:4 核心CPU,8G 内存,500G 硬盘,则可以最大配置3 台虚拟靶机。以所有的虚拟靶机的CPU 核心数、内存容量和硬盘容量的总和不超过物理宿主机的配置为限,高配置物理机的实训室,则可以部署更多的虚拟靶机;低配置物理机的实训室,则可以少配置一些靶机;每一台物理机至少配置一台虚拟靶机,借助靶场物理交换机,实现所有物理机和虚拟靶机的互联和互通,把整个实训室变成一个超级靶场,从而满足大范围的实训使用。
3.4 初始化攻防用的靶机
虚拟靶机安装好了以后,需要根据网络攻防课程计划和CTF 线下攻防典型训练的要求,初始化训练靶机虚拟机,安装对应的虚拟操作系统、对应的服务和应用软件。安装好靶机后,开启虚拟靶机,并保存一份快照,作为虚拟靶机日后维护的容错备选。
图2 CTF 线下网络攻防-典型场景
3.5 使用联想硬盘保护系统,实现网络同传,实现靶机物理模板机的快速部署
靶机物理模板机上的虚拟靶机安装并且做好初始化配置,且验证无误后,就可以借助联想的硬盘保护系统EDU 实现网络同传,快速部署到同一个实训室的每一台物理机上。这个过程简单易操作,几个小时就可以完成60 台靶机物理模板机的同传发布。
系统同传完成后,需要做物理机保护参数的设置,确保每次试验都能够有全新的攻防环境,然后进行分区参数的设置和同传发布。根据实验的需要,可以设置分区恢复的参数为“每次开机”,也可以设置恢复参数为“手动恢复”模式,并制定恢复的间隔时间,比如一天。
3.6 验证
实训平台搭建完成后,可参照CTF大赛的模式,组织目前在开设网络安全课程的班级,利用学校的CTF 第二课堂时间进行环境验证,验证的内容包括虚拟机的运行状况是否稳定,虚拟机之间的通讯、攻防靶机的服务是否正常运行,实验完成后系统恢复到初识状态是否实现等一系列验证性指标。
借助CTF 模拟大赛的机制,通过虚拟化功能、物理机的分区保护、网络的同传等技术手段,实现了低成本和高度定制化的网络攻防实训靶机平台的搭建。这些都为网络信息安全课程的开设提供了近乎真实的、可重复使用的、适合教学需要的网络攻防实训环境。平台的成功搭建,既解决了网络攻防实验纸上谈兵、缺少实战的教学困境,又解决了购买高额费用的商业实训平台的问题,有利于具有中小规模的网络安全相关专业的学校进行网络安全人才的培养。其借助校内各种类型的活动和竞赛,进一步验证了CTF 靶机实训平台的有效性和可靠性。不过,目前的实训平台还仅限于我们学校自己网络教学使用,主要是内部网络实训教学使用。在目前移动互联网普及的今天,7*24、不限地域的云实验室的建设将成为新的趋势,在经费允许的情况下,可以尝试建设基于云平台的网络安全靶机实训平台。