CVE-2025-50537

eslint: eslint: Denial of Service via stack overflow when serializing objects with circular references

Published Jan 26, 2026 CVSS 3.1 · 5.5 Medium EPSS < 1% KEV · Not listed
Description
Stack overflow vulnerability in eslint before 9.26.0 when serializing objects with circular references in eslint/lib/shared/serialization.js. The exploit is triggered via the RuleTester.run() method, which validates test cases and checks for duplicates. During validation, the internal function checkDuplicateTestCase() is called, which in turn uses the isSerializable() function for serialization checks. When a circular reference object is passed in, isSerializable() enters infinite recursion, ultimately causing a stack overflow.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-p5wg-g6qr-c7cg Withdrawn Advisory: eslint has a Stack Overflow when serializing objects with circular references
History
Type Values Removed Values Added
First Time appeared Openjsf
Openjsf eslint
CPEs cpe:2.3:a:openjsf:eslint:*:*:*:*:*:node.js:*:*
Vendors & Products Openjsf
Openjsf eslint
Type Values Removed Values Added
Title eslint: eslint: Denial of Service via stack overflow when serializing objects with circular references
References
Metrics threat_severity

None

threat_severity

Moderate

Type Values Removed Values Added
First Time appeared Eslint
Eslint eslint
Vendors & Products Eslint
Eslint eslint
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Weaknesses CWE-674
Metrics cvssV3_1

{'score': 5.5, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H'}

Type Values Removed Values Added
Description Stack overflow vulnerability in eslint before 9.26.0 when serializing objects with circular references in eslint/lib/shared/serialization.js. The exploit is triggered via the RuleTester.run() method, which validates test cases and checks for duplicates. During validation, the internal function checkDuplicateTestCase() is called, which in turn uses the isSerializable() function for serialization checks. When a circular reference object is passed in, isSerializable() enters infinite recursion, ultimately causing a stack overflow.
References
Weaknesses

Sources

Status
PUBLISHED
Assigner
mitre
Published
Updated
Jan 26, 2026, 4:16 PM
Reserved
Jun 16, 2025, 12:00 AM
Status
Analyzed
Published
Jan 26, 2026, 4:15 PM
Modified
Jun 17, 2026, 9:35 AM
Severity
Moderate
Public date
Jan 26, 2026, 12:00 AM