GitHub Advisoryadvisory · RubyGems

GHSA-xh69-987w-hrp8 resolv vulnerable to DoS via insufficient DNS domain name length validation

MEDIUM Published 2025-07-15 Modified 2025-07-15 Official page ↗
Aliases
CVE-2025-24294
Ecosystem
RubyGems
Packages
resolv
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weaknesses
CWE-1284, CWE-400
Reviewed
2025-07-15

Affected packages

• RubyGems resolv: < 0.2.3 → fixed in 0.2.3 • RubyGems resolv: >= 0.4.0, < 0.6.2 → fixed in 0.6.2 • RubyGems resolv: >= 0.3.0, < 0.3.1 → fixed in 0.3.1

Description

A denial of service vulnerability has been discovered in the resolv gem bundled with Ruby. Details The vulnerability is caused by an insufficient check on the length of a decompressed domain name within a DNS packet. An attacker can craft a malicious DNS packet containing a highly compressed domain name. When the resolv library parses such a packet, the name decompression process consumes a large amount of CPU resources, as the library does not limit the resulting length of the name. This resource consumption can cause the application thread to become unresponsive, resulting in a Denial of Service condition. Affected Version The vulnerability affects the resolv gem bundled with the following Ruby series: • Ruby 3.2 series: resolv version 0.2.2 and earlier • Ruby 3.3 series: resolv version 0.3.0 • Ruby 3.4 series: resolv version 0.6.1 and earlier Credits Thanks to Manu for discovering this issue. History Originally published at 2025-07-08 07:00:00 (UTC)

Related

Alias · CVE (1)

  • CVE-2025-24294 The attack vector is a potential Denial of Service (DoS). vulnerability

Weakness · CWE (2)

  • CWE-1284 Improper Validation of Specified Quantity in Input weakness
  • CWE-400 Uncontrolled Resource Consumption weakness

References