10个恶意 npm 包专门窃取 Windows、macOS 和 Linux 开发者凭证
- 浏览次数 692
- 喜欢 0
HackerNews 编译,转载请注明出处:
网络安全研究人员近日发现10个恶意npm软件包,这些包被设计用于在Windows、Linux和macOS系统上投放信息窃取程序。
Socket安全研究员Kush Pandya表示:“该恶意软件采用四层混淆技术隐藏有效负载,显示虚假验证码以伪装成合法程序,通过IP地址对受害者进行指纹识别,并下载一个24MB的PyInstaller打包信息窃取程序,能够从Windows、Linux和macOS系统的密钥环、浏览器和认证服务中窃取凭证。”
这些npm包于2025年7月4日上传至注册表,累计下载量超过9,900次,具体包括:
-
deezcord.js
-
dezcord.js
-
dizcordjs
-
etherdjs
-
ethesjs
-
ethetsjs
-
nodemonjs
-
react-router-dom.js
-
typescriptjs
-
zustand.js
此次多阶段凭证窃取行动通过伪装成TypeScript、discord.js、ethers.js等热门npm库的仿冒包进行。安装后,恶意软件会显示虚假验证码提示,并输出看似正常的安装信息,让开发者误以为安装过程正常进行。然而在后台,该软件包会捕获受害者的IP地址并发送至外部服务器,随后投放主恶意软件。
每个软件包中的恶意功能都会通过"postinstall"钩子在安装时自动触发,启动名为"install.js"的脚本。该脚本会检测受害者的操作系统,并在新的命令提示符(Windows)、GNOME终端(Linux)或终端(macOS)窗口中启动经过混淆的有效负载。
Pandya指出:"通过生成新的终端窗口,恶意软件能够独立于npm安装进程运行。开发者在安装过程中瞥见终端窗口时,只会看到新窗口短暂出现,而恶意软件会立即清屏以避免引起怀疑。"
"app.js"中的JavaScript代码通过四层混淆技术隐藏,包括使用动态生成密钥的XOR密码、对有效负载字符串进行URL编码,以及使用十六进制和八进制运算混淆程序流程等,这些设计都旨在抵抗分析。
攻击的最终目标是从同一服务器获取并执行一个全能型信息窃取程序。该程序能够全面扫描开发者计算机,从网页浏览器、配置文件和SSH密钥中搜索密钥、认证令牌、凭证和会话cookie。
该窃密程序还包含针对不同平台的特定实现,使用keyring npm库从系统密钥环中提取凭证。收集到的信息会被压缩成ZIP文件并外泄至服务器。
Socket公司强调:“系统密钥环存储着关键服务的凭证,包括电子邮件客户端、云存储同步工具、VPN连接、密码管理器、SSH密码、数据库连接字符串等与操作系统凭证存储集成的应用程序。通过直接攻击密钥环,恶意软件绕过了应用级安全防护,直接获取解密形式的存储凭证。这些凭证可让攻击者立即访问企业邮箱、文件存储、内部网络和生产数据库。”
消息来源:thehackernews;
本文由 HackerNews.cc 翻译整理,封面来源于网络;
转载请注明“转自 HackerNews.cc”并附上原文