GHSA-mmwx-rj87-vfgr: DNSJava affected by KeyTrap - NSEC3 closest encloser proof can exhaust CPU resources
6.5
CVSS Score
3.1
Basic Information
CVE ID
-
GHSA ID
EPSS Score
-
CWE
Published
7/22/2024
Updated
11/18/2024
KEV Status
No
Technology
Java
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
dnsjava:dnsjava | maven | >= 3.5.0, < 3.6.0 | 3.6.0 |
org.jitsi:dnssecjava | maven | <= 2.0.0 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from uncontrolled resource consumption during NSEC3 validation. Key functions in NSEC3ValUtils.java handled DNSSEC proofs without limiting cryptographic computations. The commit adds: 1) MAX_NSEC3_CALCULATIONS constant, 2) Nsec3ValidationState tracking, and 3) early termination checks. These changes directly address the KeyTrap vulnerability by constraining SHA-1 iterations during NSEC3 closest encloser proof validation.