CVE-2025-69873
- State
- Published
- Severity
- 2.9 Low
- Published
- Feb 11, 2026
- Updated
- Sep 14, 2026
- Reserved
- Jan 9, 2026
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.
Scores
| CVSS | Score | Vector | Source |
|---|---|---|---|
| 3.1 | 2.9 Low | CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L | mitre |
| 3.1 | 7.5 High | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | CISA-ADP |
| 3.1 | 7.5 High | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | redhat-SADP |
Weaknesses
Affected Products
| Product | Versions |
|---|---|
ajvajv.js |
|
References
- https://github.com/advisories/GHSA-2g4f-4pwh-qvx6
- https://github.com/EthanKim88/ethan-cve-disclosures/blob/main/CVE-2025-69873-ajv-ReDoS.md
- https://github.com/github/advisory-database/pull/6991
- https://github.com/ajv-validator/ajv/pull/2588
- https://github.com/ajv-validator/ajv/releases/tag/v6.14.0
- https://github.com/ajv-validator/ajv/pull/2590
- https://access.redhat.com/security/cve/CVE-2025-69873vdb-entry
- RHBZ#2439070issue-tracking
- https://security.access.redhat.com/data/csaf/v2/vex/2025/cve-2025-69873.json
- https://access.redhat.com/errata/RHSA-2026:33371vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:13512vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:6277vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:16874vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:6309vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:9742vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:6802vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:36651vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:40945vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:40118vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:5807vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:19712vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:15091vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:14774vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:5910vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:5907vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:10093vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:6192vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:41941vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:41944vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:40984vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:7314vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:6568vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:6497vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:6567vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:5168vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:26214vendor-advisory
- https://access.redhat.com/errata/RHSA-2026:26211vendor-advisory
Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.