
软件供应链公司 JFrog Ltd. 的安全研究人员今日披露了 Meta Platforms Inc. 开发的开源 JavaScript 库 React 中存在一个高危漏洞的细节,可能导致数百万开发者面临远程代码执行风险。
漏洞影响范围广泛
JFrog 安全研究团队在每周下载量超过 200 万次的 @react-native-community/cli NPM 包中发现该漏洞(CVE-2025-11953),其通用漏洞评分系统(CVSS)评分为 9.8 分(高危级)。该漏洞一旦被利用,未经认证的攻击者即可在运行 React Native 开发服务器(Metro)的机器上执行任意操作系统命令,进而入侵开发者环境。
漏洞技术细节
该问题存在于 React Native 核心代码库中,即使开发服务器部署在本地,也可能将服务器暴露给外部网络,使得漏洞风险尤为严重。漏洞源于 CLI 的 /open-url 端点对用户输入的不安全处理——该端点会将未经净化的数据传递给 NPM 包 open 中的 open() 函数。该问题主要影响 Windows 系统,攻击者可利用漏洞运行 calc.exe 等任意 shell 命令,理论上也可能影响 macOS 和 Linux 系统。
修复方案与缓解措施
JFrog 在公开漏洞细节前已向 Meta 报告该问题,目前新版软件已发布补丁。受影响版本为 @react-native-community/cli-server-api 4.8.0 至 20.0.0-alpha.2,20.0.0 及更高版本已修复该漏洞。开发者可通过运行以下命令检查项目是否使用受影响版本:
npm list @react-native-community/cli-server-api
或
npm list -g @react-native-community/cli-server-api
无法立即更新 React 部署的用户可采用 JFrog 研究人员建议的缓解措施:通过命令显式将开发服务器绑定到本地主机:
npx react-native start --host 127.0.0.1
安全启示
研究人员指出:"该漏洞表明,即使像将用户输入传递给系统 shell 这样直接的远程代码执行缺陷,仍会出现在实际软件中,特别是当危险接收函数实际存在于第三方代码时(本例为导入的 'open' 函数)。这提醒我们,安全的编码实践和自动化安全扫描对于防止这些易被利用的缺陷进入生产环境至关重要。"
参考来源:
JFrog discloses CVSS 9.8 React vulnerability putting millions of developers at risk
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf
客服小蜜蜂(微信:freebee1024)



