教学用网络靶场的架构设计
2020-11-02张月红
张月红
(上海电子信息职业技术学院 通信与信息工程学院,上海 201411)
网络空间正式与海洋、陆地、天空和太空并列成为第五战场,在当前网络空间对抗形势日趋严峻的情况下,基于网络仿真与效果评估等关键技术构建的网络靶场显得非常重要[1]。美国、日本、英国和加拿大等国均高度重视网络靶场建设,将其作为支撑网络空间安全技术验证、网络武器试验、攻防对抗演练和网络风险评估的重要手段。2008年1月,美国启动国家靶场项目,建成后将为美国国防部、陆海空三军和其他政府机构服务。2010年10月,英国国防部宣布成立英国联合网络靶场,是英国第一个可以用于商业用途的网络靶场[2]。
我国网络靶场建设目前处于起步阶段,仅有部分科研实验室和行业专用试验场等,其中科研院校有国防科技大学、中国科学院计算技术研究所、国家计算机网络应急技术处理协调中心(national internet emergency center, CNCERT/CC)、中国科学院信息工程研究所、中国电子科技集团、哈尔滨工业大学、北京邮电大学等。目前科研院校靶场还处于探索阶段,主要用于研究电子信息对抗与仿真技术,为行业产品进行试验及检测,规模一般比较小,且针对某一专业领域。我国高校攻防实训室的建成仅仅为了开展信息安全相关专业基础教学实验和实训,很少部署靶场的实验环境。同时由于安全技术本身的双面性,也要求对靶场本身的安全进行保护,会采用虚拟仿真技术对恶意代码或网络攻击等进行隔离处理[3]。
近几年,网络仿真、网络攻击行为场景仿真、攻击数据采集与安全效能评估等关键技术取得了突破和技术积累[4]。安全行业内也建有安全对抗的训练靶场或实训平台,如合天网安实验室的互联网教学靶场,支持全国300多所高校3万余名安全专业学生和技术爱好者使用,并每年举办“强网杯”挑战赛等全国知名安全赛事。目前国内有多家公司研发出了信息安全实验室产品,用于网络防护技术练习和开展攻防比赛,如红亚科技、易霖博等。标准化的实验室产品存在的主要问题有两个:其一在于没有实现多样化的网络结构和完整的业务流程的场景模拟;其二在于和院校本身的课程体系不能对接[5]。
因此,本文结合高校自身的科研能力和优势,与企业合作,利用虚拟化和云技术,开发出和信息安全相关专业培养目标更贴合、能灵活配置业务场景的教学用靶场。
1 高等院校网络靶场特点
1.1 网络靶场功能
网络靶场是针对网络攻防演练和网络新技术评测的重要基础设施,用来提高网络和信息系统的稳定性、安全性和性能,可用于培养实战型的网络安全人才队伍。 网络靶场的主要作用包括[6]:
(1)网络攻防武器评测验证。新型网络攻防武器研制出来之后,需要对其进行测试验证,即验证其能否有效攻破敌方防护系统,以及能否有效保护我方目标系统。
(2)科学试验和新技术验证。网络空间科研人员研制出新的网络协议、新型网络设备以及不同的网络新技术,在网络空间上的功能和性能需要进行验证。
(3)支持人员培训与演练。随着新型网络攻防武器的研发,每个网络安全人员能否有效掌握,可以利用网络靶场进行评估。
具体到在高等院校的教学环境下建设网络靶场,其基本需求是模拟业务所需的网络环境,管理虚拟网络环境的运行,支持师生在模拟的网络环境中完成任务,并在任务完成后保存任务数据,释放模拟网络环境所占用的资源,同时要能支持对资源的重用。 因此,可以从模拟对象和试验任务两个主要方面分析教学用网络靶场需求,如表1所示。
表1 高等院校网络靶场的功能模块Table 1 Function modules of cyber range in colleges and universities
续表1
1.2 高等院校网络靶场特点分析
高等院校教学用网络靶场要求能支持师生在靶场环境中进行多种场景的试验或测试。网络靶场支持网络训练场景模拟[7],通过在网络拓扑设计、节点模拟和环境构建上的一系列设计,支持快速构建一定规模的业务环境,以满足网络靶场模拟实际应用的需要。
在试验支撑上,网络靶场按训练准备、训练运行和训练收尾分为3个阶段,采用训练及赛事配置工具,提供训练资源准备、训练环境设计、训练环境部署、训练数据分析规则配置、人员管理、人员权限管理、训练态势展示、训练环境管控、训练过程管控、销毁训练环境的支撑等。提供子网模板、环境模板和训练模板,支持管理员复用网络拓扑和训练的设计。使用子网模板和环境模板,便于管理员员将典型的网络结构存储起来,从而降低了重构训练和赛事的人工成本。
网络靶场中的流量发生器可提供在训练环境产生的良性数据流量,并实现网络中的设备运行状态和流量采集,采集内容包括节点CPU、内存、硬盘利用率、文件变化情况、注册表变化情况、 端口开放情况、流量、网络连接情况和进程变化等。
网络靶场基于网络拓扑和采集数据的分析结果展示实时场景态势,同时提供丰富的基础资源库,包括镜像资源、靶机及测试用机资源、攻防软件和典型攻防场景等,为师生使用网络靶场提供资源和使用的范例[8]。
2 高等院校网络靶场架构设计与功能分析
用于高等院校教学环境的网络靶场以需求确定、训练任务设定、资源配置、运行部署、训练运行、数据采集和结果评估作为业务流程展开,以支撑训练的整个生命周期[9]。利用网络靶场,可以快速构建一定规模的业务环境,展开相关的安全训练,在研究完成后可以释放资源并再利用资源,同时系统提供的模板可快速重构试验。
2.1 技术架构
网络靶场的技术架构如图1所示。此架构提供了一种侧重于操作的方法,通过角色和任务来测试个人和网络防护团队的技能和能力。在这个框架中,每个用户都可以分配到一个学习计划,这个计划为衡量个体的熟练程序和整体进步提供独特的评分方法。
图1 网络靶场系统架构Fig.1 Cyber range system architecture
教学用靶场的功能实现由三类用户角色完成:(1)学生。在模拟的网络环境中学习专业知识,提高实践技能,也可作为一个团队成员参与训练和竞赛,可以参与遵循学习计划、访问知识库、参加动态训练和运行安全挑战等靶场活动。(2)教师。利用靶场完成日常教学,同时可以把网络靶场作为评价学生的实践课堂,主要完成创建用户学习计划、监控用户培训、设计模拟业务场景和制订动态训练计划。(3)管理员。靶场中为管理员提供了管理整个靶场资源的管理平台,用于管理和维护用户角色和权限授予,完成多个业务场景部署,管理用于改善防御周界或内部的工具,同时可以查看所有设备的硬件使用情况和虚拟机状况,主要完成维护用户账号、修改系统设置、创建/修改用户角色等管理功能。
在网络靶场系统架构中,通过仪表盘可以实时监控参与场景训练的任意学生的靶机状态和操作,在靶机出现故障时,完成环境重置操作。网络安全实验室是教学用网络靶场的核心部分,包括服务教育教学的训练部分和用于仿真建模的模拟部分。训练部分由3个维度的形式展开,分别是安全基础知识学习、安全挑战和动态练习,按照学生的学习和认知规律,从易到难,由点及面,从知识掌握到能力形成,是教学靶场的驱动引擎。
2.2 网络靶场的驱动引擎
为推动学生的安全防御能力形成,整个靶场的训练可以按3个维度进行驱动,分别是基于课堂基础知识的实践模块、自定义进度的安全挑战和基于团队的动态练习。
2.2.1 基于课堂基础知识的实践模块
基于安全能力的形成和递进,课程由易至难安排了3个模块,模块内的训练内容按安全通信、安全运维、安全测试与评估、逆向工程、数字取证等多个能力目标展开,如表2所示。
表2 基础知识实践模块的3个层次Table 2 Three levels of the basic knowledge experiment module
2.2.2 自定义的安全挑战
按照安全技术的发展现状及不同的应用领域,目前覆盖5个类别的安全挑战,包括Web应用安全、移动安全、密码学、网络安全及取证,如表3所示。随着技术发展和网络靶场训练目标调整,类别和主题均支持扩展和升级,如加入物联网安全及云计算安全等内容,或对现有主题内容进行调整。
表3 安全挑战的5个基本类别Table 3 Five basic categories of security challenges
2.2.3 基于团队的动态训练
网络靶场内的动态训练可以支持不同的团队角色类型及功能。红色团队扮演攻击者的角色,试图通过访问特定数据或破坏特定资源来破坏靶场环境中基础设施的安全,可以使用多种攻击工具,如用于攻击的脚本、用于注入目标的恶意软件或后门、用于拦截数据流的产品、异常流量生成器等。蓝色团队的任务是防御,其目的是在有限的时间内验证和改进基础设施的安全性,可以用于执行安全分析、事故管理的工具及数字取证工具。
基于各种不同团队角色,网络靶场的动态训练内容设计有红蓝军攻防赛、夺旗赛(CTF,capture the flag)等。除了提供常规对抗类赛事外,可发挥网络靶场的技术研究功能,提供恶意代码分析和电子数据分析取证的相关场景。此外为培养安全评估测试的能力,提供多种仿真应用系统锻炼团队的漏洞扫描、渗透测试、安全评估及审计等多项技能。详见表4。
表4 基于团队的动态训练内容Table 4 Dynamic training content based on team
3 高等院校自行开发网络靶场的优劣势分析
院校自行搭建基于校园环境的靶场的主要优点有:一是开发的靶场满足安全专业教育需求,针对性强;二是通过靶场开发可以打造一支创新的教学科研团队;三是通过项目开发可以充分实现校企合作。针对信息安全专业人才的培养目标和专业优势特色,实现靶场自主定制开发,靶场建设团队基于教育教学的实际需求,集合团队力量从底层开始搭建靶场,最终建成的网络靶场应更符合最初的计划和设想,内容和形式也将更加适合本院校相关专业学生使用。根据两年来的建设经验,院校定制开发的靶场不仅可以较全面地覆盖信息安全相关专业基础课程和各个不同安全应用方向类课程,而且通过构建靶场的不同业务场景能够将业务连续性与安全管理结合,多方面展示安全工程管理理念;业务场景还为竞赛和工程实战提供环境,可以分角色进行对抗,还可以多个学生组队协作完成渗透测试项目和攻击代码分析等拓展训练。已开发完成的教学用靶场的部分界面及功能如图2和图3所示。
图2 教学用网络靶场的动态训练登录界面Fig.2 Dynamic training login interface of the cyber range for teaching
图3 教学用网络靶场的动态训练配置界面Fig.3 Dynamic training configuration interface of the cyber range for teaching
自建靶场对建设团队在专业能力、实战经验方面都有着很高的要求。面临的挑战主要为[10]:网络靶场中包含人、设备、信息的仿真构建;基于应用场景的行为、流量、应用功能模拟;信息的实时采集及数据的准确评估,特别是学生训练任务评分规则的拟定;模拟流量、真实流量及实验训练环境的隔离问题;一体化的管理调度平台,保障平台整体安全;灵活的资源分配及回收机制的设计;训练场景与课程、人才培养目标的对应以及内容的同步、更新和升级。
4 结语
高等院校作为安全人才培养基地,应科学合理地构建校园网络靶场,既满足网络靶场的基本功能,同时注重其在教育教学方面的应用实效。本文提出了3种院校教学用网络靶场的训练维度,分别是以安全知识和实践训练为主的基础维度、以安全应用为主题的挑战维度和团队动态训练的角色对抗维度。以这3个维度来合力驱动网络靶场训练,将达到更全面培养安全人才的目标。
本研究构建的基于虚拟化和私有云技术的教学用网络靶场平台,目前已具有网络攻防实训及实战功能,并在平台的内测过程中支持学生的日常练习和比赛集训,使得学生在渗透测试、攻防对抗及安全运维方面能力不断提升,推动了专业人才培养质量的提高。
网络安全问题日趋复杂,攻防对抗不断升级,网络靶场的内容建设将是一个不断迭代更新的动态优化过程[11],不仅内容体系要科学完整,而且还应考虑威胁情报的收集功能,以更新防护手段和训练模式。同时教学用网络靶场不仅服务于本院相关专业学生的实践能力培养,还可以面向社会开展培训和竞赛活动,这就对网络靶场中业务场景的多样性及平台自身的安全性提出了更高的要求和挑战[12]。总之,基于虚拟化技术构建的教学用网络靶场平台,辅助专业的实践教学,提供的实战项目对学生掌握网络攻击与防御知识,开展攻防实战演练非常必要。而靶场平台的自身建设和训练内容的不断完善,还需要通过加强校企合作、开展行业研讨交流等方式实现。