
Netskope 的网络安全研究人员发现了一种新型的、具备一定功能但可能仍处于开发阶段的基于 Golang 语言编写的后门程序,该程序利用 Telegram 进行指令与控制(C2)活动。这种恶意软件(Trojan.Generic.37477095)疑似源自俄罗斯,它借助 Telegram 这类云服务达成恶意目的。对攻击者而言,这些云服务使用便捷,而研究人员却难以对其进行有效监控。利用这种方式进行 C2 通信,攻击者无需搭建专门的基础设施,OneDrive、GitHub 和 Dropbox 等其他云平台同样存在被此类恶意利用的风险。
该恶意软件由 Go 语言编译,在执行时会启动 "installSelf" 函数。这个函数会检查自身是否在指定位置 "C:\Windows\Temp\svchost.exe" 运行。若不在,恶意软件会将自身复制到该位置,创建新进程来启动副本,随后终止原始进程。通过在初始化函数中执行这一过程,确保恶意软件从预设位置运行。研究人员使用 Detect It Easy 工具检测发现,该恶意软件在执行过程中呈现出典型的后门特征。

在 C2 通信方面,该后门程序借助一个开源的 Go 语言包与 Telegram 进行交互。它利用 Telegram BotFather 功能和特定令牌(在本次分析样本中为 8069094157:AAEyzkW_3R3C-tshfLwgdTYHEluwBxQnBuk )创建机器人实例,进而监控特定的 Telegram 聊天窗口以获取新指令。该恶意软件支持四个指令,但目前仅有三个指令可正常使用。在执行指令前,它会先验证接收消息的长度和内容。其中,"/cmd" 指令需要两条消息,一条是指令本身,另一条是待执行的 PowerShell 命令。当收到初始指令后,恶意软件会在聊天窗口发送一条俄文提示("输入命令:"),然后等待后续的 PowerShell 命令,并在隐藏的 PowerShell 窗口中执行。
"/persist" 指令用于重复初始安装时的检查和运行过程,重新启动恶意软件后退出。"/screenshot" 指令虽未完全开发完成,但仍会向 Telegram 频道发送 "Screenshot captured" 的消息。"/selfdestruct" 指令则用于删除恶意软件文件(C:\Windows\Temp\svchost.exe)并终止进程,同时向 Telegram 频道发送 "Self - destruct initiated" 消息通知操作已执行。所有指令的执行结果都会通过 "sendEncrypted" 函数回传至 Telegram 频道。
这种恶意利用云应用程序的行为给网络安全防御工作带来了巨大挑战。研究人员在技术博客中指出:"虽然将云应用作为 C2 通道并非常见现象,但这确实是攻击者常用的有效手段。一方面,攻击者无需搭建复杂的基础设施,降低了攻击成本;另一方面,从防御者角度出发,很难区分正常的 API 用户请求和恶意的 C2 通信。"
为保障设备安全,建议在所有设备上安装最新且口碑良好的防病毒和反恶意软件。这类安全软件应具备检测和拦截恶意文件的能力,包括基于 Go 语言编写的可执行文件,以此来降低遭受此类恶意攻击的风险。