CVE-2026-12866
expr-eval vulnerable to Code Execution
All versions of the package expr-eval are vulnerable to Code Execution via the toJSFunction() API. An attacker can execute arbitrary JavaScript by supplying crafted expressions that are compiled into native code using new Function(). Because user-controlled expressions are transformed directly into executable JavaScript, attackers can escape the intended expression sandbox and run arbitrary code within the application's context.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
9.2
All versions of the package expr-eval are vulnerable to Code Execution via the toJSFunction() API. An attacker can execute arbitrary JavaScript by supplying crafted expressions that are compiled into native code using new Function(). Because user-controlled expressions are transformed directly into executable JavaScript, attackers can escape the intended expression sandbox and run arbitrary code within the application's context.
- Record
CVE-2026-12866- CVSS 4.0
- 9.2 Critical
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-94, CWE-94
- Updated
- 2026-11-02
EUVDEUVD-2026-38415
9.2
All versions of the package expr-eval are vulnerable to Code Execution via the toJSFunction() API. An attacker can execute arbitrary JavaScript by supplying crafted expressions that are compiled into native code using new Function(). Because user-controlled expressions are transformed directly into executable JavaScript, attackers can escape the intended expression sandbox and run arbitrary code within the application's context.
- Record
EUVD-2026-38415- CVSS 4.0
- 9.2 Critical
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-q9v2-7m5w-4693
9.2
expr-eval vulnerable to Code Execution
All versions of the package expr-eval are vulnerable to Code Execution via the toJSFunction() API. An attacker can execute arbitrary JavaScript by supplying crafted expressions that are compiled into native code using new Function(). Because user-controlled expressions are transformed directly into executable JavaScript, attackers can escape the intended expression sandbox and run arbitrary code within the application's context.
- Record
GHSA-q9v2-7m5w-4693- CVSS 4.0
- 9.2 Critical
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-94
- Updated
- 2026-11-02
NVD
9.2
All versions of the package expr-eval are vulnerable to Code Execution via the toJSFunction() API. An attacker can execute arbitrary JavaScript by supplying crafted expressions that are compiled into native code using new Function(). Because user-controlled expressions are transformed directly into executable JavaScript, attackers can escape the intended expression sandbox and run arbitrary code within the application's context.
- Record
CVE-2026-12866- CVSS 4.0
- 9.2 Critical
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-94
- Updated
- 2026-11-02
OSVGHSA-q9v2-7m5w-4693
9.2
expr-eval vulnerable to Code Execution
All versions of the package expr-eval are vulnerable to Code Execution via the toJSFunction() API. An attacker can execute arbitrary JavaScript by supplying crafted expressions that are compiled into native code using new Function(). Because user-controlled expressions are transformed directly into executable JavaScript, attackers can escape the intended expression sandbox and run arbitrary code within the application's context.
- Record
GHSA-q9v2-7m5w-4693- CVSS 4.0
- 9.2 Critical
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N - CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-94
- Updated
- 2026-11-02
OSVCLSA-2026-1792241023 No score
TuxCare security update for expr-eval (1 CVE)
TuxCare rebuilt expr-eval to address 1 CVE. Fixed in 2.0.2-tuxcare.4.
- Record
CLSA-2026-1792241023- Updated
- 2026-11-02
OSVROOT-APP-NPM-CVE-2026-12866 No score
CVE-2026-12866 in expr-eval - Patched by Root
Root has patched CVE-2026-12866 in the expr-eval package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-CVE-2026-12866- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
expr-evalnpm |
through 2.0.2 | None known |
org.webjars.npm:expr-evalMaven |
through 2.0.2 | None known |
expr-evalTuxCare:npm |
2.0.2-tuxcare.0 up to 2.0.2-tuxcare.4, plus listed versions 2.0.22.0.2-tuxcare.12.0.2-tuxcare.22.0.2-tuxcare.3 |
2.0.2-tuxcare.4 |
expr-evalRoot:npm |
before 2.0.2-aikido.4 | 2.0.2-aikido.4 |
@rootio/expr-evalRoot:npm |
before 2.0.2-root.io.4 | 2.0.2-root.io.4 |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-12866 is a critical vulnerability (CVSS 9.2) in Silentmatt Expr-eval, published June 23, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.87%, the 58th percentile. Fixed in expr-eval 2.0.2-tuxcare.4.
References
security.snyk.io/vuln/SNYK-JS-EXPREVAL-15054690
security.snyk.io/vuln/SNYK-JAVA-ORGWEBJARSNPM-17662018
github.com/silentmatt/expr-eval/blob/master/src/expression.js%23L55
github.com/silentmatt/expr-eval/issues/292
nvd.nist.gov/vuln/detail/CVE-2026-12866
github.com/silentmatt/expr-eval/blob/master/src/expression.js
github.com/advisories/GHSA-q9v2-7m5w-4693
github.com/silentmatt/expr-eval