GHSA-vvf4-9x63-8xvvHighCVSS 7.5

dnspython has excessive memory and CPU use

Published
November 13, 2026
Last Modified
November 13, 2026

🔗 CVE IDs covered (1)

📋 Description

Summary

A maliciously crafted zone file could use a WKS record to consume excessive memory and CPU, possibly causing the process to exit due to memory exhaustion.

Details

The from_text() parser does not check that a WKS record service number is between 0 and 65535 inclusive. It then uses this number to resize the bitmap to accommodate a bit with that offset. This can cause extremely large memory allocations, and also extends the array very inefficiently, wasting CPU.

Proof of concept

This demonstrates the failure to limit the service number, though with a value that does not cause excessive memory or CPU consumption.

rd = dns.rdata.from_text("IN", "WKS", "10.0.0.1 udp 65536")

Impact

If dnspython is used to read zonefile format where the attacker can control the type and rdata text, the program may consume excessive memory or CPU, denying service.

🎯 Affected products1

  • pip/dnspython:< 2.9.2

🔗 References (5)