expr-eval库安全漏洞分析:代码注入导致任意代码执行

本文详细分析了expr-eval JavaScript表达式解析库中的安全漏洞CVE-2025-12735,该漏洞由于输入验证不足导致攻击者可通过精心构造的变量对象实现任意代码执行,影响版本包括2.0.2及之前版本。

expr-eval库安全漏洞分析:CVE-2025-12735

漏洞概述

expr-eval是一个JavaScript表达式解析器和求值器,设计用于安全地评估包含用户定义变量的数学表达式。然而,由于输入验证不足,攻击者可以向evaluate()函数传递精心构造的变量对象,从而触发任意代码执行。

受影响版本

npm包:expr-eval

  • 受影响版本:<= 2.0.2
  • 已修复版本:无

npm包:expr-eval-fork

  • 受影响版本:<= 2.0.2
  • 已修复版本:无

漏洞详情

该漏洞源于expr-eval库在处理用户输入时缺乏充分的验证机制。攻击者能够通过特制的变量对象绕过安全限制,在目标系统上执行任意代码。

严重程度

  • 严重等级:高
  • CVSS总体评分:8.6/10
  • EPSS评分:0.075%(第23百分位)

CVSS v4基础指标

可利用性指标

  • 攻击向量:本地
  • 攻击复杂度:低
  • 攻击要求:无
  • 所需权限:无
  • 用户交互:无

脆弱系统影响指标

  • 机密性:高
  • 完整性:高
  • 可用性:高

相关弱点

  • CWE-94:代码生成的不当控制(代码注入)
  • 产品使用外部影响的输入构建代码段,但未能正确清理可能修改预期代码段语法或行为的特殊元素。

参考链接

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