Python 软件包索引(PyPI)中引入了两个 Python 软件包的恶意版本,目的是从 Python 开发人员的项目中窃取 SSH 和 GPG 密钥。

PyPI 是 Python 社区创建和共享的软件集,类似于应用中心。

其中一个恶意库通过使用域名抢注来模拟合法库,它的名称为“python3-dateutil”,是对“dateutil”这个软件包的模仿,带有标准 Python datetime 模块的扩展。

python3-dateutil 本身不包含危险代码,但包含导入名为“jeIlyfish”(注意,第一个“L”实际上是“I”)的软件包的语句,而这是“jellyfish ”库的伪造版本。这个伪造的库是从 GitLab 的仓库中下载的,它混淆了代码,该代码收集了 SSH 和 GPG 密钥以及受感染系统上的目录列表,并将其发送给攻击者。

自 2018 年 12 月 11 日以来,PyPI 中一直存在恶意的“jeIlyfish”。

jeIlyfish和jellyfish,你能区分哪个是Python软件包索引PyPI上伪造库吗?-玩懂手机网 - 玩懂手机第一手的手机资讯网(www.wdshouji.com)

德国开发人员 Lukas Martini 于 12 月 1 日发现了这两个库 ,并向 Python 安全团队报告,几个小时后,团队便采取了行动将其删除。

jeIlyfish和jellyfish,你能区分哪个是Python软件包索引PyPI上伪造库吗?-玩懂手机网 - 玩懂手机第一手的手机资讯网(www.wdshouji.com)

提醒使用“dateutil”和“jellyfish”的开发者,都检查一下是否导入或下载了不正确的软件包。

来源:https://www.bleepingcomputer.com/news/security/malicious-python-package-available-in-pypi-repo-for-a-year