当黑客将受感染的计算机围成一个僵尸网络时,他们会特别注意确保自己不会失去对向受感染设备发送命令和更新的服务器的控制。这些预防措施的目的是阻止安全防御者,后者通过以称为“沉坑”的过程接管管理僵尸网络的命令和控制服务器,来定期拆除僵尸网络。
最近,一个已经被研究人员追踪了大约两年的僵尸网络开始使用一种新的方式来防止命令和控制服务器被盗:通过在比特币区块链中伪装其IP地址之一。
当一切运行正常时,受感染的计算机将向有线控制服务器报告以接收指令和恶意软件更新。但是,如果服务器陷入困境,僵尸网络将找到在比特币区块链中编码的备用服务器的IP地址,这是一种分散式分类帐,可跟踪使用数字货币进行的所有交易。
通过使用服务器,僵尸网络可以重新启动,操作员可以防止被感染的系统被孤立。将地址存储在区块链中可确保它永远不会被更改,删除或阻止,就像黑客使用更传统的备份方法时一样。
内容发现网络Akamai的研究人员Chad Seaman说:“这里的不同之处在于,通常在这些情况下,位于顶部的是一些中央管理机构。” “在这种情况下,他们使用的是分散式系统。你不能把它取下来。您无法对其进行审查。在那。”
Internet协议地址是一个数字标签,用于映射连接到Internet的设备的网络位置。 IP版本4地址是一个32位数字,存储在四个八位字节中。例如,arstechnica.com的当前IP地址是18.190.81.75,每个八位字节之间用点分隔。 (IPv6地址超出了本文的范围。)
Akamai观察到的僵尸网络将备份服务器IP地址存储在发布到1Hf2CKoVDyPj7dNn3vgTeFMgDqVvbVNZQq的两个最新交易中,这是运营商选择的比特币钱包地址。最近的事务提供了第三和第四八位位组,而第二最新的事务提供了第一和第二八位位组。
八位字节在交易中被编码为“ Satoshi值”,这是比特币的百分之一(0.00000001 BTC),是目前可以在区块链上记录的最小比特币货币单位。为了解码IP地址,僵尸网络恶意软件将每个Satoshi值转换为十六进制表示形式。然后将该表示分为两个字节,每个字节都转换为相应的整数。
下图描绘了恶意软件在转换过程中使用的bash脚本的一部分。 aa显示了运营商选择的比特币钱包地址,bb包含了查找两个最近交易的端点,而cc显示了将Satoshi值转换为备用服务器IP地址的命令。
最近两次钱包交易中的Satoshi值是6957和36305。转换后,IP地址是:209.141.45.27
知道了这一点,让我们看一下这些交易的价值并将它们转换为IP地址八位位组。最近的事务的值为6957 Satoshis,将该整数值转换为其十六进制表示形式将得到值0x1b2d。取第一个字节(0x1b)并将其转换为整数将得出数字45,这将是我们最终IP地址的第三个八位字节。取第二个字节(0x2d)并将其转换为整数将得出数字27,该数字将成为我们最终IP地址中的第四个八位字节。
第二事务完成相同的过程,以获得C2 IP地址的第一和第二个八位位组。在这种情况下,第二笔交易的价值为36,305 Satoshis。转换为十六进制表示形式的该值将导致十六进制值为0x8dd1。然后将第一个字节(0x8d)和第二个字节(0xd1)转换为整数。这将导致十进制数141和209,它们分别是C2 IP地址的第二个和第一个八位字节。将四个生成的八位位组按其各自的顺序放置在一起,将得到最终的C2 IP地址209.141.45.27。
虽然Akamai的研究人员表示,他们从未见过使用分散式区块链存储服务器地址的僵尸网络,但他们能够找到这项研究,该研究证明了在以太坊加密货币的区块链之上构建的功能齐全的命令服务器。
“通过利用区块链作为中介,基础架构实际上是不可阻挡的,可以解决常规恶意基础架构的大多数缺点,”设计了概念验证控制服务器查询的研究员Omer Zoha写道。
犯罪分子已经有其他隐秘意味着受感染的机器人找到命令服务器。例如,俄罗斯政府支持的黑客在2018年使用俄罗斯政府支持的黑客的恶意软件,依赖于存储在Photobucket.com上的图像中存储的GPS值,以找到可用的稍后阶段有效载荷的服务器。如果删除图像,则VPNFilter使用嵌入在ToknowAll.com的服务器中的备份方法。来自Turla的恶意软件,由俄罗斯政府支持的另一个黑客集团,在布兰妮斯皮尔斯官方Instagram账户中发布的评论,位于控制服务器。
Botnet Akamai分析使用了Comected Machines的计算资源和电力供应来挖掘Monero Cryptocurrency。 2019年,趋势科技的研究人员在其功能上发布了此详细撰写。 Akamai估计,在目前的蒙罗士价格上,僵尸网络占据了价值约43,000美元的数字硬币。
理论上,基于区块链的控制服务器地址的混淆可以使抛售更加困难。在这里,中断很简单,因为向攻击者的钱包发送单个Satoshi,就会改变僵尸网络恶意软件计算的IP地址。
随着70004分(在研究时,无论如何),1美元将允许在钱包中放置2,500个中断交易。与此同时,攻击者将不得不存入43,262张Satoshis,或约16.50美元,以恢复对僵尸网络的控制。
还有另一种方法可以击败基于区块链的弹性措施。仅当主控制服务器无法建立连接或返回200或405以外的HTTP状态代码时,才会激活返回测量。
“如果污水孔运营商成功陷入了这些感染的主要基础架构,他们只需要用200个状态代码回复所有来回的请求,以防止现有的感染失败使用BTC备份IP地址,”Akamai研究员Evyatar Saias解释说星期二的帖子。
“可以进行改进,我们已经排除在此写入之外,以避免向僵尸网络开发人员提供指针和反馈,”Saias添加。 “采用这种技术可能是非常有问题的,并且可能在不久的将来会受欢迎。”