基于Honeyd的产品型蜜罐系统

2010-09-07 07:28曾晓光郑成辉赖海光
郑州大学学报(理学版) 2010年3期
关键词:蜜罐脚本研究型

曾晓光, 郑成辉, 赖海光, 赵 成

(解放军理工大学指挥自动化学院 江苏南京210007)

基于Honeyd的产品型蜜罐系统

曾晓光, 郑成辉, 赖海光, 赵 成

(解放军理工大学指挥自动化学院 江苏南京210007)

在研究型蜜罐技术的基础上,分析了产品型蜜罐所应具备的基本特性,设计并实现了一个基于Honeyd的产品型蜜罐系统.系统应用了公钥加密、图形化操作等技术,具有较高的安全性和实用性.

蜜罐;蜜网;产品型蜜罐;Honeyd

0 引言

网络与信息安全技术的核心问题是对计算机系统和网络进行有效的防护.安全可以分为预防、检测、反应3个层次[1].很多安全技术只在其中某一个层次上起作用,例如防火墙主要起预防的作用.蜜罐是少数可以应用于所有上述3个层次的安全技术之一,在网络安全防范体系中具有独特的作用,具有很高的应用价值.

现有的相关研究工作和成果大都面向研究型蜜罐.研究型蜜罐的设计初衷主要是面向安全研究人员和机构,缺少一些必要的特性,无法像防火墙等技术一样作为产品直接应用.本文在研究型蜜罐技术的基础上,对产品型蜜罐所必须满足的特性进行分析,提出产品型蜜罐的概念,设计并实现了一种具备产品特征的蜜罐系统.系统利用了公钥、密钥协商等相关技术,具有较高的安全性和实用性.

1 蜜罐技术

蜜罐是一种安全资源,它的价值就在于可被探测、攻击和攻陷[2].蜜罐可以是一台单独的计算机,或是由多台主机和网络设备构成的整个子网,后者有时也称为蜜网.相对于其他网络安全技术而言,蜜罐技术主要有2大优势:一是数据收集.蜜罐主机并不是一个运营系统,因此在蜜罐上采集到的信息很可能是攻击者所产生的,从而很好地解决了区分恶意行为和正常行为的问题.二是资源占用.安全资源总是有限的,因此在数据量过大时,很多安全工具都存在无法及时处理的问题.而对于蜜罐来说,接收到的基本上都是异常流量,对资源的要求很低.

随着蜜罐技术的发展,蜜罐的功能也不再局限于信息的采集,也可用于攻击的预防、检测和反应.例如, LaBreaTarpit蜜罐[3]可以用于延缓自动化的TCP攻击(典型的如蠕虫).

2 研究型和产品型蜜罐的比较

按照部署目的可以将蜜罐分为研究型和产品型2类[4].研究型蜜罐的使用者是安全研究人员和机构,目的是搜集攻击者的信息,从而改进防御手段和方法;产品型蜜罐则面向普通用户,目的则是部署于实际业务网络中,用于降低安全风险、保护信息资产.由于目的不同,导致2种蜜罐在很多方面都具有不同的特点.

对于研究型蜜罐,为了引诱到攻击者、不被攻击者识破及得到有用的信息,研究型蜜罐从部署到信息采集和信息分析的整个过程都需要经过精心设计、人工干预.因此研究型蜜罐的使用者往往具有很高的专业素质,能够熟练使用各种安全系统、工具、手段,并且往往会自行开发一些特殊的工具.而对于产品型蜜罐,则希望它能像防护墙一样即装即用,尽量不需人工干预,实现傻瓜化、智能化.

研究型蜜罐往往需要使用高交互蜜罐.因为高交互蜜罐具有真实的操作系统,攻击者难以根据系统的行为识破其伪装,但同时也带来了被攻击者利用作为攻击跳板的风险.而产品型蜜罐则多采用低交换蜜罐,它们只模拟系统或服务的某些方面的行为,因此较容易被识破,但由于其并不具有表现出来的漏洞,难以被攻陷,因此不会为系统带来额外的风险.

总体而言,产品型蜜罐是要在整个安全防护体系中发挥一定的作用,而研究型蜜罐解决的是前沿的、未知的安全问题.

3 产品型蜜罐的特殊需求

近年来,研究型蜜罐领域取得了长足的进展,出现了很多成熟的工具和系统,其中大部分是开源的.典型的有用于在网络层虚拟网络及主机的Honeyd[5]、用于收集恶意软件的Nepenthes[6]、用于采集攻击者行为的Sebek[7]等.作为研究型蜜罐,这些工具和系统在功能上已经比较全面,但是要成为供一般用户所使用的产品,还应具备以下特性:

1)部署的简单性.研究型蜜罐一般安装部署较复杂.大部分研究型蜜罐都是基于Linux,并且只提供源代码,用户往往需要下载源代码,然后编译安装.有时蜜罐代码本身又依赖于很多其他的库,则整个过程更加复杂.虽然有些Linux发行包(distribution)已经提供了安装包,但仍然存在安装包版本更新不及时,大量部署较麻烦的问题.

2)配置的方便性.蜜罐系统运行往往都有很多的参数需要配置.在研究型蜜罐系统中,这些配置信息基本上都是以文本的形式存储在一个或多个配置文件中,需要使用者手工编辑这些配置文件.当配置数据量很大时,这个工作很耗时,同时也很容易出错.另外,不同的蜜罐系统使用的不同的配置文件格式也大大增加了用户的工作量.特别是当需要混合使用不同的工具和系统时,配置的复杂性大大增加,往往超出了一般网络管理人员的能力.

3)支持远程管理.研究型蜜罐一般没有远程管理接口,操作员通过SSH远程登录来实现对蜜罐系统的管理.普通用户显然无法做到这一点,要求产品型蜜罐必须提供远程管理接口,并且需要采取有效的安全手段来保证不会被攻击者所利用,成为新的安全隐患.

4)可进行模块管理、更新和升级.安全技术是不断发展的,每天都会发现新的漏洞和新的攻击方法.为了适应攻击方法的不断变化,蜜罐系统往往是模块化的,通过模块的增加和更新来实现新的功能,模拟新的系统特征,应对新的攻击手段.研究型蜜罐一般通过不同的脚本程序来模拟各种服务器软件,通过增加、修改这些脚本程序就可以实现对新的服务器的模拟或者是模拟新的系统漏洞,研究人员可自行维护、管理和开发脚本.一般用户不可能去编写这些模块/脚本,这就要求产品型蜜罐系统升级只能由开发者进行,用户要做的就是像升级杀毒软件一样,通过简单的操作就可进行定期的更新和升级.

5)强大的日志分析和处理能力.所有的蜜罐系统都会在运行中产生大量的日志信息.对于大部分研究型蜜罐系统,这些日志信息只是简单地写入日志文件或者通过网络发送给目的主机.而对于日志的分析处理(如过滤、查询、分析、报警等)工作,则由用户通过其他的日志分析软件或者自行开发程序完成.这种方式的优点是具有高度的灵活性,使用者可以任意选择适合的分析工具和手段.但这对普通使用者来说反而是种负担,他们需要的是一个完整的即装即用的系统,具有完善的日志分析和处理能力.

6)支持与其他系统的集成.产品型蜜罐作为防御体系的一部分,需要与其他安全产品(如防火墙、IDS)部署在一起.这就要求产品型蜜罐不仅仅作为一个系统独立运行和管理,还需要与其他系统集成,更好地发挥协同效应.另外,采用不同技术路线的蜜罐系统之间也需要集成,来形成一个综合性的蜜罐系统.这些对于研究型蜜罐来说并不是重点,研究还不够深入.

4 系统设计

在研究开源蜜罐系统Honeyd的基础之上,本文设计并实现了一个基本满足产品型蜜罐特性的系统.系统的主要特性包括:①可以对分布的多个蜜罐主机进行远程管理和配置;②可以对蜜罐进行实时监控;③可以对蜜罐主机上的脚本程序进行统一的维护管理,包括脚本程序的安装、卸载、升级等;④蜜罐的配置、管理和监控都采用可视化的方式.

4.1 系统结构

系统主要由蜜罐主机、管理监控子系统两部分构成,系统结构见图1.

图1 系统结构图Fig.1 System architecture

蜜罐主机以Honeyd为核心,完成低交互蜜罐的模拟工作.为了实现对蜜罐主机的远程管理,蜜罐主机还包括一个管控代理进程.管控代理接收并执行来自管理监控子系统的管理操作,同时它还将Honeyd产生的事件日志发送给管理监控子系统.

管理监控子系统负责对系统内各个蜜罐主机的配置、管理和监控,主要由蜜罐管理配置工具、蜜罐实时监控程序两部分构成;另外还包括用于存放所有配置信息的蜜罐配置库和存放事件信息的运行日志库.

4.2 功能实现设计

4.2.1 对蜜罐的远程管理和配置 对蜜罐的远程管理和配置使用C/S模式,位于蜜罐主机上的管控代理作为服务器端,蜜罐管理配置工具作为客户端.一个蜜罐管理配置工具可以连接并管理多个蜜罐主机.

两者之间的通信采用SOAP协议,通信安全主要通过防火墙和SSL加密技术保证.蜜罐主机上的防火墙配置为只允许来自指定管理终端的连接,客户端与服务器之间的所有通信都通过SSL传输.使用这2种措施后,攻击者即使控制了网络中其他主机,也无法对蜜罐主机进行控制.

Honeyd用于虚拟一个低交互的蜜网,蜜网的配置信息包括蜜网的拓扑、蜜网中每台虚拟主机的操作系统特征、虚拟主机上模拟的网络服务.Honeyd以文本文件的方式存储这些信息.当蜜网规模较大时,由人工编写这样一个文件工作量很大,而且很容易出错.为了给用户提供直观的操作界面,系统实现了一个图形化的蜜网设计工具,蜜网的拓扑、主机配置等以直观的方式呈现给用户,此工具同时实现对用户配制的正确性、合理性和检查.

4.2.2 对蜜罐的实时监控 管控代理截获Honeyd的日志数据,解析后发送给蜜网实时监控程序.实时监控程序一方面在GU I上实时显示攻击信息,同时将所有信息写入日志库,以便日后的查询与分析.实时监控程序与蜜网配置工具共享配置库,因此能够以用户设计的蜜网结构来展示整个蜜罐受探测和攻击的情况.

在蜜网遭受探测或攻击过程中,Honeyd会产生大量事件日志,特别是网络包级事件几乎对于每个收到的IP包都会产生一个,如果将所有事件不做处理都转发给管理监控子系统将消耗较多的网络和处理资源,从而可能影响系统和实际网络的运行.管控代理内部包含一个日志过滤模块,根据管理人员设定的规则来对事件信息进行过滤.

4.2.3 脚本程序的维护管理 Honeyd使用脚本程序来模拟虚拟主机上运行的各种网络服务.在配置文件中,通过add命令指定虚拟主机的端口所对应的脚本程序.例如,命令add vhost1 p roto tcp port 22"./ scrip ts/ssh-emul.py",表示对于虚拟主机vhost1,目的端口为22的TCP连接,使用/scrip ts/ssh-em ul.py脚本处理.

对于脚本程序的组织、存放和管理,Honeyd并没有任何规定,完全由管理人员手工维护,从而导致容易发生各种配置错误的情况,例如,将模拟IISW EB服务的脚本错误地配置到操作系统为Linux的虚拟主机.

为了实施对脚本程序的管理,系统为脚本程序维护一组元信息,其中主要包括:

1)名称,此名称用于在系统内唯一标识一个脚本程序;

2)模拟的服务类型,如WEB、FTP等;

3)模拟的软件名称和版本,如IIS 6.0、Apache 2.0;

4)支持的操作系统,如Window s、Linux等.

配置工具根据这些元信息来对用户配置进行检查,防止错误的配置.同时管理配置工具还可以将新的脚本程序分发到各个蜜罐主机,或者对已有的脚本程序进行升级.

5 结论

本文比较了研究型和产品型蜜罐的区别,分析并提出了产品型蜜罐所应具备的特性,设计了一个基于Honeyd的产品型蜜罐系统,通过应用公钥加密、图形化操作等技术,使得系统具有较高的安全性和实用性.下一步考虑在系统中采用多样的蜜罐技术,完善数据分析处理,并实现与IDS的集成.

[1] Schneier B.Secrets&Lies:Digital Security in a Networked World[M].New Yo rk:John Wiley&Sons,2000.

[2] Spitzner L.The value of honeypots[EB/OL].[2010-03-20].http://www.net-security.org/dl/review s/spitznerch04.pdf.

[3] Liston T.LaBrea:sticky honeypot and IDS[EB/OL].[2010-03-20].http://labrea.sourceforge.net/labrea-info.htm l.

[4] Spitzner L.Honeypo ts,definitions and value of honeypots[EB/OL].[2010-03-20].http://www.enteract.com/~lspitz/honeypot.htm l.

[5] Provos N,Holz T.Virtual Honeypots:from Botnet Tracking to Intrusion Detection[M].San Francisco:Addison-Wesley,2007.

[6] Nepenthes Developers.Nepenthes readme[EB/OL].[2010-04-15].http://nepenthes.carnivo re.it.

[7] Sebek Project M em bers.Sebek documentation[EB/OL].[2010-04-15].http://www.honeynet.o rg/p roject/sebek.

[8] 杨宏宇,谢丽霞.网络入侵诱骗技术:蜜罐系统的应用[J].计算机工程,2006,32(13):176-181.

[9] 冯朝辉.Honeynet技术研究与实例配置[J].计算机工程,2007,33(5):132-134.

A Honeyd Based on the Production Honeypot

ZENG Xiao-guang, ZHENG Cheng-hui, LA IHai-guang, ZHAO Chen
(Institute of Comm and A utom ation,PLA University of Science and Technology,N anjing 210007,China)

Based on the technology of the research honeypot the necessary features of p roduction honeypot are analyzed.A p roduction honeypot based on Honeyd is designed and imp lemented. The system emp loys public key cryp tography and visualization technology,and has good security and usability.

honeypot;honeynet;p roduction honeypo t;Honeyd

TP 393.08

A

1671-6841(2010)03-0063-04

2010-03-01

曾晓光(1977-),男,讲师,硕士,主要从事计算机软件及网络安全研究,E-mail:xgzeng@gmail.com;通讯联系人:郑成辉(1977 -),男,讲师,硕士,主要从事网络安全研究,E-mail:chh.zheng@163.com.

猜你喜欢
蜜罐脚本研究型
酒驾
国有企业研究型审计思考与探索
安奇奇与小cool 龙(第二回)
◆素材
蜜罐蚁
被自己撑死的蜜罐蚁
快乐假期
哈密瓜:乡间蜜罐
小编的新年愿望
时军:定锚现代化研究型医院