GitHub Advisoryadvisory · Maven

GHSA-3w8q-xq97-5j7x Rhino has high CPU usage and potential DoS when passing specific numbers to `toFixed()` function

LOW Published 2025-12-03 Modified 2025-12-04 Official page ↗
Aliases
CVE-2025-66453
Ecosystem
Maven
Packages
org.mozilla:rhino
Severity
Low
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:U
Weaknesses
CWE-400
Reviewed
2025-12-03

Affected packages

• Maven org.mozilla:rhino: < 1.7.14.1 → fixed in 1.7.14.1 • Maven org.mozilla:rhino: >= 1.7.15, < 1.7.15.1 → fixed in 1.7.15.1 • Maven org.mozilla:rhino: >= 1.8.0, < 1.8.1 → fixed in 1.8.1

Description

When an application passed an attacker controlled float poing number into the `toFixed()` function, it might lead to high CPU consumption and a potential Denial of Service. Small numbers go through this call stack: `NativeNumber.numTo > DToA.JS_dtostr > DToA.JS_dtoa > DToA.pow5mult` where `pow5mult` attempts to raise `5` to a ridiculous power. Example code: `(4.47118444E-314).toFixed(2)`

Related

Alias · CVE (1)

  • CVE-2025-66453 Rhino is an open-source implementation of JavaScript written entirely in Java. vulnerability

Weakness · CWE (1)

  • CWE-400 Uncontrolled Resource Consumption weakness

References