恐怖如斯!发现有攻击者使用 NPM 包从本机窃取 SSH 密钥!
软件威胁研究人员上月初(2024 年 1 月)发现有恶意 NPM 软件包,恐怖会窃取电脑的攻击 SSH 密钥并上传至 Github 。
幸运的用N钥是 Github 在 1 月初发现后在没有被大面积扩散之前已从 NPM 注册表中删除了两个软件包:warbeast2000和kodiak2k
详细了解下它们做了什么?
warbeast2000
以下代码不是很复杂,一旦将其包安装到自己的包从本机电脑上后,会做以下几件事:
启动一个安装后的恐怖脚本读取 home 目录下的/.ssh/id_rsa文件(代码 L10 行定义的路径 filePath ,代码 L13 行使用 Node.js API 从本地文件系统获取私钥信息)对获取到的攻击密钥 base64 编码并上传至攻击者的高防服务器 Github 仓库
这段代码看完 ,真是用N钥恐怖如斯!id_rsa是包从本机ssh-keygen生成的 SSH 密钥默认文件,在 Windows 、恐怖MacOS、攻击Linux 、用N钥Unix 系统上是包从本机一个标准文件名了 ,开发者通常使用它访问自己的恐怖私有仓库,例如 Github、源码下载攻击Gitlab 等 。用N钥
要注意的是,除了 id_rsa 是默认的文件名 ,.ssh 这个文件夹也是可以访问的,意味这该文件夹下的内容也是可以被全部窃取的。源码库很显然,“这个攻击者的软件包很可能还处于开发中...”
好在,该软件包已于 1 月 3 日左右被报告给了 NPM 管理员 ,并且已被删除。
kodiak2k
warbeast2000被发现后的不久 ,1 月 5 日又发现一个类似的软件包kodiak2k ,与上面代码类似都会获取本机 ssh 密钥,不同的是该软件似乎在攻击一个具体的名为meow的香港云服务器用户 。

上次刚发现有人将武林外传 上传至 NPM 仓库,当免费网盘使用 ,这次竟有人恶意利用 NPM、Github 窃取用户的 SSH 密钥 ,幸运的是这次发现的早,影响范围有限。warbeast2000 软件包的下载量略低于400次 ,而 kodiak2k 的亿华云下载量约为950次。
从侧面也反映出 NPM 、Github 被滥用的行为正在扩大 ,不知不觉中也会影响到我们每个人 。本次事件也应引起我们大家的注意,开发人员和开发组织在选择一些 NPM 包时也需要进行安全评估。
这种事件并非 NPM 独有 ,Python 的包管理 PyPI 也曾受到恶意包的困扰 ,参考 https://www.scmagazine.com/brief/info-crypto-stealing-python-packages-proliferate。
本文参考 https://www.reversinglabs.com/blog/gitgot-cybercriminals-using-github-to-store-stolen-data。模板下载