2.2.3 OpenvSwitch 12
2.3 FLOODLIGHT控制器 12
2.3.1 Floodlight简介 12
2.3.2 Floodlight主要模块简介 13
2.3.3 Floodlight消息处理机制 14
2.3.4 Floodlight配置流程 15
3 恶意网站防护模块 18
3.1 需求分析 18
3.2 实验环境设计 19
3.2.1 拓扑设计 19
3.2.2 网络节点配置 20
3.3 模块设计 22
3.3.1 消息处理流程 23
3.3.2 DNS报文类 26
3.3.3 报文封装与发送 26
4 系统运行与测试 29
5 存在的问题和下一步工作 29
5.1 存在的问题 29
5.2 展望及下一步工作 30
结论 31
致谢 32
参考文献 32
1 引言
钓鱼网站(phishing site),即通过将用户诱导到一个与欲访问站点非常相似或者对于用户十分具有吸引力的网站上,进而获取用户在网站上输入的个人敏感信息[6]。传统防火墙的实现方案往往是在用户主机节点上安装软件防火墙侦听流量或是在网络出口端安装流量审计软件,但其实这两种方法都有各自的弊端。在SDN网络中,可以通过控制器强大的集中控制功能来对网络中的DNS请求一一做出检查,进而在不影响用户主机性能的情况下实现一个网络防火墙[8]。
1.1 研究背景与目的
在软件定义网络大行其道的今天,SDN安全也已成为一个引人关注的问题。软件定义网络给人们带来了便利与快捷的同时,也给人们带来了新的问题和挑战。相比传统网络来说,软件定义网络带来的松耦合性使得网络应用有了更高的自由度和可编程性。在这种情况下,就必须有一种新型的框架或规则来对这种自由性所带来的危害性加以约束。这就是SDN安全所考虑的问题[4]。
钓鱼攻击是网络攻击中比较典型的一种攻击。这种攻击方式通过在网页或邮件中植入恶意代码或欺骗性链接,使用户在不察觉的情况下访问恶意网站并透露自己的隐私信息,这种攻击方式的特点是隐蔽性欺骗性强、富有诱惑性,是一种成功率比较高的网络攻击方式[7]。而无论用户访问什么恶意网站,都要向DNS服务器发送对该恶意网站域名的查询请求。如果能在用户主机节点收到解析结果之前就把恶意域名审查过滤,就能从根本上隔离恶意的钓鱼网站,达到最好的防护效果。
但是这在传统的网络环境下是很难做到的。传统网络环境下,交换机转发与控制层面紧密耦合,转发工作全都由交换机内部的转发算法负责,无法做到全局最优化的处理。所以传统情况下对于恶意网站的防护只能由杀毒软件、监听网络端口流量的防火墙或者流量审查工具完成。但杀毒软件不仅占用用户主机的内存空间导致拖慢电脑速度,而且和流量审查工具一样都是事后审查,很有可能用户的安全已经收到了侵害。 防火墙需要定期更新病毒数据库,而且实时运行也同样大量占用了主机资源。速度与安全,在传统的网络环境下似乎是很难兼得的[12]。
然而,新的网络环境可以用新的方法解决问题,在软件定义网络中,新的网络特性可以用来解决以前不方便解决的问题[11]。控制器作为整个网络的大脑,可以很方便的控制整个网络流路的转发状态[2],相当于一个全局的网络防火墙,当用户主机节点被钓鱼网站欺骗发出访问请求时,控制器可以分析DNS请求并对这个流路的访问进行隔离。并且集中式的控制管理可以实时地更新防火墙中的危险域名数据库,不用对用户节点造成网络和性能上的负载,这样可以以一个比较小的开销保护用户网络的安全[15]。 基于SDN技术的恶意网站防护(2):http://www.751com.cn/jisuanji/lunwen_28775.html