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

2023-07-05 12:07IT之家 - 故渊

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

NPM 是 JavaScript 编程语言的程序包管理器,也是广泛使用的 Node.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之家所有文章均包含本声明。

文章价值:
人打分
有价值还可以无价值
置顶评论
    热门评论
      文章发布时间太久,仅显示热门评论
      全部评论
      请登录后查看评论
        取消发送
        软媒旗下人气应用

        如点击保存海报无效,请长按图片进行保存分享