网络攻防演练平台的设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网络攻防演练平台的设计与实现
摘要:针对网络攻防课程实验环境的构建问题,本文设计了作为网络攻防课程的教学和实验辅助环境的网络攻防演练平台。以通过建立课堂演示和课程相关的验证性实验攻击标靶搭建攻击测试环境为目标进行模块化的设计,同时,针对支持网络攻防对抗演练的支撑环境进行设计,对推进网络攻防课程教学和提高学生动手能力具有重要意义。
关键词:演练平台;教学演示;目标虚拟化;实战环境
随着互联网、专用网络化信息系统和各种网络应用的普及,网络与信息安全已成为关系到国家政治、国防、社会的重要问题,它对培养具有网络信息安全知识和应用技能的专业技术人才提出了更高要求。网络攻防是网络信息安全方向的重要课程,主要以网络攻击步骤为线索向学生介绍黑客攻击各阶段常用的攻击方法和原理,以及对相应网络攻击的防护策略和手段。该课程实践性较强,而且具体的攻击方法往往针对现实的网络环境和网络服务。为了将实战性较强和具有实际网络环境特色的攻击技术在课堂教学和实验环境中展现,需要在实验室里有选择和有针对性地创建应用网络环境。在这个环境中,一方面攻击技术手段有了再现的场景,可以实现攻防方法的演示再现甚至对抗性的攻防演练;另一方面,将教学和实验操作中产生的攻击行为限制在一定的范围内,防止对互联网的实际网络和服务造成干扰和破坏。
网络攻防演练平台就是要解决网络攻防课程的课堂演示和实验操作环境方面的问题。该平台作为网络攻防实验室的主要环境,一方面选择了某些实验内容并搭建适当的环境,对网络攻防的课堂演示和课程相关的验证性实验提供特定场景;另一方面为网络信息安全知识的应用提供了综合实验环境,支持网络攻防对抗演练。该平台在网络攻防实验课程的实践中取得了较好效果。
1整体架构
网络攻防演练平台要同时具有教学演示、攻击实验和攻击演练的功能,既要设置有效的攻击环境,又要解决平台支撑服务器和实验教学网络自身的安全可靠性问题。为了解决这两者之间的矛盾,我们将提供演示和学习资料的服务器组和攻击实验子网用防火墙进行隔离,采用了如图1所示的网络拓扑结构。
在受防火墙保护的服务器组里配置了实验教学系统,防火墙另一侧的攻击子网里配置了标靶服务器,结合每次实验内容,设置具有一定脆弱性的网络服务,提供了攻击演示和验证性实验的环境。实验PC组的网络设置方式有效支持了对抗性攻击演练。下面详细介绍教学演示、验证性实验环境和对抗性实验环境这几部分的设计。
2教学演示部分
教学演示部分由Web服务器、流媒体服务器和备份服务器支撑,具有课件信息更新、学生管理、在线交流、实验设置和作业提交等功能。在内容上紧密结合课程教学,涵盖了网络攻防各个方面,是课堂授课内容的补充。该部分的设计体现了学生在自学加练习中知识积累和能力提高的学习规律。
演练平台的演示部分采用了流行的网上教学平台形式,使用浏览器服务器模式,浏览器作为客户端,用ASP实现Web应用界面,MSSQLSERVER 作为数据库存储管理信息和演示内容的三层结构。该结构便于用户界面的优化和演示内容的添加,适合网络攻防的内容量大且不断更新的特点[1]。对每次实验的教学演示,都把攻击过程的各个操作细节通过屏幕录像软件制作成视频,存放在流媒体服务器上,在教学演示系统中通过网络视频的方式播放。演示部分和练习内容紧密结合,每章内容在实验相关知识和视频演示之后,提供了验证性实验的操作步骤说明以及相关工具、素材的说明和下载服务,体现学习和练习互动的特点。
在线交流是以BBS的形式给教师与学生一个公开交流的场所。指导老师可以通过它方便地回答学生做实验时遇到的问题,也可以在BBS上提出各种问题来考查学生,了解学习进度。学生则可以通过它来相互交流经验,讨论老师所提的问题,发表自己的观点[2]。
在备份服务器上,一方面建立课程的FTP站点,提供学习资料的下载和共享,另一方面提供了Web服务器、标靶服务器、视频文件以及操作系统镜像的备份,保证整个平台的可靠运行。
3验证性实验环境
验证性实验环境为教学演示和实验课提供测试素材和环境支持。基于多年的网络攻防实验的课堂实践积累,按照网络攻击不同阶段的顺序,在该环境中设置了如下实验主题。
实验1 网络安全扫描;
实验2 口令攻击;
实验3 缓冲区溢出原理;
实验4 脚本攻击和防范;
实验5 木马攻击和查杀;
实验6 防火墙入侵检测系统的使用。
每个主题都由若干难易程度不同的实验项目组成,在验证性实验的内容选择和环境设计中体现了以下原则。
1) 以理解原理为主。
该部分实验的目的在于对课堂知识的印证和加深理解,偏重于原理展示,要求简洁直观,具有启发性。因此对于每个实验主题,结合平台演示部分的相关知识介绍,精心选择了最具代表性的素材和经典案例作为实验内容,在尽量简洁的环境配置下,提供通用强的一般工具,在操作的步骤中体现网络协议分析、操作系统原理和程序设计的基础知识应用,使学生能够加深了解相应网络攻防技术的原理。同时,在内容上便于学生操作和理解掌握,为提高动手能力、激发兴趣开展自主研究提供了必要的基础,并按照实验顺序在后续操作中提供了较为复杂的提高性实验工具。
如对于网络安全扫描实验,既使用了Superscan等功能简捷、操作简单的图形界面工具,又使用了专业性较强的nmap命令行扫描工具,在扫描的过程中,用网络嗅探器采集这些工具在工作的时候发送的数据包,对照扫描工具产生的结果信息,分析这些工具扫描和判别时的工作原理,如图2所示。
对于脚本攻击中的SQL注入实验,首先要求学生设计一个最简的、具有注入漏洞的页面。在实验指导中给出了下面的相应代码。
输入的查询语句为:
var _userid = ‘‘;var _siteid =881;var _istoken = 1;var _model = ‘Model03’; WebPageSpeed =297; UrchinTrack();
学生只要运用动态网页程序设计和Web服务器搭建的相关知识,通过上述简单代码就可设计出一个具有漏洞的页面,进而通过SQL注入工具进行数据库各个表名字段的猜解攻击测试,从而掌握这种攻击方法的原理,可以举一反三。
其他实验内容在使用一些自动化工具的时候,同样结合通用的系统和网络分析软件,使学生对实验结果的分析建立在掌握基本原理的基础上。
在每个主题的验证性实验之后,设置了提高性实验内容,学生在掌握原理的基础上,可以进行相应主题下的较深层次的实验内容,以及根据实验要求里提出的研究内容进行设计性实验练习。每个主题在整体上具有良好的难度层次划分。