基于蜜网的主动协同防御系统

2013-09-17 09:43李圣良王城华
网络安全技术与应用 2013年1期
关键词:入侵者蜜罐攻击者

李圣良 王城华

九江职业技术学院 江西 332007

0 前言

面对越来越严峻的网络安全问题,出现了种类繁多的安全产品,如防火墙、IDS、蜜罐、漏洞扫描软件等,它们各自功能独立,仅仅在不同的侧面保护着网络系统的安全,不能从整体上防范网络攻击。面对各种威胁,尤其是分布式、协作式攻击,只有各安全组件实现有效联动,才能进行充分而有效的防护。

1 系统结构设计

基于蜜网的主动协同防御系统结构如图1所示,主要由防火墙、入侵检测系统、日志服务器、蜜网网关和蜜罐主机组成。

(1) 外部防火墙安装在网络以外主要作用是把外部的入侵行为隔离,最大限度的保障校园网络安全,对于外部流入的数据严格控制。

(2) 内部防火墙安装在安全系统内,为蜜网系统提供数据控制功能,任何流入系统的数据都被认为是可疑的。内部防火墙实行宽进严出,宽进即对流入数据控制程度较低,这样是为了给非法入侵者一定的自由,给非法入侵者造成假象来迷惑非法入侵者,以便获取更多的非法入侵者的信息;严出即对于从系统流出的数据进行严格的数据控制,以防止非法入侵者利用该系统为跳板危害其他系统,当然严出也势必要允许必要的数据流出,否则容易被非法入侵者识破。

(3) 入侵检测系统(IDS)用于实时监视系统的运行情况,对出入的数据包检测,发现是异常就抛弃或者订正这个数据包。

(4) 蜜罐网络的各个主机是由VMware虚拟出来的,在这些客户机系统上提供各种真实服务和一些虚假信息,并在每个主机上运行数据捕获工具Sebek客户端,将非法入侵者在主机上的活动进行记录,并向日志服务器提交所记录数据信息。

(5) 日志服务器主要是收集各种日志数据以供分析使用,所收集的日志主要是防火墙日志、入侵检测日志,蜜罐主机记录日志等。

(6) 蜜网网关:在虚拟蜜网网关中,有 3个网络接口。Eth0 是面向业务网络的外部接口;Eth1是面向多虚拟蜜罐系统的内部接口,Eth0和Eth1在网桥模式,均无IP地址,数据包经过网关时 TTL值也不会变化, 也不会提供自身的MAC地址,因此蜜网网关对于攻击者是透明不可见的,入侵者不会识别出其所攻击的网络是一个蜜网系统;Eth2是用作远程管理,具有IP地址,作秘密通道,可把出入虚拟蜜罐系统的数据包及蜜网系统日志转发给一台作远程管理主机。

图1 主动协同防御系统结构图

2 系统模块组成

蜜网有三个核心模块,分别为数据控制、数据捕获和数据分析。网络管理员通过数据控制确保黑客不能利用蜜网危害第三方网络的安全,通过数据捕获技术检测并审计黑客攻击的所有行为数据,通过数据分析从捕获的数据中分析黑客的具体活动、使用工具及其意图。系统各模块之间的关系如图2所示。

图2 各模块之间的关系

(1) 数据控制模块

数据控制的主要目的就是阻止攻击者以蜜网为跳板去攻击业务网络,以防 蜜网成为攻击者的帮凶。系统对于任何进入蜜网的行为都允许,但对于从蜜网发出的扫描、探测、连接等活动都实施严密监控。系统在蜜网网关上使用多层次的机制加以数据控制,具体手段主要包括对外连接数限制和攻击包抑制(图3)。

图3 数据控制机制模型

对外连接数限制是由构架在蜜网网关上的 Iptables来实现的。Iptables可以有效限制单位时间内通过其向外发起的连接数。一旦攻击者攻破某个蜜罐并试图向外发起拒绝服务、扫描等攻击,Iptables将丢弃超过阀值上限的外出连接的数据包,并将其记录到日志,阻断其后继连接,同时发出警告通知网络安全人员。

攻击包抑制是阻止异常行为的数据包通过蜜网网关向外发出连接,用以控制攻击者利用少量连接即能奏效的攻击。为适应蜜网网关的二层桥接模式并利用 Iptables获取数据包,系统利用 Snort_inline 工具实现该功能。从蜜网向外发出的所有数据包都要经过 Snort_inline 检测,只有不包含攻击特征的数据包才能通行。因 Snort_inline 不具备数据包路由能力,所以系统利用Iptables 获取数据包,并将数据包发送给Snort_inline进行检测。Snort_inline对数据包的处理方式包括直接丢弃、修改、回拒等方式。

(2) 数据捕获模块

设计蜜网的主要目标是捕获攻击信息,为了全面的获取攻击信息,系统从网络连接、网络行为及系统行为三层面上分别进行了数据捕获(图4)。

网络连接方面,系统利用Iptables 捕获进出蜜网网关连接行为,并记录攻击者攻陷蜜网后向外发起的网络连接以及超过连接数的报警。对于 Iptables我们可以通过设置rc.firewall 脚本来记录所有向内和向外的连接,并将日志信息保存到/var/log/messages中,我们也可通过修改/etc/syslog.conf的配置来重新指定一个日志的输出,以便于重新记录网络攻击信息。

脚本rc.firewall中对外出连接的限制如下所示:

### Set the connection outbound limits for different protocols

SCALE="day"

TCPRATE="20"

UDPRE="20"

ICMPRATE="50"

OTHERRATE="20"

以上脚本代码说明了IPTables对各类外出连接数目的限制,如TCP连接数每天最多20个。

网络行为层面上,要记录每一个进出蜜网网关的数据包。系统通过配置一个标准的Snort实现该功能,使用Snort捕获所有 IP通信,并将其转储到日志文件 tcpdump中以待分析。配置 Snort 时将嗅探器与蜜网网关内部网口 eth1 绑定,这样只会捕获进出蜜网的通信。此外,我们还使用了p0f工具,p0f工具是一个监控器,它是基于pcap的,主要功能是实现操作系统的指纹识别。通过它们判断源主机和目标主机的操作系统类型。

在系统行为方面,主要是借助Sebek软件完成。Sebek 软件分为客户端和服务器端,可用来记录攻击者读取的数据、击键和运行程序的情况,可用来分析攻击者的活动,再现攻击者的行为。Sebek 客户端被安装到蜜罐主机上,被用于蜜罐捕获数据并发送到网关的Sebek服务器端的数据库中。网络安全人员可利用 Sebek Web来浏览、查询、分析这些数据。

图4 数据捕获机制模型

(3) 数据分析模块

蜜网数据分析的数据来源于系统的“四重数据捕获”,即来自防火墙、IDS、异常检测和蜜罐的日志。数据分析工作的目的是发现未知攻击并提取攻击的特征串作为IDS的攻击特征码和防火墙的规则。

在本系统中,利用Walleye软件和Swatch工具,可非常方便的实现这一功能。Walleye软件提供了一个基Web的蜜网数据分析接口,它被安装在蜜网网关上,可处理多个数据源,并精确高效分析蜜网所收集的数据,如Sebek 捕获的数据、IDS报警信息、p0f系统识别结果、Argus的分析结果等,以便安全人员快速识别蜜网中所发生的入侵事件。Swatch工具被用来监视日志文件,利用它的自动报警功能,一旦入侵者攻击蜜罐主机,攻击标识信息符合配置文件的相关特征时,Swatch自动发送E-mail报警通知,并向外发送连接的目标 IP、端口号以及连接时间等关键信息,安全技术人员通过Walleye的辅助分析功能,即可获知入侵者的攻击方法和动机。

3 测试

(1) 测试数据控制功能

首先测试蜜网对于进出连接的控制功能。从系统中发起一个连接到蜜网中任意一个虚拟蜜罐的FTP连接,然后查看/var/log/message日志文件。接下来测试向外连接数的控制,在一台虚拟蜜罐上初始化多个连接到测试系统,查看/var/log/message日志文件,当向外连接数超过限制时,日志中会出现“Drop Tcp”。

(2) 测试数据捕获功能

Snort可以使用工具集附带的测试规则进行测试。在虚拟蜜罐上发起一次向外的Telnet连接,Snort会捕获到这次外出连接并进行丢弃,然后记录下此次的连接。

接下来查看Sebek的工作情况,运行命令sbk_extract –i eth0 –p 1101|sbk_ks_log.pl,该命令运行在Sebek的服务器端网关上。任意地选择一台蜜罐主机输入命令,在网关上就可以立即看到输出。

4 总结

蜜网技术已经发展成为主动防御、诱捕攻击者的一种非常有效的、实用的、成熟的方法。它通过精心布置的诱骗环境来吸引黑客,捕获黑客的攻击工具、攻击方法和攻击目的,它最大的价值在于能够发现网络中新的攻击方式,进而更新完善网络的防御体系。

[1]郑艳君.分布式蜜罐技术分析及系统设计研究[J].制造业自动化.2012.

[2]马彦武,董淑福等.一种网络安全联动防御模型的设计与实现[J].火力与指挥控制.2011.

[3]赵会峰,李丽娟.一种基于蜜网的网络安全联动模型[J].计算机系统应用.2011.

[4]黄芳,刘渊.虚拟蜜网系统的设计与实现[J].微计算机信息.2010.

猜你喜欢
入侵者蜜罐攻击者
机动能力受限的目标-攻击-防御定性微分对策
蜜罐蚁
被自己撑死的蜜罐蚁
“入侵者”来袭
基于博弈的蜜罐和入侵检测系统最优配置策略
正面迎接批判
哈密瓜:乡间蜜罐
有限次重复博弈下的网络攻击行为研究
“外星人”入侵档案之隐形入侵者
小行星2014 AA:地球的新年入侵者