CVEvulnerability
CVE-2025-69873
2.9 LOW
Official page ↗
- Status
- Deferred
- Published
- 2026-02-11
- Last modified
- 2026-09-10
- Assigner
- [email protected]
- CVSS 3.1 ([email protected])
- 2.9 LOW — CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
- CVSS 3.1 (134c704f-9b21-4f2e-91b3-4a467353bcc0)
- 7.5 HIGH — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- CVSS 3.1 (0b0ca135-0b70-47e7-9f44-1890c2a1c46c)
- 7.5 HIGH — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- Weaknesses
- CWE-1333, CWE-400
Description
ajv (Another JSON Schema Validator) before 8.18.0 is vulnerable to Regular Expression Denial of Service (ReDoS) when the $data option is enabled. The pattern keyword accepts runtime data via JSON Pointer syntax ($data reference), which is passed directly to the JavaScript RegExp() constructor without validation. An attacker can inject a malicious regex pattern (e.g., "^(a|a)*$") combined with crafted input to cause catastrophic backtracking. A 31-character payload causes approximately 44 seconds of CPU blocking, with each additional character doubling execution time. This enables complete denial of service with a single HTTP request against any API using ajv with $data: true for dynamic schema validation. This issue is also fixed in version 6.14.0.
Related
References
- https://github.com/EthanKim88/ethan-cve-disclosures/blob/main/CVE-2025-69873-ajv-ReDoS.md github.com
- https://github.com/advisories/GHSA-2g4f-4pwh-qvx6 github.com
- https://github.com/ajv-validator/ajv/pull/2588 github.com
- https://github.com/ajv-validator/ajv/pull/2590 github.com
- https://github.com/ajv-validator/ajv/releases/tag/v6.14.0 github.com
- https://github.com/github/advisory-database/pull/6991 github.com
- https://access.redhat.com/errata/RHSA-2026:10093 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:13512 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:14774 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:15091 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:16874 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:19712 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:26211 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:26214 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:33371 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:36651 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:40118 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:40945 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:40984 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:41941 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:41944 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:5168 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:5807 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:5907 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:5910 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:6192 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:6277 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:6309 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:6497 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:6567 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:6568 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:6802 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:7314 access.redhat.com
- https://access.redhat.com/errata/RHSA-2026:9742 access.redhat.com
- https://access.redhat.com/security/cve/CVE-2025-69873 access.redhat.com
- https://bugzilla.redhat.com/show_bug.cgi?id=2439070 bugzilla.redhat.com
- https://security.access.redhat.com/data/csaf/v2/vex/2025/cve-2025-69873.json security.access.redhat.com