React Native CLI存在任意操作系统命令注入漏洞

React Native CLI的Metro开发服务器默认绑定外部接口,存在操作系统命令注入漏洞,允许未经认证的攻击者通过POST请求执行任意命令,Windows系统下还可执行完全控制参数的shell命令。

漏洞详情

包管理器: npm
包名称: @react-native-community/cli

受影响版本

  • = 20.0.0-alpha.0, < 20.0.0

  • = 19.0.0-alpha.0, < 19.1.2

  • = 18.0.0, < 18.0.1

  • < 17.0.1

已修复版本

  • 20.0.0
  • 19.1.2
  • 18.0.1
  • 17.0.1

漏洞描述

由React Native CLI启动的Metro开发服务器默认绑定到外部接口。该服务器暴露了一个易受操作系统命令注入攻击的端点。这允许未经认证的网络攻击者向服务器发送POST请求并运行任意可执行文件。

在Windows系统上,攻击者还可以使用完全控制的参数执行任意shell命令。

参考资料

安全评分

严重等级: 严重
CVSS总体评分: 9.8/10

CVSS v3基础指标

  • 攻击向量: 网络
  • 攻击复杂度: 低
  • 所需权限: 无
  • 用户交互: 无
  • 范围: 未改变
  • 机密性: 高
  • 完整性: 高
  • 可用性: 高

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

弱点分类

弱点类型: CWE-78
弱点描述: 在操作系统命令中使用的特殊元素的不当中和(“操作系统命令注入”)

产品使用来自上游组件的外部影响输入构建全部或部分操作系统命令,但在将其发送到下游组件时,没有中和或错误地中和了可能修改预期操作系统命令的特殊元素。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计