APP下载

代码解析在信息安全类课程教学中的应用

2011-11-12汪世义

巢湖学院学报 2011年6期
关键词:源代码开源信息安全

汪世义

(巢湖学院计算机与信息工程学院,安徽 巢湖 238000)

代码解析在信息安全类课程教学中的应用

汪世义

(巢湖学院计算机与信息工程学院,安徽 巢湖 238000)

通过近几年对信息安全类课程的教学实践,总结了本科应用型高校信息安全类课程教学中普遍存在的问题,提出把开源软件的代码解析过程引入到实验教学中,是一种教学内容和教学方法上的创新,在技术上也是切实可行的.

开源软件;网络安全类课程;教学改革

1 引言

网络信息安全是高校信息类专业本科生较为重要的一门专业选修课,它涉及到计算机网络和操作系统以及密码学等理论知识,涵盖数字加密与签名、防火墙、入侵监测、病毒防治、VPN等主要的安全技术[1].本文作者通过调查与研究,针对目前本科应用型高校信息安全类课程教学存在的共性问题,提出教改方法设想,申请并获得省级教研立项,对此作一点有益的探索.为使学生能够更好的理解网络安全相关的理论课程知识体系,本文主要就获得立项项目在教学内容和教学方法中的改革进行探讨,主要体现在实践教学中对相关的开源软件进行深入的剖析,使实验教学内容更好的和理论课内容做到有机统一,为全面提高该类学校的网络安全类课程教学质量提供参考.

2 计算机网络信息安全类课程教学过程中存在的问题

计算机网络安全是网络工程专业的专业必修课,是一门涉及操作系统、网络技术、通信技术等多学科和技术的综合性学科,课程的理论性强,涉及的知识面宽,对学生的理论与实践两方面均有较高的要求.相对于在本科应用型高校而言,由于培养目标与专业课程的限制,学生的相关专业课理论基础不够扎实,目前大部分二本院校操作系统相关的理论课程只是对学生进行传统的理论教学,实验开展很难有针对性;而网络信息安全这门专业课中尤其是学习到目前最先进的网络安全入侵检测技术又是以操作系统相关的功能模块作为前期基础,因此,如何联系操作系统的教学实际,改进网络信息安全类课程的教学内容与教学方法是当前教学过程中需要迫切解决的问题.传统的操作系统和网络协议教学理论内容抽象,让学生感觉这些内容看不见摸不着,没有机会认知一下这些系统程序到底是如何实现的.因此,如何在现有的条件下尽可能在教学过程中加强学生的操作系统的实践教学,并对操作系统相关的数据包捕获模块进行裁减和利用,并把这些模块应用到网络入侵检测技术的实验中成为主要研究的课题.在这个教学过程中,通过开放源代码的软件的学习和利用,对学生综合编程能力、操作系统的理论模块的深入理解能力、网络安全入侵检测技术的实现能力都会有很大的提高.

另外,目前高校网络信息安全类课程教学内容和实践严重脱节.传统的课堂教学方法过于抽象,难于理解,于是众多的教研课题组提出了实例教学法、任务驱动教学法等教学改革方法.这些方法看上去似乎解决了一些问题,例如可以根据教学需要,适当选择若干个实例穿插在理论讲授过程中进行分析,组织案例教学与分析.但这些方法忽略了一个基本的事实,网络安全的基础是和操作系统原理知识紧密相关的,而仅仅通过简单的几个小例子,让学生误以为学习网络安全就是装一些网络安全软件这些简单的操作.作为本科应用型高校,学习的对象是本科生,为了使学生对整个网络安全体系有比较全面,透彻的了解,必须在课程教学中重点剖析一个现成的网络安全体系结构,就是本文中提到的开放源代码软件入侵检测系统.根据教学中不同层次的要求,而要真正深入网络安全本质内容则是和另一种开源软件Linux操作系统是分不开的.所以把这两种开源软件的代码解析过程引入到实验教学中,是一种教学内容和方法上的创新,在技术上也是切实可行的.

3 本教改方案中涉及到的开放源代码软件入侵检测系统相关知识

Snort是一个用C语言编写的符合GPL规范的开放源码软件.Snort是一个功能强大、跨平台、轻量级的网络入侵检测工具.所谓的轻量级是指在检测时尽可能低的影响网络的正常操作.它具有实时数据流量分析和日志IP网络数据包的能力,对内容进行搜索/匹配.它能够检测各种不同的攻击方式,对攻击进行实时报警.此外,Snort具有很好的扩展性和可移植性[2-3].由于这种开源代码是C语言写的,本科生对这种计算机语言都有较好的基础,这样在教学过程中,用Snort开放源代码软件作为网络安全类课程剖析用例系统是最好的选择.

4 开源软件教学模块应用程序初步分析

本教改方案在网络安全类课程教学中讨论的基于Snort网络入侵检测系统是基于Linux操作系统平台的,捕获数据包的工作是借助Libpcap由Linux操作系统内核完成的.Linux是开放源码的操作系统,它具有强大的网络功能.Linux的网络实现是以4.4 BSD为模型的,它支持BSD Sockets(及一些扩展)和所有的TCP/IP网络.为了理解网络安全中数据包采集和处理,必须对常规情况下Linux系统捕获数据包方式及其网络协议有所了解.通过对开放源代码的解析,让同学们在学习这些专业课的过程中深入体会开放源码的具体实现过程,并对它们进行适当的裁剪和改进,实现相应的实验目标,加深同学们对网络原理、操作系统、网络信息安全等课程中抽象的理论知识的理解能力,同时强化了同学们对大型的C语言程序的阅读理解能力,这个过程对提高同学们的实践能力有很大帮助.

libpcap源代码由20多个C程序源文件构成,但在Linux系统下并不是所有文件都用到.实际所用到的文件可以通过查看命令make的输出.下面的应用程序框架及分析所对应的libpcap版本号为0.8.3,网络类型为常规以太网.下面给出一个简单的应用程序框架,并给出初步模块代码分析.

5 研究内容、目标、要解决的问题

网络信息安全类课程传统的课堂教学方法过于抽象,难于理解.在网络安全类课程教学中剖析开放源代码的基于Snort网络入侵检测系统是一种有益的尝试.其中框架原代码是用C语言实现的,是基于Linux操作系统平台的,通过代码解析学习捕获网络数据包具体过程和实现方法,把相关开源软件代码解析内容引入到教学过程和实验项目以及毕业设计选题中.

通过对开源软件和应用型本科高校信息安全类课程的研究与分析,得出使用开源软件开展信息安全技术类课程教学是完全可行的,并在此基础上对基于开源软件的信息安全类课程的教学方法进行尝试,对其该方法的优缺点进行了总结和分析.

通过对开放源代码的解析,让同学们在学习这些专业课的过程中深入体会开放源码的具体实现过程,并对它们进行适当的裁剪,例如在开源代码中模式匹配实验中加上协议分析内容,实现相应的实验目标,加深同学们对抽象的理论知识的理解能力.

操作系统原理传统的教学方法在应用型本科高校绝大部分是照本宣科,教学内容和应用完全脱节,设计实验闭门造车,从而从学生感到操作系统原理课是高深莫测,难以学习领会其核心内容.通过改进教学方法,在操作系统教学过程中解析Linux内核的网络实现开放源代码.让同学们在实践中掌握开源代码Linux系统中数据流捕获流程及具体实现,为下一步在网络入侵检测领域中网络数据的获取打下坚实的基础.

6 结论

信息类专业网络信息安全类课程教学的重要地位在应用型本科高校显得更为突出,其应用性和实践性在该专业课程设置中占有很重要的地位,直接关系到应用型高素质人才综合素质的培养.网络信息安全类课程教学改革既和办学条件相关,又和教学内容、教学方法、教学理念、实习坏境、师资培养多方面有着密切的联系,是一项系统工程,这就要求当前承当教学任务的教学单位和主讲教师要面对实际教学中存在的问题,努力探索提高教学效果的新途径[4].文中提出的把开源软件代码解析引入到应用型本科高校教学中为该类课程的教学改革方案提供了一种全新的思路,在此基础上构建适合该类学校相关专业的特色课程体系,以适应应用型本科院校的科学定位的人才培养目标.

[1]段立娟,周艺华.网络安全课程教学研究与探讨[J],计算机教育,2008,(10):74-75.

[2]宋连涛,庄卫华.基于异常的入侵检测技术在Snort系统中的应用[J],计算机技术与发展,2006,16(6):137-139.

[3]魏德志,王奇光,林丽娜.一种基于数据挖掘的Snort系统的设计与应用[J],集美大学学报,2011,16(5):397-340.

[4]汪世义.新建本科应用型高校计算机基础教学改革的思考[J],巢湖学院学报,2009,(3).

OPEN SOURCE SOFTWARE CODE ANALYTICAL IN INFORMATION SECURITY COURSE TEACHING

WANG Shi-yi
(Computer Department of Chaohu College,Chaohu Anhui 238000)

The paper first summarizes the prevalent problem of the computer Information security course teaching in undergraduate colleges through several years teaching practice.Secondly,the open source software code analytical process is introduced into the experiment teaching,it is a kind of teaching content and teaching method innovation.

Open source software;Network security course;Teaching reform

G642.0

A

1672-2868(2011)06-0137-03

2011-10-11

安徽省省级教学研究项目(项目编号:20100970)

汪世义(1974-),男,安徽桐城人。副教授,研究方向:模式识别、网络安全

责任编辑:陈 凤

猜你喜欢

源代码开源信息安全
基于TXL的源代码插桩技术研究
五毛钱能买多少头牛
2019开源杰出贡献奖
信息安全专业人才培养探索与实践
软件源代码非公知性司法鉴定方法探析
保护信息安全要滴水不漏
高校信息安全防护
基于语法和语义结合的源代码精确搜索方法
大家说:开源、人工智能及创新
开源中国开源世界高峰论坛圆桌会议纵论开源与互联网+创新2.0