• 55.00 KB
  • 2022-06-16 12:37:55 发布

蜜罐技术详解与案例分析

  • 9页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
1.引言随着人类社会生活对Internet需求的日益增长,网络安全逐渐成为Internet及各项网络服务和应用进一步发展的关键问题,特别是1993年以后Internet开始商用化,通过Internet进行的各种电子商务业务日益增多,加之Internet/Intranet技术日趋成熟,很多组织和企业都建立了自己的内部网络并将之与Internet联通。上述上电子商务应用和企业网络中的商业秘密均成为攻击者的目标。据美国商业杂志《信息周刊》公布的一项调查报告称,黑客攻击和病毒等安全问题在2000年造成了上万亿美元的经济损失,在全球范围内每数秒钟就发生一起网络攻击事件。2003年夏天,对于运行着MicrosoftWindows的成千上万台主机来说简直就是场噩梦!也给广大网民留下了悲伤的回忆,这一些都归结于冲击波蠕虫的全世界范围的传播。2.蜜罐技术的发展背景网络与信息安全技术的核心问题是对计算机系统和网络进行有效的防护。网络安全防护涉及面很广,从技术层面上讲主要包括防火墙技术、入侵检测技术,病毒防护技术,数据加密和认证技术等。在这些安全技术中,大多数技术都是在攻击者对网络进行攻击时对系统进行被动的防护。而蜜罐技术可以采取主动的方式。顾名思义,就是用特有的特征吸引攻击者,同时对攻击者的各种攻击行为进行分析并找到有效的对付办法。(在这里,可能要声明一下,刚才也说了,“用特有的特征去吸引攻击者”,也许有人会认为你去吸引攻击者,这是不是一种自找麻烦呢,但是,我想,如果攻击者不对你进行攻击的话,你又怎么能吸引他呢?换一种说话,也许就叫诱敌深入了)。3.蜜罐的概念在这里,我们首先就提出蜜罐的概念。美国L.Spizner是一个著名的蜜罐技术专家。他曾对蜜罐做了这样的一个定义:蜜罐是一种资源,它的价值是被攻击或攻陷。这就意味着蜜罐是用来被探测、被攻击甚至最后被攻陷的,蜜罐不会修补任何东西,这样就为使用者提供了额外的、有价值的信息。蜜罐不会直接提高计算机网络安全,但是它却是其他安全策略所不可替代的一种主动防御技术。具体的来讲,蜜罐系统最为重要的功能是对系统中所有操作和行为进行监视和记录,可以网络安全专家通过精心的伪装,使得攻击者在进入到目标系统后仍不知道自己所有的行为已经处于系统的监视下。为了吸引攻击者,通常在蜜罐系统上留下一些安全后门以吸引攻击者上钩,或者放置一些网络攻击者希望得到的敏感信息,当然这些信息都是虚假的信息。另外一些蜜罐系统对攻击者的聊天内容进行记录,管理员通过研究和分析这些记录,可以得到攻击者采用的攻击工具、攻击手段、攻击目的和攻击水平等信息,还能对攻击者的活动范围以及下一个攻击目标进行了解。同时在某种程度上,这些信息将会成为对攻击者进行起诉的证据。不过,它仅仅是一个对其他系统和应用的仿真,可以创建一个监禁环境将攻击者困在其中,还可以是一个标准的产品系统。无论使用者如何建立和使用蜜罐,只有它受到攻击,它的作用才能发挥出来。4.蜜罐的具体分类和体现的安全价值 自从计算机首次互连以来,研究人员和安全专家就一直使用着各种各样的蜜罐工具,根据不同的标准可以对蜜罐技术进行不同的分类,前面已经提到,使用蜜罐技术是基于安全价值上的考虑。但是,可以肯定的就是,蜜罐技术并不会替代其他安全工具,例如防火墙、系统侦听等。这里我也就安全方面的价值来对蜜罐技术进行探讨。★根据设计的最终目的不同我们可以将蜜罐分为产品型蜜罐和研究型蜜罐两类。①产品型蜜罐一般运用于商业组织的网络中。它的目的是减轻组织将受到的攻击的威胁,蜜罐加强了受保护组织的安全措施。他们所做的工作就是检测并且对付恶意的攻击者。⑴这类蜜罐在防护中所做的贡献很少,蜜罐不会将那些试图攻击的入侵者拒之门外,因为蜜罐设计的初衷就是妥协,所以它不会将入侵者拒绝在系统之外,实际上,蜜罐是希望有人闯入系统,从而进行各项记录和分析工作。⑵虽然蜜罐的防护功能很弱,但是它却具有很强的检测功能,对于许多组织而言,想要从大量的系统日志中检测出可疑的行为是非常困难的。虽然,有入侵检测系统(IDS)的存在,但是,IDS发生的误报和漏报,让系统管理员疲于处理各种警告和误报。而蜜罐的作用体现在误报率远远低于大部分IDS工具,也务须当心特征数据库的更新和检测引擎的修改。因为蜜罐没有任何有效行为,从原理上来讲,任何连接到蜜罐的连接都应该是侦听、扫描或者攻击的一种,这样就可以极大的减低误报率和漏报率,从而简化检测的过程。从某种意义上来讲,蜜罐已经成为一个越来越复杂的安全检测工具了。⑶如果组织内的系统已经被入侵的话,那些发生事故的系统不能进行脱机工作,这样的话,将导致系统所提供的所有产品服务都将被停止,同时,系统管理员也不能进行合适的鉴定和分析,而蜜罐可以对入侵进行响应,它提供了一个具有低数据污染的系统和牺牲系统可以随时进行脱机工作。此时,系统管理员将可以对脱机的系统进行分析,并且把分析的结果和经验运用于以后的系统中。②研究型蜜罐专门以研究和获取攻击信息为目的而设计。这类蜜罐并没有增强特定组织的安全性,恰恰相反,蜜罐要做的是让研究组织面对各类网络威胁,并寻找能够对付这些威胁更好的方式,它们所要进行的工作就是收集恶意攻击者的信息。它一般运用于军队,安全研究组织。★根据蜜罐与攻击者之间进行的交互,可以分为3类:低交互蜜罐,中交互蜜罐和高交互蜜罐,同时这也体现了蜜罐发展的3个过程。①低交互蜜罐最大的特点是模拟。蜜罐为攻击者展示的所有攻击弱点和攻击对象都不是真正的产品系统,而是对各种系统及其提供的服务的模拟。由于它的服务都是模拟的行为,所以蜜罐可以获得的信息非常有限,只能对攻击者进行简单的应答,它是最安全的蜜罐类型。②中交互是对真正的操作系统的各种行为的模拟,它提供了更多的交互信息,同时也可以从攻击者的行为中获得更多的信息。在这个模拟行为的系统中,蜜罐可以看起来和一个真正的操作系统没有区别。它们是真正系统还要诱人的攻击目标。 ③高交互蜜罐具有一个真实的操作系统,它的优点体现在对攻击者提供真实的系统,当攻击者获得ROOT权限后,受系统,数据真实性的迷惑,他的更多活动和行为将被记录下来。缺点是被入侵的可能性很高,如果整个高蜜罐被入侵,那么它就会成为攻击者下一步攻击的跳板。目前在国内外的主要蜜罐产品有DTK,空系统,BOF,SPECTER,HOME-MADE蜜罐,HONEYD,SMOKEDETECTOR,BIGEYE,LABREATARPIT,NETFACADE,KFSENSOR,TINY蜜罐,MANTRAP,HONEYNET十四种。5.蜜罐的配置模式①诱骗服务(deceptionservice)诱骗服务是指在特定的IP服务端口帧听并像应用服务程序那样对各种网络请求进行应答的应用程序。DTK就是这样的一个服务性产品。DTK吸引攻击者的诡计就是可执行性,但是它与攻击者进行交互的方式是模仿那些具有可攻击弱点的系统进行的,所以可以产生的应答非常有限。在这个过程中对所有的行为进行记录,同时提供较为合理的应答,并给闯入系统的攻击者带来系统并不安全的错觉。例如,当我们将诱骗服务配置为FTP服务的模式。当攻击者连接到TCP/21端口的时候,就会收到一个由蜜罐发出的FTP的标识。如果攻击者认为诱骗服务就是他要攻击的FTP,他就会采用攻击FTP服务的方式进入系统。这样,系统管理员便可以记录攻击的细节。②弱化系统(weakenedsystem)只要在外部因特网上有一台计算机运行没有打上补丁的微软Windows或者RedHatLinux即行。这样的特点是攻击者更加容易进入系统,系统可以收集有效的攻击数据。因为黑客可能会设陷阱,以获取计算机的日志和审查功能,需要运行其他额外记录系统,实现对日志记录的异地存储和备份。它的缺点是“高维护低收益”。因为,获取已知的攻击行为是毫无意义的。③强化系统(hardenedsystem)强化系统同弱化系统一样,提供一个真实的环境。不过此时的系统已经武装成看似足够安全的。当攻击者闯入时,蜜罐就开始收集信息,它能在最短的时间内收集最多有效数据。用这种蜜罐需要系统管理员具有更高的专业技术。如果攻击者具有更高的技术,那么,他很可能取代管理员对系统的控制,从而对其它系统进行攻击。④用户模式服务器(usermodeserver)用户模式服务器实际上是一个用户进程,它运行在主机上,并且模拟成一个真实的服务器。在真实主机中,每个应用程序都当作一个具有独立IP地址的操作系统和服务的特定是实例。而用户模式服务器这样一个进程就嵌套在主机操作系统的应用程序空间中,当INTERNET用户向用户模式服务器的IP地址发送请求,主机将接受请求并且转发到用户模式服务器上。(我们用这样一个图形来表示一下他们之间的关系):这种模式的成功与否取决于攻击者的进入程度和受骗程度。它的优点体现在系统管理员对用户主机有绝对的控制权。即使蜜罐被攻陷,由于用户模式服务器是一个用户进程,那么Administrator只要关闭该进程就可以了。另外就是可以将FIREWALL,IDS集中于同一台服务器上。当然,其局限性是不适用于所有的操作系统。 6.蜜罐的信息收集当我们察觉到攻击者已经进入蜜罐的时候,接下来的任务就是数据的收集了。数据收集是设置蜜罐的另一项技术挑战。蜜罐监控者只要记录下进出系统的每个数据包,就能够对黑客的所作所为一清二楚。蜜罐本身上面的日志文件也是很好的数据来源。但日志文件很容易被攻击者删除,所以通常的办法就是让蜜罐向在同一网络上但防御机制较完善的远程系统日志服务器发送日志备份。(务必同时监控日志服务器。如果攻击者用新手法闯入了服务器,那么蜜罐无疑会证明其价值。)近年来,由于黑帽子群体越来越多地使用加密技术,数据收集任务的难度大大增强。如今,他们接受了众多计算机安全专业人士的建议,改而采用SSH等密码协议,确保网络监控对自己的通讯无能为力。蜜网对付密码的计算就是修改目标计算机的操作系统,以便所有敲入的字符、传输的文件及其它信息都记录到另一个监控系统的日志里面。因为攻击者可能会发现这类日志,蜜网计划采用了一种隐蔽技术。譬如说,把敲入字符隐藏到NetBIOS广播数据包里面。7.蜜罐的实际例子下面我们以Redhatlinux9.0为平台,做一个简单的蜜罐陷阱的配置。我们知道,黑客一旦获得root口令,就会以root身份登录,这一登录过程就是黑客入侵的必经之路。其二,黑客也可能先以普通用户身份登录,然后用su命令转换成root身份,这又是一条必经之路。我们讨论如何在以下情况下设置陷阱:(1)当黑客以root身份登录时;(2)当黑客用su命令转换成root身份时;(3)当黑客以root身份成功登录后一段时间内;第一种情况的陷阱设置一般情况下,只要用户输入的用户名和口令正确,就能顺利进入系统。如果我们在进入系统时设置了陷阱,并使黑客对此防不胜防,就会大大提高入侵的难度系数。例如,当黑客已获取正确的root口令,并以root身份登录时,我们在此设置一个迷魂阵,提示它,你输入的口令错误,并让它重输用户名和口令。而其实,这些提示都是虚假的,只要在某处输入一个密码就可通过。黑客因此就掉入这个陷阱,不断地输入root用户名和口令,却不断地得到口令错误的提示,从而使它怀疑所获口令的正确性,放弃入侵的企图。给超级用户也就是root用户设置陷阱,并不会给系统带来太多的麻烦,因为,拥有root口令的人数不会太多,为了系统的安全,稍微增加一点复杂性也是值得的。这种陷阱的设置时很方便的,我们只要在root用户的.profile中加一段程序就可以了。我们完全可以在这段程序中触发其他入侵检测与预警控制程序。陷阱程序如下: #root.profileClearEcho“Youhadinputanerrorpassword,pleaseinputagain!”EchoEcho–n“Login:”ReadpIf(“$p”=“123456”)thenClearElseExit第二种情况的陷阱设置在很多情况下,黑客会通过su命令转换成root身份,因此,必须在此设置陷阱。当黑客使用su命令,并输入正确的root口令时,也应该报错,以此来迷惑它,使它误认为口令错误,从而放弃入侵企图。这种陷阱的设置也很简单,你可以在系统的/etc/profile文件中设置一个alias,把su命令重新定义成转到普通用户的情况就可以了,例如aliassu=”suuser1”。这样,当使用su时,系统判断的是user1的口令,而不是root的口令,当然不能匹配。即使输入suroot也是错误的,也就是说,从此屏蔽了转向root用户的可能性。第三种情况的陷阱设置如果前两种设置都失效了,黑客已经成功登录,就必须启用登录成功的陷阱。一旦root用户登录,就可以启动一个计时器,正常的root登录就能停止计时,而非法入侵者因不知道何处有计时器,就无法停止计时,等到一个规定的时间到,就意味着有黑客入侵,需要触发必要的控制程序,如关机处理等,以免造成损害,等待系统管理员进行善后处理。陷阱程序如下:#.testfiletimes=0while[$times–le30]dosleep1times=$[times+1]done halt/*30秒时间到,触发入侵检测与预警控制*/将该程序放入root.bashrc中后台执行:#root.bashrc….Sh.testfile&该程序不能用Ctrl-C终止,系统管理员可用jobs命令检查到,然后用kill%n将它停止。从上述三种陷阱的设置,我们可以看到一个一般的规律:改变正常的运行状态,设置虚假信息,使入侵者落入陷阱,从而触发入侵检测与预警控制程序。8.关键技术设计自蜜罐概念诞生之日起,相关技术一直在长足的发展。到今天为止,蜜罐技术应用的最高度应该说是Honeynet技术的实现。9.总结任何事物的存在都会有利弊,蜜罐技术的发展也是伴随着各种不同的观点而不断的成长的。蜜罐技术是通过诱导让黑客们误入歧途,消耗他们的精力,为我们加强防范赢得时间。通过蜜网让我们在受攻击的同时知道谁在使坏,目标是什么。同时也检验我们的安全策略是否正确,防线是否牢固,蜜罐的引入使我们与黑客之间同处于相互斗智的平台counter-intelligence,而不是处处遭到黑枪的被动地位。我们的网络并不安全,IDS,FIREWALL,Encryption技术都有其缺陷性,我们期待它们与蜜罐的完美结合,那将是对网络安全的最好礼物。我们完全相信,蜜罐技术必将在网络安全中发挥出极其重要的作用,一场世界上声势浩大的蜜罐技术行动必将到来黄河科技大学校园网中蜜罐技术的研究www.chinaqking.com期刊门户-中国期刊网2008-12-16来源:《中小企业管理与科技》供稿文/蔡丽虹1张韧志2[导读]摘要:以往校园网中一直使用传统蜜罐。传统蜜罐确实有着不少的优点,比如收集数据的保真度,不依赖于任何复杂的检测技术等。然而随着应用的广泛,传统蜜罐的缺点也开始显现了出来。取而代之的是由一组高交互用来获取广泛威胁信息的蜜罐组成的蜜网。本文针对蜜网中蜜罐所面临的挑战:捕获工具隐藏、加密会话数据的捕获、数据传输隐蔽通道,给出了详细的解决方案,从而更好地解决了我校校园网的安全问题。 摘要:以往校园网中一直使用传统蜜罐。传统蜜罐确实有着不少的优点,比如收集数据的保真度,不依赖于任何复杂的检测技术等。然而随着应用的广泛,传统蜜罐的缺点也开始显现了出来。取而代之的是由一组高交互用来获取广泛威胁信息的蜜罐组成的蜜网。本文针对蜜网中蜜罐所面临的挑战:捕获工具隐藏、加密会话数据的捕获、数据传输隐蔽通道,给出了详细的解决方案,从而更好地解决了我校校园网的安全问题。 关键词:蜜罐Linux模块隐藏加密会话捕获隐蔽通道 1引言 蜜罐是一种安全资源,其价值在于被扫描、攻击和攻陷。传统蜜罐有着不少的优点,比如收集数据的保真度,蜜罐不依赖于任何复杂的检测技术等,因此减少了漏报率和误报率。使用蜜罐技术能够收集到新的攻击工具和攻击方法,而不像目前的大部分入侵检测系统只能根据特征匹配的方法检测到已知的攻击。但是随着应用的广泛,传统蜜罐的缺点也开始暴露了出来,综合起来主要有3个方面:(1)蜜罐技术只能对针对蜜罐的攻击行为进行监视和分析,其视图不像入侵检测系统能够通过旁路侦听等技术对整个网络进行监控。(2)蜜罐技术不能直接防护有漏洞的信息系统并有可能被攻击者利用带来一定的安全风险。(3)攻击者的活动在加密通道上进行(IPSec,SSH,SSL,等等)增多,数据捕获后需要花费时间破译,这给分析攻击行为增加了困难。 针对以上问题出现了蜜网技术。蜜网技术实质上是一类研究型的高交互蜜罐技术,与传统蜜罐技术的差异在于,蜜网构成了一个黑客诱捕网络体系架构,在这个架构中,可以包含一个或多个蜜罐,同时保证了网络的高度可控性,以及提供多种工具以方便对攻击信息的采集和分析。 2蜜网中蜜罐所面临的挑战 蜜网是一个体系结构,成功地部署一个蜜网环境,这里有两个严格的需求,这也是针对传统蜜罐的缺点而提出来的。这两个需求是:数据控制和数据捕获。数据控制就是限制攻击者活动的机制,它可以降低安全风险。数据捕获就是监控和记录所有攻击者在蜜网内部的活动,包括记录加密会话中击键,恢复使用SCP拷贝的文件,捕获远程系统被记录的口令,恢复使用保护的二进制程序的口令等。这些捕获的数据将会被用于分析,从中学习黑客界成员们使用的工具、策略以及他们的动机。这正是蜜罐所要做的工作。 3解决方案 3.1捕获工具隐藏 3.1.1隐藏模块。捕获数据的工具是以模块化的机制在Linux系统启动后动态地加载到内核成为内核的一部分进行工作的。当捕获程序的模块被加载到内核时,一个记载已加载模块信息的安装模块链表里面就记录下已加载模块的信息,用户可以通过内存里动态生成的proc文件系统下的module文件来查看到。当特权用户root调用/sbin/insmod命令加载模块时会有一个系统调用sys_create_module,这个函数在Linux2.4的源代码中位于kernel/module.c。它会将含有新加载的模块信息的数据结构structmodule插入到名为moudle_list的模块链表中去。 当一个模块加载时,它被插入到一个单向链表的表头。黑客们在攻入蜜罐系统后,可以根据以上存在的漏洞,找出他们认为是可疑的蜜罐捕获模块并从内核卸载模块,这样蜜罐也就失去了它的功能。为了达到隐藏模块的目的就必须在加载模块后,将指向该模块的链表指针删除,这样通过遍历表查找时就再也无法找到该模块了。  3.1.2进程隐藏。进程是一个随执行过程不断变化的实体。在Linux系统运行任何一个命令或程序系统时都会建立起至少一个进程来执行。这样蜜罐捕获程序必定会在系统中运行多个进程,利用类似于ps这样查询进程信息的命令便可以得到所有的进程信息,这样很容易就会暴露蜜罐的存在。由于在Linux中不存在直接查询进程信息的系统调用,类似于ps这样查询进程信息的命令是通过查询proc文件系统来实现的。proc文件系统是一个虚拟的文件系统,它通过文件系统的接口实现,用于输出系统运行状态。它以文件系统的形式,为操作系统本身和应用进程之间的通信提供了一个界面,使应用程序能够安全、方便地获得系统当前的运行状况以及内核的内部数据信息,并可以修改某些系统的配置信息。由于proc以文件系统的接口实现,因此可以象访问普通文件一样访问它,但它只存在于内存之中,所以可以用隐藏文件的方法来隐藏proc文件系统中的文件,以达到隐藏进程的目的。 判断文件是否属于proc文件系统是根据它只存在于内存之中,不存在于任何实际设备之上这一特点,所以Linux内核分配给它一个特定的主设备号0以及一个特定的次设备号1,除此之外在外存上没有与之对应的i节点,所以系统也分配给它一个特殊的节点号PROC_ROOT_INO(值为1),而设备上的1号索引节点是保留不用的。这样可以得出判断一个文件是否属于proc文件系统的方法。(1)得到该文件对应的inode结构d_inode;(2)if(d_inode->i_ino==PROC_ROOT_INO.&&!MAJO(d_inode->i_dev)&;MINOR(d_inode->i_dev)==1){该文件属于proc文件系统}。 3.2捕获加密会话数据 为了观察入侵者使用加密的会话,就必须找到破解加密会话的方法,不过许多组织已经证明这是非常困难的。强攻不行就只能智取,加密的信息如果要使用就肯定会在某些地方不是被加密的,绕过加密进程就可以捕获未加密的数据。这是解密工作的基本机制,然后获得访问未保护的数据。使用二进制木马程序是对付加密的一种办法。当入侵者攻破蜜罐,他可能会使用如SSH的加密工具来登陆被攻陷的主机,登陆的时候肯定要输入命令,这时木马shell程序会记录他们的动作。不过二进制木马程序隐蔽性不高,而且入侵者可能会安装他们自己的二进制程序。 从操作系统内核访问数据将是一个很好的捕获方法。不管入侵者使用什么二进制程序,都可以从内核捕获数据并且可以记录它们的行为。而且,由于用户空间和内核空间是分开的,所以在技术上还可以实现对所有包括root在内的用户隐藏自己的动作。图中左边的数据捕获机制说明了其工作的原理。 数据捕获是由内核模块来完成的,所以要使用这个模块获得蜜罐机操作系统内核空间的访问,从而捕获所有read()和write()的数据。捕获模块通过替换系统调用表的read()和write()函数来实现这个功能,这个替换的新函数只是简单的调用老read()和write()函数,并且把内容拷贝到一个数据包缓存。 3.3数据传输隐蔽通道的建立 当蜜罐捕获到数据后,那么它需要在入侵者没有察觉的情况下把数据发送到蜜网网关服务端。蜜罐通常都是布置在局域网内,如果捕获模块只是简单使用UDP流来给服务端发送数据,入侵者只需监听网络上的数据传输就可以判断是否有蜜罐系统的存在了。不过捕获模块还是可以使用UDP来给服务端发送数据,只不过它需要修改内核使用户无法看到这些数据包,包括其它主机发送的该类型使用相同配置的数据包。当捕获模块把这些数据发送到网络的时候,操作系统也无法阻止这些数据包的传输。  如果一个局域网上每个蜜罐安装了按照以上方法改进后的数据捕获模块,入侵者将不能发现任何捕获模块的数据,然而服务端能够完全访问这些由蜜罐客户端捕获的数据。每个read()或write()调用请求都会产生一个或多个日志数据包,每个数据包都包含了一点关于这个调用内容的信息和这个调用访问的数据。每个包还包含了一个记录,这个记录包含一些产生调用的进程描述、调用产生的时间和记录数据的大小。这些包完全由捕获模块产生,而不是使用TCP/IP协议栈来产生或发送数据包,所以系统无法看到或阻断这些数据包。当数据包创建好的时候就直接发送给驱动设备,这就绕过了原始套接字代码和包过滤代码。由于嗅探器通常都是基于libpcap的,而libpcap使用原始套接字接口来收集数据包,所以嗅探器不能看到运行在蜜罐主机上由捕获模块产生的数据包。 同时还有一个要解决的问题,就是要阻止蜜罐A检测到蜜罐B的捕获到的数据包。使用以太交换不能解决这个问题,因为数据包不是通过ARP获取目标IP地址对应的目标MAC地址,所以它对ARP欺骗有自然免疫能力。但是在有些情况下,A可以看到B的数据包,这样入侵者就可以在蜜罐A运行嗅探器来看到局域网上来自蜜罐B的捕获到的数据包。为了解决这个问题,捕获模块的包产生机制应该实现自己独特的原始套接字实现,从而实现安静地忽略来自局域网中的其他蜜罐发送出数据包。在发送的数据包头定义了预先设定的目标UDP端口和固有的特定数字,如果这两个值都匹配了,那么这个数据包就会被忽略。这样蜜罐A在收到蜜罐B的数据包时就会丢弃它们并且移到队列里的下一个数据包,这使得入侵者用嗅探器也无法捕获数据包。 4结论 针对传统的蜜罐的局限性和缺点,出现了蜜网技术,蜜网是由许多用来与攻击者进行交互的蜜罐组成的网络。本文针对蜜网中蜜罐所面临的问题:隐藏自身、加密会话数据捕获以及和蜜网网关建立隐蔽数据传输通道,给出了详细的解决方案。但同时也存在着一些不足,比如本文中所提到的隐藏蜜罐数据捕获模块和进程的方法,虽然达到了保护自身的目的,但也带来了一些负面问题:捕获模块被加载就再也无法卸载,root用户再也无法找到它,一旦捕获模块中出现bug,由于无法管理,可能会引起内核的不稳定甚至系统崩溃等,这将会影响到蜜罐的正常工作,从而影响整个蜜网的性能。这些问题都有待进一步的 参考文献: [1]L.Spitzner,Honeypots:Proceedingsofthe19thAnnualComputerSecurityApplicationsConference,LasVegas,Nevada,USA,December0812,2003 [2][美]JonathanCorbet,AlessandroRubini,GregKroah-Hartman.LinuxDeviceDrivers,3rdEdition.O`REILLY,2006.01 [3][美]KurtWall等著、张辉译GNU/Linux编程指南(第二版)清华大学出版社,2005.08 [4]毛德操、胡希明著Linux内核源代码情景分析浙江大学出版社,2002.04