攻击者失手,自己杀死了僵尸网络 KmsdBot

admin 2022年12月17日00:19:39评论11 views字数 1009阅读3分21秒阅读模式

此前,Akamai 的安全研究员披露了 KmsdBot 僵尸网络,该僵尸网络主要通过 SSH 爆破与弱口令进行传播。在对该僵尸网络的持续跟踪中,研究人员发现了一些有趣的事情。


 C&C 控制 


对恶意活动来说,最致命的就是夺取对 C&C 服务器的控制。研究人员修改了 KmsdBot 的样本文件,使其能够在受控环境下进行通信。


研究人员向恶意软件发送自己的命令来测试 KmsdBot 僵尸网络的功能与攻击特征。有一天,在攻击者发送一个格式不正确的命令后,恶意软件就彻底崩溃。这种自杀式的行为在网络安全界可不多见,研究人员进行了一番调查。


 按图索骥 


研究人员通过检查 sys.main.connect() 函数并输出反汇编代码,来确定存储 C&C 服务器的 IP 地址与端口的代码。


攻击者失手,自己杀死了僵尸网络 KmsdBot

sys.main.connect() 函数的反汇编)


C&C 服务器的字符串存储在内存地址 0x00632f19,将其修改为受控环境的 IP 地址。就能够像 C&C 服务器一样发送攻击指令。


攻击者失手,自己杀死了僵尸网络 KmsdBot

(改写 C&C 服务器地址)


改写后的 C&C 服务器是开放端口 57388 的 192.168.0.31。在这台主机上使用 Netcat 来模拟 C&C 服务器。


期间,发现僵尸网络在收到攻击者下发的格式错误的指令后就停止运行了。命令为:


!bigdata www.bitcoin.com443 / 30 3 3 100


可以看到域名与端口之间直接连接,且恶意软件的代码中也没有内置校验命令格式是否正确的功能。


格式错误的命令将会导致 Go 语言开发的二进制文件直接由于“索引越界”而崩溃,错误的格式产生参数数量的错误。使用受控环境也能够复现这一问题:


攻击者失手,自己杀死了僵尸网络 KmsdBot

(复现重新发送格式错误的指令)


攻击者失手,自己杀死了僵尸网络 KmsdBot

(恶意软件崩溃)


格式错误的命令会导致与 C&C 服务器通信的所有恶意软件都崩溃,导致整个僵尸网络终止运行。由于该僵尸网络并没有任何持久化功能,唯一的方法就是重新构建,无法直接恢复。


结论


在网络安全领域很少听到此类情况,在这个被 0day 漏洞和各种告警折磨的精疲力竭的世界,如果由于攻击者的失误就能清除威胁也不失为一件好事。KmsdBot 僵尸网络一直在攻击大型的奢侈品公司与游戏公司,攻击者以后可能会更加小心和注意。


参考来源:

https://www.akamai.com/blog/security-research/kmsdbot-part-two-crashing-a-botnet



精彩推荐








攻击者失手,自己杀死了僵尸网络 KmsdBot
攻击者失手,自己杀死了僵尸网络 KmsdBot
攻击者失手,自己杀死了僵尸网络 KmsdBot
攻击者失手,自己杀死了僵尸网络 KmsdBot

原文始发于微信公众号(FreeBuf):攻击者失手,自己杀死了僵尸网络 KmsdBot

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年12月17日00:19:39
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   攻击者失手,自己杀死了僵尸网络 KmsdBothttp://cn-sec.com/archives/1469633.html

发表评论

匿名网友 填写信息