新 Python 工具可检测 NPM 包是否存在“Manifest 混淆”问题

GitHub 和 NPM 的前工程经理 Darcy Clarke 上周警告称,NPM 包存在“Manifest 混淆”问题。系统管理员 Felix Pankratz 近日发布了一款基于 Python 的工具,可以帮助软件开发人员检查 NPM 包是否一致。

NPM 是 JavaScript 编程语言的程序包管理器,也是广泛使用的 Noje.js 环境的默认配置。

该程序包管理器有助于项目管理员自动化安装、升级和配置托管在 npmjs.com 的 npm 注册表数据库上的软件包。

当程序包在 npm 注册表上展示的 maniefest 信息,与安装该程序包时使用的发布的 npm 包 tarball 中的实际的 “package.json” 文件不一致时,就会发生 Manifest 混淆。

IT之家在此附上该工具的 GitHub 页面,有需要的用户可以前往下载。

用户需要该工具要求安装相关组件:

pip install -r requirements.txt

如果只是想要检查某个包,只需要在脚本末尾添加包的名称,例如:

$ ./npm-manifest-check.py darcyclarke-manifest-pkg

反馈结果将显示 Manifest 和实际 package.json 文件之间的版本、依赖项、脚本和包名称中的任何不匹配信息。

如果想要检测多个包,可以先将这些包添加到“packages.list”文件中,然后使用“check_packages.sh”包装器脚本进行检查。

本文转载自IT之家。本站转载此文目的在于传递更多信息,并不代表赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与本网联系,我们将在第一时间删除内容,本网站对此声明具有最终解释权。

最新文章
Copyright © DoNews 2000-2025 All Rights Reserved
蜀ICP备2024059877号-1