CVE-2025-69873: CWE-1333 Inefficient Regular Expression Complexity in ajv.js ajv
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.
AI Analysis
Technical Summary
CVE-2025-69873 describes a ReDoS vulnerability in ajv before version 8.18.0 when the $data option is enabled. The pattern keyword in JSON schema validation accepts dynamic data via JSON Pointer syntax, which is passed unchecked to the JavaScript RegExp() constructor. An attacker can exploit this by injecting a malicious regex pattern that triggers catastrophic backtracking, causing significant CPU resource consumption and denial of service. The vulnerability requires the $data option to be enabled and the ability to supply crafted input. The vulnerability has been assigned a CVSS v3 score of 7.5 by Red Hat, indicating important severity, although other sources list it as low severity. The vulnerability is fixed in ajv version 8.18.0.
Potential Impact
An attacker able to supply a malicious regular expression pattern when the $data option is enabled can cause the application to become unresponsive due to excessive CPU consumption, resulting in a denial of service. The attack requires the ability to send crafted input to the application using ajv with $data: true. The impact is limited to availability with no confidentiality or integrity impact. The vulnerability can cause prolonged CPU blocking with relatively small payloads.
Mitigation Recommendations
A fix is available in ajv version 8.18.0. Users should upgrade to this or a later version to remediate the vulnerability. If upgrading is not immediately possible, the vendor advisory recommends disabling the $data feature if it is not required. If $data must be used, strict validation of input fields referenced by the pattern keyword should be implemented to ensure only expected and safe characters are accepted.
CVE-2025-69873: CWE-1333 Inefficient Regular Expression Complexity in ajv.js ajv
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.
CVSS v3.1
Score 2.9low
Affected software
ajv.js
ajv
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
CVE-2025-69873 describes a ReDoS vulnerability in ajv before version 8.18.0 when the $data option is enabled. The pattern keyword in JSON schema validation accepts dynamic data via JSON Pointer syntax, which is passed unchecked to the JavaScript RegExp() constructor. An attacker can exploit this by injecting a malicious regex pattern that triggers catastrophic backtracking, causing significant CPU resource consumption and denial of service. The vulnerability requires the $data option to be enabled and the ability to supply crafted input. The vulnerability has been assigned a CVSS v3 score of 7.5 by Red Hat, indicating important severity, although other sources list it as low severity. The vulnerability is fixed in ajv version 8.18.0.
Potential Impact
An attacker able to supply a malicious regular expression pattern when the $data option is enabled can cause the application to become unresponsive due to excessive CPU consumption, resulting in a denial of service. The attack requires the ability to send crafted input to the application using ajv with $data: true. The impact is limited to availability with no confidentiality or integrity impact. The vulnerability can cause prolonged CPU blocking with relatively small payloads.
Mitigation Recommendations
A fix is available in ajv version 8.18.0. Users should upgrade to this or a later version to remediate the vulnerability. If upgrading is not immediately possible, the vendor advisory recommends disabling the $data feature if it is not required. If $data must be used, strict validation of input fields referenced by the pattern keyword should be implemented to ensure only expected and safe characters are accepted.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- mitre
- Date Reserved
- 2026-01-09T00:00:00.000Z
- State
- PUBLISHED
- Vendor Advisory Urls
- [{"url":"https://access.redhat.com/security/cve/CVE-2025-69873","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:13512","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:6277","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:16874","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:6309","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:9742","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:6802","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:5807","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:19712","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:15091","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:14774","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:5910","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:5907","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:10093","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:6192","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:7314","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:6568","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:6497","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:6567","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:5168","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:26214","vendor":"Red Hat"},{"url":"https://access.redhat.com/errata/RHSA-2026:26211","vendor":"Red Hat"}]
Threat ID: 698cce794b57a58fa1b3e299
Added to database: 02/11/2026, 18:46:17 UTC
Last enriched: 08/17/2026, 13:11:59 UTC
Last updated: 09/10/2026, 22:12:33 UTC
Views: 864
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.