该僵尸程序从原始Mirai僵尸网络中借用了大部分代码,但与其他IoT恶意软件家族不同,它实现了一种内置功能来暴力破解凭据并获得对SSH服务器(而非在Mirai中实现的Telnet)的访问权限。
专家们还注意到,最新的样本包括保持持久性的代码,这在其他Mirai变体中很少实现。
RapperBot具有有限的DDoS功能,它旨在针对ARM、MIPS、SPARC和x86架构。
根据FortiGuard实验室发布的分析结果指出,
“与大多数Mirai变体(使用默认或弱密码暴力破解Telnet服务器)不同,RapperBot专门扫描并尝试暴力破解配置为‘接受密码身份验证’的SSH服务器。其大部分恶意软件代码包含一个SSH 2.0客户端的实现,可以连接和暴力破解任何支持Diffie-Hellmann密钥交换的768位或2048位密钥以及使用AES128-CTR数据加密的SSH服务器。RapperBot暴力破解实现的一个显著特征是在SSH协议交换阶段使用‘SSH-2.0-HELLOWORLD’向目标SSH服务器标识自己。”
该恶意软件的早期样本将暴力破解凭据列表硬编码到二进制文件中,但从7月开始,新的样本开始从C2服务器检索该列表。
自7月中旬以来,RapperBot开始使用自我传播方式来维持对暴力破解SSH服务器的远程访问。该僵尸网络运行一个shell命令,将远程受害者的“ ~/.ssh/authorized_keys”替换为包含威胁参与者SSH公钥的命令。
一旦将公钥存储在 ~/.ssh/authorized_keys中,任何拥有相应私钥的人都可以在不提供密码的情况下验证SSH服务器。
RapperBot还能通过在执行时将上述相同的SSH密钥附加到受感染设备的本地“~/.ssh/authorized_keys”上,来保持其在任何设备上的立足点。这允许该恶意软件通过SSH保持对这些受感染设备的访问权限,即便是设备重启或从设备中删除RapperBot也无济于事。
该报告补充道,
“在最新的RapperBot样本中,该恶意软件还开始通过直接写入‘/etc/passwd’和‘/etc/shadow/’将root用户‘suhelper’添加到受感染的设备,进一步允许攻击者完全控制设备。同时,它还通过写入脚本‘/etc/cron.hourly/0’每小时添加一次root用户帐户,以防其他用户(或僵尸网络)试图从受害者系统中删除他们的帐户。”
该僵尸网络的早期版本具有纯文本字符串,但随后的版本通过将字符串构建在堆栈上,为字符串添加了额外的混淆,以逃避检测。
数据显示,自6月中旬以来,该僵尸网络使用全球3,500多个唯一IP扫描并尝试使用SSH-2.0-HELLOWORLD客户端标识字符串暴力破解Linux SSH服务器。其中,大多数IP来自美国、台湾和韩国。
最后,研究人员称,RapperBot的目标仍不明朗。