击败蜜罐基于OSI模型 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【www.unjs.com - 电脑资料】

    0. 摘要

    安全研究人员和工程师部署蜜罐,来欺骗攻击者和改善大型计算机的网络安全,

击败蜜罐基于OSI模型

。由于这一活动在白帽社会已成为越来越多的新趋势,黑帽研究如何击败这些相同的安全工具。虽然不是每个人对蜜罐有同样的看法,它们是有效的,并正在部署工具-黑帽已经在努力设法利用,避免它们。网络战斗仍在继续!

    1. 理论

    本文讨论的攻击行动是远程攻击,来自遥远的一个蜜罐,以及本地采取的行动损害了蜜罐上使用的网络层。超出本文的范围,如果你感兴趣学习更多的技术问题,从地下就能获取信息。

    1.1 远程行动

    遭入侵之前,获得一个蜜罐,他们有时会尝试检测是否有可疑的东西等着他们。他们可能不想要攻击的电脑被用来捕获他们,他们可能不希望进行监测,因为这可能会暴露自己的身份,他们的方法和他们的工具。例如,通过使用一个0day漏洞对付蜜罐,记录一切(捕捉网络流量,底层次的系统活动,以及更多),攻击者可能会失去她的技巧保密技术。

    大多数情况下,远程攻击者使用的行动是非常容易理解的。他们只是尝试互动与蜜罐和期待的结果。,根据该蜜罐的针对性,此游戏的刺激性将存在许多层的OSI模型。通常,一个基于TCP/IP的蜜罐,侵略者将启动一个网络对话,并期待第3层和第4层的结果,甚至在第2层附近。有时,第7层(应用层)也可以使用远程入侵。

    1.2 本地行动

    之后,他们获得了蜜罐,例如通过一个shell或通过一些定制的shellcode,攻击者仍然可以使用网络层,以确定他们是否有蜜罐,而不是真正的机器。通过这样操作,他们可能会暴露自己用于蜜罐通过网络层的技术。到那时,捍卫网络的蜜罐将已经记录 的恶意活动并作为一种防盗报警器。

    1.3 隐形问题

    举例来说,如果一个潜在的入侵者能够确定一台计算机是一个蜜罐而没有被发现,人们可能认为这是一个疑难问题。但是大部分的时间,几乎所有的蜜罐记录,很难完成隐身攻击。我们将主要集中在攻击,用来检测蜜罐/或停用部分(如禁用它能够记录所有活动)。请注意,有些白帽使用蜜罐的防盗系统,所以这些蜜罐得指纹系统不是固有的问题。

    1.4 打破矩阵

    即使一个蜜罐是否真实的计算机资源在网络产生,它只是坐在那儿等待着被攻击,有办法确定它。这种活动被称为指纹。如果你想了解如何成功的对蜜罐指纹攻击,只需问自己:蜜罐架构和一个真正的架构有什么区别?

    虽然在简单的表面上看起来很容易,但是关键的问题是需要考虑伪装蜜罐。攻击者将试图评估这个小世界,如果他们所达到的是一个真实的或虚假的。记得《 帝国》(或者动画版)电影吗?这是同样的问题,确认现实。根据蜜罐类型和互动的程度,在指纹识别方法有所不同。

    如果经营者蜜罐正试图模拟或在模拟的环境中,攻击者可能会试图找到一个真正的与它相比。想像一下,例如,你部署一个虚拟的代理服务,以接收垃圾邮件。考虑这些问题:

    ·你相信,你将应付任何可能的放弃请求一个真正的代理服务该怎么办呢?

    ·如果发送者的垃圾邮件含有不寻常或异常的请求怎么办?

    ·如果该垃圾邮件发送者试图使用未得到执行或复杂的功能,将会找到您的服务,该怎么办?

    ·如果该垃圾邮件发送者尝试使用代理进行测试,如果这是重负载的功能,并且花费很长时间,该怎么办?

    正如你所看到的,模拟现实不是那么容易。在上面的例子中关于垃圾邮件发送者,入侵者可能会在第7层的基础上使用远程攻击,如发生虚假请求。入侵者会找到另一种方法,指纹模拟着我们的虚拟世界。

    一个解决办法是使用一个基于真正系统的高互动蜜罐。从伪装的角度看,一个真正的系统上安装了一个完美的蜜罐可能是一个“牺牲品”一说。但是当你安装这样的一个安全的资源,你要录制许多安全事件响应。网络捕获蜜罐的数据流量还不够。想一想攻击者使用了加密通道,你该怎么办?众所周知,一些黑帽享受SSH会话的失密电脑。由于这一原因,人们开始操纵内核的操作系统在他们需要记录低层次系统事件。

    高互动蜜罐的活动:由于这不是一个真正的电脑,从网络流量能看出攻击者的网络活动吗?不能,如果攻击者试图从你的蜜罐反弹攻击进另一系统,并且你让她跳跃了,她将能够使用你的IP地址作为源从而攻击其他的系统,从法律的角度来看,这是一个非常大的问题。因此,通常情况下,这种反弹可以使禁止或控制的。如果它被禁止,这看起来攻击很奇怪,就像一种黑洞。如果它被控制,将会发现入侵者请求禁止或限制,她那时可能还得出这样的结论:这是一个蜜罐。

    伪装蜜罐理论概括如下:越密切越真实的系统,就越难以将承担数据采集和对数据的控制,并且你还要悄悄的进行。如果你正在等待脚本小子或简单的攻击,他们很可能会视而不见,甚至不知道蜜罐。但是,如果你正在等待熟练的攻击者,你应该知道相应的方法和工具,以确定他们使用蜜罐。

    现在让我们开始实际的例子。

    2. 实际例子

    2.1 TarPit

    Tarpit是计算机实体,将故意对进来的请求反应缓慢。其目的是欺骗客户,使未经授权或非法使用伪造的服务将会记录并变得迟钝。请注意,有些纯粹不考虑Tarpit是一个蜜罐。但肯定是一个虚假的信息系统资源,可以推迟任何正来临的入侵者。例如,为了对抗垃圾邮件,有些人运行Tarpit,这看起来像开放邮件中继,以SMTP命令回应得非常缓慢。这是第7层Tarpit。其他已知Tarpit是那些TCP/IP堆栈,以便传入客户端的网络接口开放,同时禁止任何流量(第4层)。

    该Labrea Tarpit是一个很好的例子,发挥着TCP/IP协议栈,并已用于减缓传播在互联网上的蠕虫,但也有其他的如Honeyd何一些Linux操作系统本地工具。例如,Netfilter/iptables支持TARPIT目标。为了实现这一tarpit状态,使用iptables接受传入的TCP/IP连接,然后立即切换到一个大小为零的窗口。这禁止攻击者发生任何过多的数据。任何企图将关闭连接会被忽略,因为没有数据可以发送到攻击目标。因此,连接仍然有效。这将消耗攻击者的系统资源,但是不能在Linux服务器或防火墙运行tarpit。下面是使用TARPIT模式iptables规则的例子:

    iptables -A INPUT -p tcp -m tcp -dport 80 -j TARPIT

    对于第7层tarpit,攻击者会猜测潜伏的服务,并多次尝试。

    对于第4层tarpit一样的Labrea中,TCP窗口大小减少到零,并tarpit继续接收数据包,

电脑资料

击败蜜罐基于OSI模型》(https://www.unjs.com)。

    你可以看到攻击者(10.0.0.2)试图到达虚拟的Web服务器,模拟了Labrea持续模式(10.0.0.1),记录和tcpdump如下所示:

    03:26:01.435072 10.0.0.2.1330 > 10.0.0.1.80: S [tcp sum ok]

    911245487:911245487(0) win 64240 (DF) (ttl 64, id 6969, len 48)

    03:26:01.435635 10.0.0.1.80 > 10.0.0.2.1330: S [tcp sum ok]

    3255338435:3255338435(0) ack 911245488 win 3 (ttl 255, id 48138, len 40)

    03:26:01.435719 10.0.0.2.1330 > 10.0.0.1.80: . [tcp sum ok]

    1:1(0) ack 1 win 64320 (DF) (ttl 128, id 4970, len 40)

    03:26:01.435887 10.0.0.2.1330 > 10.0.0.1.80: . [tcp sum ok]

    1:4(3) ack 1 win 64320 (DF) (ttl 128, id 4971, len 43)

    03:26:01.436224 10.0.0.1.80 > 10.0.0.2.1330: . [tcp sum ok]

    1:1(0) ack 4 win 0 (ttl 255, id 44321, len 40)

    03:26:03.731433 10.0.0.2.1330 > 10.0.0.1.80: . [tcp sum ok]

    4:5(1) ack 1 win 64320 (DF) (ttl 128, id 4973, len 41)

    03:26:03.731673 10.0.0.1.80 > 10.0.0.2.1330: . [tcp sum ok]

    1:1(0) ack 4 win 0 (ttl 255, id 35598, len 40)

    通过从10.0.0.1查看响应,你将首先主意窗口大小3,然后下个连接是0。最后,你会发现攻击者对指纹的这种行动非常容易。

    2.2 OSI模型的第2层

    如果对同一局域网的一部分作为一个蜜罐发起攻击,将有问题出现在第2层。这是重要的,如果你想处理固有风险与入侵者能否成功获得并更深入的进入网络基础设施。用来捕获恶意内部用户,蜜罐是重要的。

    Labrea也有能力请求发送到电脑上不存在相应。看ARP协议的请求相应,Labrea可能被配置为模拟未使用的IP地址,这是非常有趣的方式,打击大型网络蠕虫和成千上万的IP地址等。如果攻击者在同一个网络上部分为Labrea,有一种方法可以做指纹在第2层:这个守护进程总是回应相同的MAC地址0:0:f:ff:ff:ff,它作为一种黑洞行动,从而有明显的方式来检测它。看这样的ARP协议响应,攻击者会对这些感兴趣:

    04:59:00.889458 arp reply 10.0.0.1 (0:0:f:ff:ff:ff) is-at 0:0:f:ff:ff:ff

    如果你想探索,这是一个锻炼,你可以找到并改变这种来源Labrea(PacketHandler.c )的硬编码值:

    u_char bogusMAC[6] = {0,0,15,255,255,255};

    VMWare是一个众所周知的虚拟机商业软件,可让你在单一硬件上安装多个不同的作业系统。目前人们普遍使用它来部署蜜罐,除其他人外。有时候,系统在运行的VMWare通过查看MAC地址,这并不意味着这是一个陷阱,但是有些怀疑的入侵者可能会停下来。如果你看一下IEEE标准,你会发现这个VMWare公司分配的MAC地址范围:

    00-05-69-xx-xx-xx

    00-0C-29-xx-xx-xx

    00-50-56-xx-xx-xx

    所以,如果你看到这样的MAC地址或者通过查看缓存MAC地址(通过arp -a),或通过查看有关的数据接口(Unix: ifconfig 或 Windows: ipconfig /all)。攻击者会找到有趣的信息。

    有些攻击者尝试远程启动Windows特定的NetBIOS服务。蜜罐建立者梦想对系统进行0day攻击,但使用的是Windows集成的防火墙可能会阻止大多数攻击。这就是为什么他们经常打开相关的Windows端口(NetBIOS的端口,包括135、137-139和445 TCP/UDP)等待入侵者。但是,如果攻击者与NetBIOS服务进行交互,她将能获得MAC地址,系统实际上是一个VMWare客户(Unix: nmblookup 或 Windows: nbtstat -A @IP)。有些可以说VMWare配置变化的MAC地址,但仍然只有部分地址会被接受:VMware的MAC地址是从00:50:56(如 ethernet0.address = 00:50:56:XX:YY:ZZ)开始。

    Honeyd是由Niels Provos开发的。在过去,大多数人都是有Honeyd与另一个工具arpd。响应arp的请求,以便重定向流量Honeyd。有些人认为这可能产生隐形的问题,因为将有多个IP相同的MAC地址(但也有可能发生在第2层)。如果你使用的是新版本,Honeyd现在让你为每个虚拟计算机指定的MAC地址,而不是限于只有一个。只需添加这条命令行,为你的虚拟系统选择MAC地址:

    set template ethernet ""

    用户模式Linux(UML),在GPL许可下的一个免费软件,是另一种工具来创建虚拟机。从第2层的观点来看,一个功能强大的选项来修复MAC地址的UML客户附加的一些参数,同时启动它:

    eth0=tuntap,,xx:xx:xx:xx:xx:xx,@IP (xx:xx:xx:xx:xx:xx 是MAC地址,@IP 是IP地址)

    3. 结束的尾声

    我们必须记住,如果攻击者不知道她攻击的是“陷阱”,而不是一个真正的系统,蜜罐技术是唯一有效的。因此,能否成功引诱和转换蜜罐而不被发现,安全专业人士部署蜜罐前必须了解黑帽利用的一些手段。Ok! 如有疑问、错误等请写信息发送至我(Czy)的Email --> Hack01[at]Live.cn

最新文章