1、厦门大学软件学院毕业设计(论文)开题报告 学生姓名 班级 学号 指导教师姓 名 职称 所在单位 厦门大学软件学院 毕业设计(论文)题 目 入侵防御技术研究 毕业设计(论文)的 目标: 一 . 整体软件目标 1.较为精确的检测入侵 2.实时地防御入侵 3.充分的可扩展性和可配置性 4.强大易用的数据处理 二 . 具体设计目标 1. 数据包 防御和 检测 利用已有的开源项目 Netfilter 和 Snort 的强大功能来实现数据包的检测。 2. 入侵响应 入侵的响应是 IPS 的核心,对 IDS 模 块的报警,进行分析,提取出攻击源和攻击手段等信息,然后将分析获得的信息,形成处理 模块的配置参数
2、,以指导其对以后的网络流量的操作。 3. 处理响应 根据入侵响应来动态修改入侵防御规则,实时的对经过的网络流量进行过滤。 4. 日志记录 日志记录一方面是给网络的安全性分析提供原始数据,另一方面是当 IPS失效时,可以通过日志分析来找到问题根源,为系统提供参考。 实现方法: 一 . 基本环境 开发工具: vim 编辑器 开发语言: Perl 语言 开发平台: Linux 开发使用的项目: Netfilter 和 Snort 系统功 能测试: SynKiller, 扫描器 nmap, ping 程序 二 . 模块划分 具体可分为以下五个模块 1. 防火墙防御模块 根据防御规则,对流入的网络数据包
3、进行过滤,是 IPS 的第一道防线。 并且可以动态设置防御规则,以实时地进行过滤。 2. IDS 检测模块 对通过防火墙的数据包进行检测,确认该数据包是否具有入侵行为,若检测,则发出报警并进行日志记录 。 3. 响应模块 通过对检测模块发出的报警进行分析提取出其攻击信息并交给处理模块。以指导以后的数据包流入的控制。 4. 处理模块 根据从响应模块得到的参数,动态地修改防火墙的防御规则, 实时地对网络流量进行控制。 5. 日志模块 使用 MySQL 来记录报警信息和处理信息,它 给网络的安全性分析提供原始数据,在另一方面,当 IPS 失效时,可以通过日志分析来找到问题根源,为系统提供参考。 三
4、. 系统流程图 入侵防御系统流程图 四 . 响应模块设计 1. 使用操作系统内核提供的 Netfilter,通过 perl 的 Iptables-IPV4 模块根据 Snort 的报警信息来动态调整 Iptables 的规则。 2. 在系统运行过程中维持一个排除地址列表的数据结构,用来判断入侵行为是否来自于特殊的管理 IP 地址。 3. 启动 Snort,并通过监视 Snort 的 alert 输出,来获取报警。 4. 检测到入侵的 IP 后,将其加入到阻塞列表的同时加入到 IPTables filter 表中的 FORWARD 链表中,以阻止其通信。 5. 系统处理动态的根据 Snort 告
5、警添加阻止网络通信的过滤机制,并提供自动解除阻止的机制。 时间进度安排: 2008 年 2 月 25 日 -2008 年 3 月 15 日 完成详细设计,所有模块的细节敲定,模块的所有接口、数据结构、函数及所用算法均定义完毕,并完成相应文档资料。 2008 年 3 月 16 日 -2008 年 3 月 31 日 征求导师意见后进一步改进,整理提交毕业设计开题报告。 2008 年 4 月 1 日 -2008 年 4 月 30 日 对必要技术及工具进一步了解学习,完成基本代码编写,所有模块基本完成。 2008 年 5 月 1 日 -2008 年 5 月 10 日 集成测试,所有模块协同工作测试,整
6、个软件主体基本完成。 2008 年 5 月 11 日 -2008 年 5 月 20 日 系统测试,在实际工作站上完成测试,包括稳定性分析。 2008 年 5 月 21 日 -2008 年 5 月 31 日 确认软件功能,由开发人员确认所需要的功能匀已经完成,实验操作人员完成具体功能检查。 2008 年 6 月 1 日 -2008 年 6 月 11 日 项目文档终稿完成,提交毕业论文,准备毕业答辩。 指导教师审核意见: 选题切合实际,时间安排合理,同意开题。 指导教师签名: 2008 年 月 日 毕业论文任务书 题 目:入侵防御技术研究 目标要求: 随着互联网络的普及和网络技术的高速发展,人们在
7、信息利用和资源共享上都有了很多便利,但与此同时也带来了日益严重的安全问题。人们为此采取了很多保护措施,防 火墙和入侵检测是最常被采用的网络安全技术。但是,在实际应用中发现,单独的使用防火墙和入侵检测系统都不能很好地解决网络安全问题。如果把两者结合起来则能够更大限度的实现网络安全,于是设计了入侵防御系统, 它 紧密实现两安全系统的互动互利。 将 Snort 和 Netfilter/iptables 结合是 IPS 最直观的一种实现方案。Netfilter 提供了一种可靠的异步数据包处理机制,在用户空间中, Snort 对数据流进行检测,分辨出正常流量和可疑流量。本系统正是以这两者为基础实现一个入
8、侵防御系统的原型。 支持条件: 开发工具: vim 编辑器 开发语言: Perl 语言 开发平台: Linux 开发使用的项目: Netfilter 和 Snort 指导教师(签名) 职称 学生(签名) 分阶段进度安排 阶段 起讫时间 计划完成内容 1 2008 年 2 月 18 日 -3 月 15 日 搜索并阅读文献资料,理解任务 2 2008 年 3 月 16 日 - 3 月 31 日 系统设计并 完成开题报告 3 2008 年 4 月 1 日 - 4 月 30 日 完成各个模块的代码实现 4 2008 年 5 月 1 日 - 5 月 10 日 系统测试 5 2008 年 5 月 11 日
9、 - 6 月 6 日 论文撰写 教师分阶段指导记录 第一阶段: 确定需求、文献调研、整理文档 第二阶段: 完成系统总体 设计 第三阶段: 完成系统开发、测试,准备毕业论文 第四阶段: 论文定稿,准备论文答辩 论文评语 论文选题切合实际,具有一定的理论研究意义和应用价值。论文在充分调研的基础上,对入侵防御技术进行了研究,并基于 SNORT 系统和NETFILETER 实现了一个简单的 入侵防御原型系统。本论文结构严谨,条理清晰,符合本科生毕业设计的要求。 拟评成绩 指导教师(签名) 职称 2008 年 月 日 论文评阅 评阅成绩 评阅教师(签名) 职称 2008 年 月 日 答辩记录 演示成绩 答辩成绩 答辩小组组长(签名) 职务(称) 2008 年 月 日 总评 成绩 学院负责人(签盖) 2008 年 月 日