开篇:润墨网以专业的文秘视角,为您筛选了一篇蜜罐信息采集技术分析范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
摘要 蜜罐是一种主动防御的网络安全技术,可以吸引黑客的攻击,监视和跟踪入侵者的行为并且记录下来进行分析,从而研究入侵者所使用的攻击工具、策略和方法。该文介绍蜜罐技术的基本概念,分析了蜜罐的安全价值,详细研究了蜜罐的信息收集技术,同时也讨论了蜜罐系统面临的安全威胁与防御对策。
关键字 蜜罐,交互性,入侵检测系统,防火墙
1引言
现在网络安全面临的一个大问题是缺乏对入侵者的了解。即谁正在攻击、攻击的目的是什么、如何攻击以及何时进行攻击等,而蜜罐为安全专家们提供一个研究各种攻击的平台。它是采取主动的方式,用定制好的特征吸引和诱骗攻击者,将攻击从网络中比较重要的机器上转移开,同时在黑客攻击蜜罐期间对其行为和过程进行深入的分析和研究,从而发现新型攻击,检索新型黑客工具,了解黑客和黑客团体的背景、目的、活动规律等。
2蜜罐技术基础
2.1 蜜罐的定义
蜜罐是指受到严密监控的网络诱骗系统,通过真实或模拟的网络和服务来吸引攻击,从而在黑客攻击蜜罐期间对其行为和过程进行分析,以搜集信息,对新攻击发出预警,同时蜜罐也可以延缓攻击和转移攻击目标。
蜜罐在编写新的ids特征库、发现系统漏洞、分析分布式拒绝服务(ddos)攻击等方面是很有价值的。蜜罐本身并不直接增强网络的安全性,将蜜罐和现有的安全防卫手段如入侵检测系统(ids)、防火墙(firewall)、杀毒软件等结合使用,可以有效提高系统安全性。
2.2 蜜罐的分类
根据蜜罐的交互程度,可以将蜜罐分为3类:
蜜罐的交互程度(level of involvement)指攻击者与蜜罐相互作用的程度。
⑴ 低交互蜜罐
只是运行于现有系统上的一个仿真服务,在特定的端口监听记录所有进入的数据包,提供少量的交互功能,黑客只能在仿真服务预设的范围内动作。低交互蜜罐上没有真正的操作系统和服务,结构简单,部署容易,风险很低,所能收集的信息也是有限的。
⑵ 中交互蜜罐
也不提供真实的操作系统,而是应用脚本或小程序来模拟服务行为,提供的功能主要取决于脚本。在不同的端口进行监听,通过更多和更复杂的互动,让攻击者会产生是一个真正操作系统的错觉,能够收集更多数据。开发中交互蜜罐,要确保在模拟服务和漏洞时并不产生新的真实漏洞,而给黑客渗透和攻击真实系统的机会。
⑶ 高交互蜜罐
由真实的操作系统来构建,提供给黑客的是真实的系统和服务。给黑客提供一个真实的操作系统,可以学习黑客运行的全部动作,获得大量的有用信息,包括完全不了解的新的网络攻击方式。正因为高交互蜜罐提供了完全开放的系统给黑客,也就带来了更高的风险,即黑客可能通过这个开放的系统去攻击其他的系统。
2.3蜜罐的拓扑位置
蜜罐本身作为一个标准服务器对周围网络环境并没有什么特别需要。理论上可以布置在网络的任何位置。但是不同的位置其作用和功能也是不尽相同。
如果用于内部或私有网络,可以放置在任何一个公共数据流经的节点。如用于互联网的连接,蜜罐可以位于防火墙前面,也可以是后面。
⑴ 防火墙之前:如见图1中蜜罐(1),蜜罐会吸引象端口扫描等大量的攻击,而这些攻击不会被防火墙记录也不让内部ids系统产生警告,只会由蜜罐本身来记录。
因为位于防火墙之外,可被视为外部网络中的任何一台普通的机器,不用调整防火墙及其它的资源的配置,不会给内部网增加新的风险,缺点是无法定位或捕捉到内部攻击者,防火墙限制外向交通,也限制了蜜罐的对内网信息收集。
⑵ 防火墙之后:如图1中蜜罐(2),会给内部网带来安全威胁,尤其是内部网没有附加的防火墙来与蜜罐相隔离。蜜罐提供的服务,有些是互联网的输出服务,要求由防火墙把回馈转给蜜罐,不可避免地调整防火墙规则,因此要谨慎设置,保证这些数据可以通过防火墙进入蜜罐而不引入更多的风险。
优点是既可以收集到已经通过防火墙的有害数据,还可以探查内部攻击者。缺点是一旦蜜罐被外部攻击者攻陷就会危害整个内网。
还有一种方法,把蜜罐置于隔离区dmz内,如图1中蜜罐(3)。隔离区只有需要的服务才被允许通过防火墙,因此风险相对较低。dmz内的其它系统要安全地和蜜罐隔离。此方法增加了隔离区的负担,具体实施也比较困难。
3 蜜罐的安全价值
蜜罐是增强现有安全性的强大工具,是一种了解黑客常用工具和攻击策略的有效手段。根据p2dr动态安全模型,从防护、检测和响应三方面分析蜜罐的安全价值。
⑴ 防护 蜜罐在防护中所做的贡献很少,并不会将那些试图攻击的入侵者拒之门外。事实上蜜罐设计的初衷就是妥协,希望有人闯入系统,从而进行记录和分析。
有些学者认为诱骗也是一种防护。因为诱骗使攻击者花费大量的时间和资源对蜜罐进行攻击,从而防止或减缓了对真正系统的攻击。
⑵ 检测 蜜罐的防护功能很弱,却有很强的检测功能。因为蜜罐本身没有任何生产行为,所有与蜜罐的连接都可认为是可疑行为而被纪录。这就大大降低误报率和漏报率,也简化了检测的过程。
现在的网络主要是使用入侵检测系统ids来检测攻击。面对大量正常通信与可疑攻击行为相混杂的网络,要从海量的网络行为中检测出攻击是很困难的,有时并不能及时发现和处理真正的攻击。高误报率使ids失去有效的报警作用,蜜罐的误报率远远低于大部分ids工具。
另外目前的ids还不能够有效地对新型攻击方法进行检测,无论是基于异常的还是基于误用的,都有可能遗漏新型或未知的攻击。蜜罐可以有效解决漏报问题,使用蜜罐的主要目的就是检测新的攻击。
⑶ 响应 蜜罐检测到入侵后可以进行响应,包括模拟回应来引诱黑客进一步攻击,发出报警通知系统管理员,让管理员适时的调整入侵检测系统和防火墙配置,来加强真实系统的保护等。
4 蜜罐的信息收集
要进行信息分析,首先要进行信息收集,下面分析蜜罐的数据捕获和记录机制。根据信息捕获部件的位置,可分为基于主机的信息收集和基于网络的信息收集。
4.1 基于主机的信息收集
基于主机的信息收集有两种方式,一是直接记录进出主机的数据流,二是以系统管理员身份嵌入操作系统内部来监视蜜罐的状态信息,即所谓“peeking”机制。
⑴ 记录数据流
直接记录数据流实现一般比较简单,主要问题是在哪里存储这些数据。
收集到的数据可以本地存放在密罐主机中,例如把日志文件用加密技术放在一个隐藏的分区中。本地存储的缺点是系统管理员不能及时研究这些数据,同时保留的日志空间可能用尽,系统就会降低交互程度甚至变为不受监控。攻击者也会了解日志区域并且试图控制它,而使日志文件中的数据不再是可信数据。
因此,将攻击者的信息存放在一个安全的、远程的地方相对更合理。以通过串行设备、并行设备、usb或firewire技术和网络接口将连续数据存储到远程日志服务器,也可以使用专门的日志记录硬件设备。数据传输时采用加密措施。
⑵ 采用“peeking”机制
这种方式和操作系统密切相关,实现相对比较复杂。
对于微软系列操作系统来说,系统的源代码是很难得到,对操作系统的更改很困难,无法以透明的方式将数据收集结构与系统内核相结合,记录功能必须与攻击者可见的用户空间代码相结合。蜜罐管理 员一般只能察看运行的进程,检查日志和应用md-5检查系统文件的一致性。
对于unix系列操作系统,几乎所有的组件都可以以源代码形式得到,则为数据收集提供更多的机会,可以在源代码级上改写记录机制,再重新编译加入蜜罐系统中。需要说明,尽管对于攻击者来说二进制文件的改变是很难察觉,一个高级黑客还是可能通过如下的方法探测到:
·md-5检验和检查:如果攻击者有一个和蜜罐对比的参照系统,就会计算所有标准的系统二进制文件的md-5校验和来测试蜜罐。
·库的依赖性和进程相关性检查:即使攻击者不知道原始的二进制系统的确切结构,仍然能应用特定程序观察共享库的依赖性和进程的相关性。例如,在unix操作系统中,超级用户能应用truss或strace命令来监督任何进程,当一个象grep(用来文本搜索)的命令突然开始与系统日志记录进程通信,攻击者就会警觉。库的依赖性问题可以通过使用静态联接库来解决。
另外如果黑客攻陷一台机器,一般会安装所谓的后门工具包,这些文件会代替机器上原有的文件,可能会使蜜罐收集数据能力降低或干脆失去。因此应直接把数据收集直接融入unix内核,这样攻击者很难探测到。修改unix内核不象修改unix系统文件那么容易,而且不是所有的unix版本都有源代码形式的内核。不过一旦源代码可用,这是布置和隐藏数据收集机制有效的方法。
4.2 基于网络的信息收集
基于主机的信息收集定位于主机本身,这就很容易被探测并终止。基于网络的信息收集将收集机制设置在蜜罐之外,以一种不可见的方式运行,很难被探测到,即使探测到也难被终止,比基于主机的信息收集更为安全。可以利用防火墙和入侵检测系统从网络上来收集进出蜜罐的信息。
⑴ 防火墙
可以配置防火墙记录所有的出入数据,供以后仔细地检查。用标准文件格式来记录,如linux系统的tcpdump兼容格式,可以有很多工具软件来分析和解码录制的数据包。也可以配置防火墙针对进出蜜罐数据包触发报警,这些警告可以被进一步提炼而提交给更复杂的报警系统,来分析哪些服务己被攻击。例如,大部分利用漏洞的程序都会建立一个shell或打开某端口等待外来连接,防火墙可以记录那些试图与后门和非常规端口建立连接的企图并且对发起源的ip告警。防火墙也是数据统计的好地方,进出数据包可被计数,研究黑客攻击时的网络流量是很有意义的。
⑵ 入侵检测系统
网络入侵检测系统nids在网络中的放置方式使得它能够对网络中所有机器进行监控。可以用hids记录进出蜜罐的所有数据包,也可以配置nids只去捕获我们感兴趣的数据流。
在基于主机的信息收集中,高明的入侵者会尝试闯入远程的日志服务器试图删除他们的入侵记录,而这些尝试也正是蜜罐想要了解和捕获的信息。即使他们成功删除了主机内的日志,nids还是在网内静静地被动捕获着进出蜜罐的所有数据包和入侵者的所有活动,此时nids充当了第二重的远程日志系统,进一步确保了网络日志记录的完整性。
当然,不论是基于误用还是基于异常的nids都不会探测不到所有攻击,对于新的攻击方式,特征库里将不会有任何的特征,而只要攻击没有反常情况,基于异常的nids就不会触发任何警告,例如慢速扫描,因此要根据蜜罐的实际需要来调整ids配置。
始终实时观察蜜罐费用很高,因此将优秀的网络入侵检测系统和蜜罐结合使用是很有用的。
4.3 主动的信息收集
信息也是可以主动获得,使用第三方的机器或服务甚至直接针对攻击者反探测,如whois,portscan等。这种方式很危险,容易被攻击者察觉并离开蜜罐,而且不是蜜罐所研究的主要范畴。
5 蜜罐的安全性分析
5.1 蜜罐的安全威胁
必须意识到运行蜜罐存在的一定的风险,有三个主要的危险是:
⑴ 未发现黑客对蜜罐的接管
蜜罐被黑客控制并接管是非常严重的,这样的蜜罐已毫无意义且充满危险。一个蜜罐被攻陷却没有被蜜罐管理员发现,则蜜罐的监测设计存在着缺陷。
⑵ 对蜜罐失去控制
对蜜罐失去控制也是一个严重的问题,一个优秀的蜜罐应该可以随时安全地终止进出蜜罐的任何通讯,随时备份系统状态以备以后分析。要做到即使蜜罐被完全攻陷,也仍在控制之中。操作者不应该依靠与蜜罐本身相关的任何机器。虚拟机同样存在危险,黑客可能突破虚拟机而进入主机操作系统,因此虚拟蜜罐系统的主机同样是不可信的。
失去控制的另一方面是指操作者被黑客迷惑。如黑客故意制造大量的攻击数据和未过滤的日志事件以致管理员不能实时跟踪所有的活动,黑客就有机会攻击真正目标。
⑶ 对第三方的损害
指攻击者可能利用蜜罐去攻击第三方,如把蜜罐作为跳板和中继发起端口扫描、ddos攻击等。
5.2 降低蜜罐的风险
首先,要根据实际需要选择最低安全风险的蜜罐。事实上并不总是需要高交互蜜罐,如只想发现公司内部的攻击者及谁探查了内部网,中低交互的蜜罐就足够了。如确实需要高交互蜜罐可尝试利用带防火墙的蜜网而不是单一的蜜罐。
其次,要保证攻击蜜罐所触发的警告应当能够立即发送给蜜罐管理员。如探测到对root权限的尝试攻击就应当在记录的同时告知管理员,以便采取行动。要保证能随时关闭蜜罐,作为最后的手段,关闭掉失去控制的蜜罐,阻止了各种攻击,也停止了信息收集。
相对而言保护第三方比较困难,蜜罐要与全球的网络交互作用才具有吸引力而返回一些有用的信息,拒绝向外的网络交通就不会引起攻击者太大的兴趣,而一个开放的蜜罐资源在黑客手里会成为有力的攻击跳板,要在二者之间找到平衡,可以设置防火墙对外向连接做必要的限定:
⑴ 在给定时间间隔只允许定量的ip数据包通过。
⑵ 在给定时间间隔只允许定量的tcp syn数据包。
⑶ 限定同时的tcp连接数量。
⑷ 随机地丢掉外向ip包。
这样既允许外向交通,又避免了蜜罐系统成为入侵者攻击他人的跳板。如需要完全拒绝到某个端口的外向交通也是可以的。另一个限制方法是布置基于包过滤器的ids,丢弃与指定特征相符的包,如使用hogwash包过滤器。
6 结语
蜜罐系统是一个比较新的安全研究方向。相对于其它安全机制,蜜罐使用简单,配置灵活,占用的资源少,可以在复杂的环境下有效地工作,而且收集的数据和信息有很好的针对性和研究价值。既能作为独立的安全信息工具,还可以与其他的安全机制协作使用,取长补短地对入侵进行检测,查找并发现新型攻击和新型攻击工具。
蜜罐也有缺点和不足,主要是收集数据面比较狭窄和给使用环境引入了新的风险。面对不断改进的黑客技术,蜜罐技术也要不断地完善和更新。
参考文献
[1] 熊华,郭世泽等.网络安全—取证与蜜罐[m].北京人民邮电出版社,2003,97-136
[2] lance spitzner.definitions and value of honeypots.[eb/ol]. .2002.
[3]赵伟峰,曾启铭.一种了解黑客的有效手段—蜜罐(honeypot) [j].计算机应用,2003,23(s1):259-261.
[4]马晓丽,赵站生,黄轩.honeypot—网络陷阱.计算机工程与应用,2003.39(4):162-165.
[5]王璐,秦志光,张文科.业务蜜网技术与应用.计算机应用,2004.24(3):43-45.
[6]刘宝旭,曹爱娟,许榕生.陷阱网络技术综述.网络安全技术与应用,2003,12(1):65-69