漏洞标题
pnom由于overrides/`ignore-scripts`绕过功能易受no-script全局缓存中毒攻击
漏洞描述信息
在版本9.15.0之前的包管理器pnpm中,存在对覆盖配置和全局缓存处理不当的问题:一个工作区中的覆盖配置会泄露到全局缓存中保存的npm元数据中;全局缓存中的npm元数据会影响其他工作区;默认安装不会重新验证数据(包括首次生成锁文件时)。这可能导致工作区A(即使使用`ignore-scripts=true`)毒化全局缓存,并在工作区B中执行脚本。用户通常期望`ignore-scripts`足以防止安装时立即执行代码(例如,当树只是重新打包/捆绑而不执行时)。在这里,这种期望被打破了。通过预期是安全的操作,全局状态的完整性被破坏,从而在安装时启用任意代码执行。版本9.15.0修复了此问题。作为解决方法,可以在每个工作区中使用独立的缓存和存储目录。
CVSS信息
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
漏洞类别
特权管理不恰当
漏洞标题
pnom vulnerable to no-script global cache poisoning via overrides / `ignore-scripts` evasion
漏洞描述信息
The package manager pnpm prior to version 9.15.0 seems to mishandle overrides and global cache: Overrides from one workspace leak into npm metadata saved in global cache; npm metadata from global cache affects other workspaces; and installs by default don't revalidate the data (including on first lockfile generation). This can make workspace A (even running with `ignore-scripts=true`) posion global cache and execute scripts in workspace B. Users generally expect `ignore-scripts` to be sufficient to prevent immediate code execution on install (e.g. when the tree is just repacked/bundled without executing it). Here, that expectation is broken. Global state integrity is lost via operations that one would expect to be secure, enabling subsequently running arbitrary code execution on installs. Version 9.15.0 fixes the issue. As a work-around, use separate cache and store dirs in each workspace.
CVSS信息
N/A
漏洞类别
不可信的搜索路径
漏洞标题
pnpm 代码问题漏洞
漏洞描述信息
pnpm是pnpm开源的一个包管理器。 pnpm 9.14.4及之前版本存在代码问题漏洞,该漏洞源于存在处理覆盖和全局缓存不当的漏洞,可导致在后续安装中运行任意代码。
CVSS信息
N/A
漏洞类别
代码问题