Every CVE Search/ Get API key

CVE-2025-50537

Withdrawn Advisory: eslint has a Stack Overflow when serializing objects with circular references

5.5 MediumFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
None
User interaction
Required

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
High

Exploit likelihood

0.20%Up 0.2 points since Jan 27, 2026
90%50%10%1%

What each source reports

CVE List Score used 5.5

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.

Record
CVE-2025-50537
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Weakness
CWE-674
Updated
2026-11-02
EUVDEUVD-2025-206359 5.5

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.

Record
EUVD-2025-206359
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Updated
2026-11-02
GitHub AdvisoriesGHSA-p5wg-g6qr-c7cg 5.5

Withdrawn Advisory: eslint has a Stack Overflow when serializing objects with circular references

Withdrawn Advisory

This advisory has been withdrawn because RuleTester is used for testing rules during development and results in a error rather than crashing the application.

Original Description

There is a 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.

Record
GHSA-p5wg-g6qr-c7cg
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Weakness
CWE-674
Updated
2026-11-02
NVD 5.5

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.

Record
CVE-2025-50537
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Weakness
CWE-674
Updated
2026-11-02
OSV 5.5

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.

Record
CVE-2025-50537
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVDEBIAN-CVE-2025-50537 5.5

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.

Record
DEBIAN-CVE-2025-50537
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVGHSA-p5wg-g6qr-c7cg 5.5

Withdrawn Advisory: eslint has a Stack Overflow when serializing objects with circular references

Withdrawn Advisory

This advisory has been withdrawn because RuleTester is used for testing rules during development and results in a error rather than crashing the application.

Original Description

There is a 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.

Record
GHSA-p5wg-g6qr-c7cg
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Weakness
CWE-674
Updated
2026-11-02
OSVUBUNTU-CVE-2025-50537 5.5

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.

Record
UBUNTU-CVE-2025-50537
CVSS 3.1
5.5 MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVROOT-APP-NPM-CVE-2025-50537 No score

CVE-2025-50537 in @rootio/eslint - Patched by Root

Root has patched CVE-2025-50537 in the @rootio/eslint package for Root:npm. Multiple fixed versions available.

Record
ROOT-APP-NPM-CVE-2025-50537
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
@rootio/eslint
Root:npm
before 7.32.0-root.io.1
7.32.0-root.io.19.16.0-root.io.19.16.0-root.io.27.32.0-root.io.29.16.0-root.io.3
eslint
Root:npm
before 7.32.0-aikido.2
7.32.0-aikido.29.16.0-aikido.3
eslint
Ubuntu:20.04:LTS
All versions, plus listed versions
5.0.1~dfsg-4build25.0.1~dfsg-4build3
None known
eslint
Ubuntu:22.04:LTS
All versions, plus listed versions
5.16.0~dfsg+~4.16.8-55.16.0~dfsg+~4.16.8-65.16.0~dfsg+~4.16.8-75.16.0~dfsg+~4.16.8-86.4.0~dfsg+~6.1.9-2
None known
eslint
Ubuntu:24.04:LTS
All versions, plus listed versions
6.4.0~dfsg+~6.1.9-76.4.0~dfsg+~6.1.9-11build3
None known
eslint
Ubuntu:25.10
All versions, plus listed versions
6.4.0~dfsg+~6.1.9-12
None known
eslint
Ubuntu:26.10
All versions, plus listed versions
6.4.0~dfsg+~6.1.9-126.4.0~dfsg+~6.1.9-136.4.0~dfsg+~6.1.9-14
None known
eslint
Ubuntu:26.04:LTS
All versions, plus listed versions
6.4.0~dfsg+~6.1.9-12
None known

History

History
RecordedChangedSources
affected
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2025-50537 is a medium vulnerability (CVSS 5.5) in Openjsf Eslint, published January 26, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.20%, the 9th percentile. Fixed in @rootio/eslint 7.32.0-root.io.1.

References

Show 4 moreShow less
MoveEnter Open