Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 1183

拼写抢注包(Typosquatted Package)

拼写抢注包(Typosquatted Package) 是什么?

拼写抢注包(Typosquatted Package)以与流行库非常相似的名称发布的恶意开源包,引诱开发者输入错误时误装。


Typosquatted 包利用开发者的自动补全和复制粘贴习惯。攻击者挑选广泛使用的库,如 react、lodash、requests、cross-env、urllib3,在 npm、PyPI、RubyGems 或 NuGet 上以仅有细微差异的名称发布恶意包(如 crossenv vs cross-env,python3-dateutil vs python-dateutil)。当开发者拼错、依赖错误的文档或采纳 AI 建议时,恶意包就被安装,其 post-install 或 import 代码会窃取令牌、植入后门或清空加密钱包。防御措施包括锁文件、白名单、依赖审查工具(Socket、Snyk、GitHub Dependency Review)、CI 中对新依赖的严格策略,以及注册表层面的命名空间保护。

示例

  1. 01

    2017 年 npm 上的 crossenv(对应合法包 cross-env)包含凭据窃取代码。

  2. 02

    2019 年 PyPI 上的 python3-dateutil 与 jeIlyfish 通过仿冒名称窃取 SSH 密钥。

常见问题

拼写抢注包(Typosquatted Package) 是什么?

以与流行库非常相似的名称发布的恶意开源包,引诱开发者输入错误时误装。 它属于网络安全的 攻击与威胁 分类。

拼写抢注包(Typosquatted Package) 是什么意思?

以与流行库非常相似的名称发布的恶意开源包,引诱开发者输入错误时误装。

拼写抢注包(Typosquatted Package) 是如何工作的?

Typosquatted 包利用开发者的自动补全和复制粘贴习惯。攻击者挑选广泛使用的库,如 react、lodash、requests、cross-env、urllib3,在 npm、PyPI、RubyGems 或 NuGet 上以仅有细微差异的名称发布恶意包(如 crossenv vs cross-env,python3-dateutil vs python-dateutil)。当开发者拼错、依赖错误的文档或采纳 AI 建议时,恶意包就被安装,其 post-install 或 import 代码会窃取令牌、植入后门或清空加密钱包。防御措施包括锁文件、白名单、依赖审查工具(Socket、Snyk、GitHub Dependency Review)、CI 中对新依赖的严格策略,以及注册表层面的命名空间保护。

如何防御 拼写抢注包(Typosquatted Package)?

针对 拼写抢注包(Typosquatted Package) 的防御通常结合技术控制与运营实践,详见上方完整定义。

拼写抢注包(Typosquatted Package) 还有哪些其他名称?

常见的别称包括: 软件包抢注, 名称混淆攻击。

相关术语