An AST-based pattern checker for JavaScript.
Published date: 2021-02-25T01:20:42Z
A vulnerability was descovered in eslint before 4.18.2. One of the regexes in eslint is vulnerable to catastrophic backtracking.
Affected versions: ["4.18.1", "4.18.0", "4.17.0", "4.16.0", "4.15.0", "4.14.0", "4.13.1", "4.13.0", "4.12.1", "4.12.0", "4.11.0", "4.10.0", "4.9.0", "4.8.0", "4.7.2", "4.7.1", "4.7.0", "4.6.1", "4.6.0", "4.5.0", "4.4.1", "4.4.0", "4.3.0", "4.2.0", "4.1.1", "4.1.0", "4.0.0", "4.0.0-rc.0", "4.0.0-beta.0", "4.0.0-alpha.2", "4.0.0-alpha.1", "4.0.0-alpha.0", "3.19.0", "3.18.0", "3.17.1", "3.17.0", "3.16.1", "3.16.0", "3.15.0", "3.14.1", "3.14.0", "3.13.1", "3.13.0", "3.12.2", "3.12.1", "3.12.0", "3.11.1", "3.11.0", "3.10.2", "3.10.1", "3.10.0", "3.9.1", "3.9.0", "3.8.1", "3.8.0", "3.7.1", "3.7.0", "3.6.1", "3.6.0", "3.5.0", "3.4.0", "3.3.1", "3.3.0", "3.2.2", "3.2.1", "3.2.0", "3.1.1", "3.1.0", "3.0.1", "3.0.0", "2.13.1", "2.13.0", "2.12.0", "2.11.1", "2.11.0", "2.10.2", "2.10.1", "2.10.0", "2.9.0", "2.8.0", "2.7.0", "2.6.0", "2.5.3", "2.5.2", "2.5.1", "2.5.0", "2.4.0", "2.3.0", "2.2.0", "2.1.0", "2.0.0", "2.0.0-rc.1", "2.0.0-rc.0", "2.0.0-beta.3", "2.0.0-beta.2", "2.0.0-beta.1", "2.0.0-alpha-1", "2.0.0-alpha-2", "1.10.3", "1.10.2", "1.10.1", "1.10.0", "1.9.0", "1.8.0", "1.7.3", "1.7.2", "1.7.1", "1.7.0", "1.6.0", "1.5.1", "1.5.0", "1.4.3", "1.4.2", "1.4.1", "1.4.0", "1.3.1", "1.3.0", "1.2.1", "1.2.0", "1.1.0", "1.0.0", "1.0.0-rc-3", "1.0.0-rc-2", "1.0.0-rc-1", "0.24.1", "0.24.0", "0.23.0", "0.22.1", "0.22.0", "0.21.2", "0.21.1", "0.21.0", "0.20.0", "0.19.0", "0.18.0", "0.17.1", "0.17.0", "0.16.2", "0.16.1", "0.16.0", "0.15.1", "0.15.0", "0.14.1", "0.14.0", "0.13.0", "0.12.0", "0.11.0", "0.11.0-alpha.0", "0.10.2", "0.10.1", "0.10.0", "0.10.0-alpha.2", "0.10.0-alpha.1", "0.10.0-alpha", "0.9.2", "0.9.1", "0.9.0", "0.8.2", "0.8.1", "0.8.0", "0.7.4", "0.7.3", "0.7.2", "0.7.1", "0.6.2", "0.6.1", "0.6.0", "0.5.1", "0.5.0", "0.4.5", "0.4.4", "0.4.3", "0.4.2", "0.4.1", "0.4.0", "0.3.0", "0.2.0", "0.1.4", "0.1.3", "0.1.2", "0.1.1", "0.1.0", "0.0.7", "0.0.6", "0.0.5", "0.0.4"]
Secure versions: [10.0.0, 10.0.0-alpha.0, 10.0.0-alpha.1, 10.0.0-beta.0, 10.0.0-rc.0, 10.0.0-rc.1, 10.0.0-rc.2, 10.0.1, 10.0.2, 10.0.3, 10.1.0, 9.26.0, 9.27.0, 9.28.0, 9.29.0, 9.30.0, 9.30.1, 9.31.0, 9.32.0, 9.33.0, 9.34.0, 9.35.0, 9.36.0, 9.37.0, 9.38.0, 9.39.0, 9.39.1, 9.39.2, 9.39.3, 9.39.4]
Recommendation: Update to version 10.1.0.
Published date: 2026-01-26T18:31:29Z
CVE: CVE-2025-50537
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.
Affected versions: ["9.25.1", "9.25.0", "9.24.0", "9.23.0", "9.22.0", "9.21.0", "9.20.1", "9.20.0", "9.19.0", "9.18.0", "9.17.0", "9.16.0", "9.15.0", "9.14.0", "9.13.0", "9.12.0", "9.11.1", "9.11.0", "9.10.0", "9.9.1", "9.9.0", "9.8.0", "9.7.0", "9.6.0", "9.5.0", "9.4.0", "9.3.0", "9.2.0", "9.1.1", "9.1.0", "9.0.0", "9.0.0-rc.0", "9.0.0-beta.2", "9.0.0-beta.1", "9.0.0-beta.0", "9.0.0-alpha.2", "9.0.0-alpha.1", "9.0.0-alpha.0", "8.57.1", "8.57.0", "8.56.0", "8.55.0", "8.54.0", "8.53.0", "8.52.0", "8.51.0", "8.50.0", "8.49.0", "8.48.0", "8.47.0", "8.46.0", "8.45.0", "8.44.0", "8.43.0", "8.42.0", "8.41.0", "8.40.0", "8.39.0", "8.38.0", "8.37.0", "8.36.0", "8.35.0", "8.34.0", "8.33.0", "8.32.0", "8.31.0", "8.30.0", "8.29.0", "8.28.0", "8.27.0", "8.26.0", "8.25.0", "8.24.0", "8.23.1", "8.23.0", "8.22.0", "8.21.0", "8.20.0", "8.19.0", "8.18.0", "8.17.0", "8.16.0", "8.15.0", "8.14.0", "8.13.0", "8.12.0", "8.11.0", "8.10.0", "8.9.0", "8.8.0", "8.7.0", "8.6.0", "8.5.0", "8.4.1", "8.4.0", "8.3.0", "8.2.0", "8.1.0", "8.0.1", "8.0.0", "8.0.0-rc.0", "8.0.0-beta.2", "8.0.0-beta.1", "8.0.0-beta.0", "7.32.0", "7.31.0", "7.30.0", "7.29.0", "7.28.0", "7.27.0", "7.26.0", "7.25.0", "7.24.0", "7.23.0", "7.22.0", "7.21.0", "7.20.0", "7.19.0", "7.18.0", "7.17.0", "7.16.0", "7.15.0", "7.14.0", "7.13.0", "7.12.1", "7.12.0", "7.11.0", "7.10.0", "7.9.0", "7.8.1", "7.8.0", "7.7.0", "7.6.0", "7.5.0", "7.4.0", "7.3.1", "7.3.0", "7.2.0", "7.1.0", "7.0.0", "7.0.0-rc.0", "7.0.0-alpha.3", "7.0.0-alpha.2", "7.0.0-alpha.1", "7.0.0-alpha.0", "6.8.0", "6.7.2", "6.7.1", "6.7.0", "6.6.0", "6.5.1", "6.5.0", "6.4.0", "6.3.0", "6.2.2", "6.2.1", "6.2.0", "6.1.0", "6.0.1", "6.0.0", "6.0.0-rc.0", "6.0.0-alpha.2", "6.0.0-alpha.1", "6.0.0-alpha.0", "5.16.0", "5.15.3", "5.15.2", "5.15.1", "5.15.0", "5.14.1", "5.14.0", "5.13.0", "5.12.1", "5.12.0", "5.11.1", "5.11.0", "5.10.0", "5.9.0", "5.8.0", "5.7.0", "5.6.1", "5.6.0", "5.5.0", "5.4.0", "5.3.0", "5.2.0", "5.1.0", "5.0.1", "5.0.0", "5.0.0-rc.0", "5.0.0-alpha.4", "5.0.0-alpha.3", "5.0.0-alpha.2", "5.0.0-alpha.1", "5.0.0-alpha.0", "4.19.1", "4.19.0", "4.18.2", "4.18.1", "4.18.0", "4.17.0", "4.16.0", "4.15.0", "4.14.0", "4.13.1", "4.13.0", "4.12.1", "4.12.0", "4.11.0", "4.10.0", "4.9.0", "4.8.0", "4.7.2", "4.7.1", "4.7.0", "4.6.1", "4.6.0", "4.5.0", "4.4.1", "4.4.0", "4.3.0", "4.2.0", "4.1.1", "4.1.0", "4.0.0", "4.0.0-rc.0", "4.0.0-beta.0", "4.0.0-alpha.2", "4.0.0-alpha.1", "4.0.0-alpha.0", "3.19.0", "3.18.0", "3.17.1", "3.17.0", "3.16.1", "3.16.0", "3.15.0", "3.14.1", "3.14.0", "3.13.1", "3.13.0", "3.12.2", "3.12.1", "3.12.0", "3.11.1", "3.11.0", "3.10.2", "3.10.1", "3.10.0", "3.9.1", "3.9.0", "3.8.1", "3.8.0", "3.7.1", "3.7.0", "3.6.1", "3.6.0", "3.5.0", "3.4.0", "3.3.1", "3.3.0", "3.2.2", "3.2.1", "3.2.0", "3.1.1", "3.1.0", "3.0.1", "3.0.0", "2.13.1", "2.13.0", "2.12.0", "2.11.1", "2.11.0", "2.10.2", "2.10.1", "2.10.0", "2.9.0", "2.8.0", "2.7.0", "2.6.0", "2.5.3", "2.5.2", "2.5.1", "2.5.0", "2.4.0", "2.3.0", "2.2.0", "2.1.0", "2.0.0", "2.0.0-rc.1", "2.0.0-rc.0", "2.0.0-beta.3", "2.0.0-beta.2", "2.0.0-beta.1", "2.0.0-alpha-1", "2.0.0-alpha-2", "1.10.3", "1.10.2", "1.10.1", "1.10.0", "1.9.0", "1.8.0", "1.7.3", "1.7.2", "1.7.1", "1.7.0", "1.6.0", "1.5.1", "1.5.0", "1.4.3", "1.4.2", "1.4.1", "1.4.0", "1.3.1", "1.3.0", "1.2.1", "1.2.0", "1.1.0", "1.0.0", "1.0.0-rc-3", "1.0.0-rc-2", "1.0.0-rc-1", "0.24.1", "0.24.0", "0.23.0", "0.22.1", "0.22.0", "0.21.2", "0.21.1", "0.21.0", "0.20.0", "0.19.0", "0.18.0", "0.17.1", "0.17.0", "0.16.2", "0.16.1", "0.16.0", "0.15.1", "0.15.0", "0.14.1", "0.14.0", "0.13.0", "0.12.0", "0.11.0", "0.11.0-alpha.0", "0.10.2", "0.10.1", "0.10.0", "0.10.0-alpha.2", "0.10.0-alpha.1", "0.10.0-alpha", "0.9.2", "0.9.1", "0.9.0", "0.8.2", "0.8.1", "0.8.0", "0.7.4", "0.7.3", "0.7.2", "0.7.1", "0.6.2", "0.6.1", "0.6.0", "0.5.1", "0.5.0", "0.4.5", "0.4.4", "0.4.3", "0.4.2", "0.4.1", "0.4.0", "0.3.0", "0.2.0", "0.1.4", "0.1.3", "0.1.2", "0.1.1", "0.1.0", "0.0.7", "0.0.6", "0.0.5", "0.0.4"]
Secure versions: [10.0.0, 10.0.0-alpha.0, 10.0.0-alpha.1, 10.0.0-beta.0, 10.0.0-rc.0, 10.0.0-rc.1, 10.0.0-rc.2, 10.0.1, 10.0.2, 10.0.3, 10.1.0, 9.26.0, 9.27.0, 9.28.0, 9.29.0, 9.30.0, 9.30.1, 9.31.0, 9.32.0, 9.33.0, 9.34.0, 9.35.0, 9.36.0, 9.37.0, 9.38.0, 9.39.0, 9.39.1, 9.39.2, 9.39.3, 9.39.4]
Recommendation: Update to version 10.1.0.