n8n 供应链攻击利用社区节点窃取 OAuth 令牌

威胁行为者在npm注册表上传8个恶意包,伪装成n8n工作流自动化平台的集成组件来窃取开发者OAuth凭据。其中一个名为"n8n-nodes-hfgjf-irtuinvcm-lasdqewriit"的包模仿Google Ads集成,诱导用户在看似合法的表单中关联广告账户,然后将凭据传输到攻击者控制的服务器。这种攻击利用了工作流自动化平台作为集中凭据库的特点,能够获取多个服务的OAuth令牌和API密钥。

威胁行为者通过在 npm 注册表上传八个恶意软件包,伪装成针对 n8n 工作流自动化平台的集成插件,窃取开发者的 OAuth 凭据。

其中一个名为"n8n-nodes-hfgjf-irtuinvcm-lasdqewriit"的软件包模仿 Google Ads 集成,诱导用户在看似合法的表单中链接其广告账户,然后将凭据发送到攻击者控制的服务器。

"这次攻击代表了供应链威胁的新升级,"Endor Labs 在上周发布的报告中表示。"与通常针对开发者凭据的传统 npm 恶意软件不同,这次攻击利用了作为集中凭据库的工作流自动化平台——在单一位置存储数十个集成服务(如 Google Ads、Stripe 和 Salesforce)的 OAuth 令牌、API 密钥和敏感凭据。"

已识别的恶意软件包清单

目前已移除的恶意软件包完整列表如下:

n8n-nodes-hfgjf-irtuinvcm-lasdqewriit(4,241 次下载,作者:kakashi-hatake)

n8n-nodes-ggdv-hdfvcnnje-uyrokvbkl(1,657 次下载,作者:kakashi-hatake)

n8n-nodes-vbmkajdsa-uehfitvv-ueqjhhhksdlkkmz(1,493 次下载,作者:kakashi-hatake)

n8n-nodes-performance-metrics(752 次下载,作者:hezi109)

n8n-nodes-gasdhgfuy-rejerw-ytjsadx(8,385 次下载,作者:zabuza-momochi)

n8n-nodes-danev(5,525 次下载,作者:dan_even_segler)

n8n-nodes-rooyai-model(1,731 次下载,作者:haggags)

n8n-nodes-zalo-vietts(4,241 次下载,作者:vietts_code 和 diendh)

其他可疑软件包

用户"zabuza-momochi"、"dan_even_segler"和"diendh"还与其他仍可下载的库有关联:

n8n-nodes-gg-udhasudsh-hgjkhg-official(2,863 次下载)

n8n-nodes-danev-test-project(1,259 次下载)

@diendh/n8n-nodes-tiktok-v2(218 次下载)

n8n-nodes-zl-vietts(6,357 次下载)

目前尚不清楚这些软件包是否包含类似的恶意功能。但是,ReversingLabs Spectra Assure 对前三个软件包的评估未发现安全问题。对于"n8n-nodes-zl-vietts",分析标记该库包含具有恶意软件历史的组件。

值得注意的是,软件包"n8n-nodes-gg-udhasudsh-hgjkhg-official"的更新版本在三小时前刚刚发布到 npm,表明这次攻击活动可能仍在进行中。

攻击机制分析

恶意软件包一旦作为社区节点安装,就会像其他 n8n 集成一样运行,显示配置界面并将 Google Ads 账户 OAuth 令牌以加密格式保存到 n8n 凭据存储中。当工作流执行时,它会运行代码使用 n8n 的主密钥解密存储的令牌,并将其泄露到远程服务器。

这一发展标志着供应链威胁首次明确针对 n8n 生态系统,恶意行为者利用了对社区集成的信任来实现其目标。

安全建议和防护措施

研究结果凸显了集成不受信任工作流所带来的安全问题,这可能扩大攻击面。建议开发者在安装软件包前进行审计,仔细检查软件包元数据是否有异常,并使用官方 n8n 集成。

n8n 也已警告使用来自 npm 的社区节点存在安全风险,称这些节点可能在运行服务的机器上执行恶意操作。对于自托管的 n8n 实例,建议通过将 N8N_COMMUNITY_PACKAGES_ENABLED 设置为 false 来禁用社区节点。

"社区节点以与 n8n 本身相同的访问级别运行。它们可以读取环境变量、访问文件系统、发出出站网络请求,最关键的是,在工作流执行期间接收解密的 API 密钥和 OAuth 令牌,"研究人员 Kiran Raj 和 Henrik Plate 表示。"节点代码和 n8n 运行时之间没有沙盒或隔离。"

"因此,单个恶意 npm 软件包就足以深入了解工作流、窃取凭据并在不引起立即怀疑的情况下对外通信。对于攻击者而言,npm 供应链为进入 n8n 环境提供了一个安静且高效的入口点。"

Q&A

Q1:什么是 n8n 供应链攻击?它是如何进行的?

A:n8n 供应链攻击是威胁行为者通过上传伪装成 n8n 工作流平台集成插件的恶意软件包来窃取开发者 OAuth 凭据的攻击方式。攻击者在 npm 注册表上传恶意软件包,模仿合法的服务集成(如 Google Ads),诱导用户输入账户信息后将凭据发送到攻击者服务器。

Q2:这次攻击影响了多少用户?有哪些软件包受影响?

A:目前已确认八个恶意软件包,总下载量超过 28,000 次。主要包括模仿 Google Ads 集成的"n8n-nodes-hfgjf-irtuinvcm-lasdqewriit"等软件包。这些恶意软件包已被移除,但仍有其他可疑软件包在流通,且攻击活动可能仍在进行中。

Q3:如何防护 n8n 平台免受此类供应链攻击?

A:建议开发者在安装软件包前进行审计,检查软件包元数据异常,优先使用官方 n8n 集成。对于自托管实例,应通过设置 N8N_COMMUNITY_PACKAGES_ENABLED 为 false 来禁用社区节点。由于社区节点与 n8n 运行时没有隔离,需要格外谨慎。

来源:The Hacker News

0赞

好文章,需要你的鼓励

2026

01/13

08:49

分享

点赞

邮件订阅