DOITAPP
DOIT数据智能产业媒体与服务平台
立即打开
DOITAPP
DOIT数据智能产业媒体与服务平台
立即打开

蜜罐技术:如何跟踪攻击者的活动?(下)

蜜罐部署

无论是高交互蜜罐还是低交互蜜罐,都被设计成在互联网上不进行传统目的活动。换句话说,除操作系统要求的以外,蜜罐系统不运行其他的进程、服务和后台程序。这种思想实际上把所有与蜜罐有关的交互作用都当作具有恶意活动嫌疑的对象,这样一来反而有利于检测攻击活动。在探讨蜜罐部署的最佳做法之前,先让我们来看一下常用的高交互和低交互蜜罐。

通常情况下,高交互蜜罐不需要专用软件就可以进行底层操作系统的安装。一般来说,安装一个VMware工作站或者用一个类似QEMU的虚拟机,就足以满足蜜罐对操作系统的要求了(典型情况是,主机上的客户操作系统运行虚拟软件)。底层操作系统安装好后,下一步的重点就是进行设置,以对蜜罐(客户操作系统)进行合理的监测。这一设置要分为两部分:监测主机操作系统和监测客户操作系统。主机操作系统应该重点对进出蜜罐的流量进行抓包,这一过程可以利用像tcpdump 或Wireshark之类的程序来完成。同时,如果客户操作系统被感染,恶意带外连接会造成潜在的附加危害,对这一情况用户希望提前被警告,这也被叫做挤压检测(extrusion detection)。这一点可以利用类似iptables(或者基于主机的防火墙)的本地访问控制列表来完成。执行带内过滤实质上是对蜜罐所受攻击的类型实施部分控制。用户可以把主机操作系统流量过滤和入侵检测系统(例如Snort)结合起来,从而获得针对已知攻击媒介的附加报警能力(也就是基于签名的报警)。

对客户操作系统,或者是攻击的实际目标进行监测,需要捕捉到攻击者的所有活动,比如跟踪键盘记录活动、记录攻击者所用的工具和记载权限扩大尝试。Sebek就是一款能够完成上述大规模数据搜集活动的工具。另外一些值得关注的虚拟化高交互蜜罐还有用户模式的Linux和Argos系统。

与高交互蜜罐不同,低交互蜜罐需要在主机操作系统上安装特殊的软件,另外还要进一步配置,以便有效地模拟有缺陷的服务。较受欢迎的低交互蜜罐技术有Nepenthes,以及后续产品Dionaea和mwcollectd。

低交互蜜罐创造性地配置了多种检测功能,包括广泛记录功能、恶意软件捕捉功能、实时安全事件通知,以及提交恶意软件活动进行远程分析。它们的功能还可以进一步提高,方法是使用Nepenthes中的log-IRC附加模块,通过Dionaea和p0f模块一同使用还可以获得被动识别远程操作系统的能力。Dionaea同样支持XMPP(可扩展消息现场协议)模块,该模块可以在企业之间和安全社区中实现恶意软件二进制共享,从而提高用户的安全意识。

笔者接触过一些与高交互蜜罐监测有关的部署最佳实践,这些实践中执行了带内和带外的过滤,以及网络入侵检测。这些功能有待于增强,还需要强化蜜罐和正常网络之间的隔离。理想的情况是,蜜罐环境应该部署在自己专用的互联网入口上,而主机的操作系统管理则放在另一个独立的网络上。另一方面,低交互蜜罐无法被攻击者全部攻破,因此它们的保护工作要简单一些。利用chroot之类的程序,可以把低交互蜜罐系统隔离到一个较小的文件系统中。另外,低交互蜜罐系统也要与正常网络彻底隔离,否则低交互蜜罐仍旧会暴露在与高交互蜜罐相同的威胁下。

典型应用

蜜罐的主要用途之一是收集恶意软件样本。这些样本可能利用零日漏洞(zero-day vulnerabilities),或已知的攻击向量。蜜罐可以让研究者对上述攻击有更好的了解。例如,通过监测IRC控制通道,蜜罐就可以提供实时攻击流量。它们还具备被动识别攻击者操作系统类型,或存储/重演攻击活动的能力。另外,它们允许研究者共享威胁信息(例如XMPP),或者把样本提交给在线沙盒和多反病毒扫描工具(如VirusTotal、Jotti、ThreatExpert和CWSandbox)进行进一步分析。

蜜罐收集恶意软件活动的领域可以扩展到僵尸系统(bot)和僵尸网络(botnet)。僵尸网络拥有分布式的特点,依赖于远程命令通道的使用(一般是通过IRC和 HTTP),利用的往往是零日攻击或已知攻击向量,这种体系结构使得蜜罐可以很好的对其进行跟踪和分析。

对企业而言,蜜罐的实用性远大于上述情况。然而,蜜罐的有效性很大程度上取决于能否有一个好的设计。任何设计缺陷(比如,不充分的隔离、缺乏监测和实时报警能力)都可能把蜜罐变为严重的负债,而不是可以对危险进行管理的资产。使用蜜罐时,适当的小心和谨慎很必要。如果你没有充足的经验却希望使用蜜罐,那你就需要时常向训练过的专业人士咨询。

蜜罐技术:如何跟踪攻击者的活动?(上)

未经允许不得转载:DOIT » 蜜罐技术:如何跟踪攻击者的活动?(下)