Zeroconf is a pure Python implementation of multicast DNS service discovery. Prior to 0.149.12, AsyncListener.handle_query_or_defer retained every truncated TC-bit incoming query, each up to _MAX_MSG_ABSOLUTE = 8966 bytes, in self._deferred[addr] and armed a per-address timer in self._timers[addr] without capping the per-address list or distinct addr keys, allowing unauthenticated hosts on the local link over UDP/5353 (224.0.0.251 / ff02::fb) to spoof sources, grow _deferred and _timers, and cause memory exhaustion and quadratic CPU burn. This issue is fixed in version 0.149.12.
References
| Link | Resource |
|---|---|
| https://github.com/python-zeroconf/python-zeroconf/commit/b22c8ff19c66c68907d220a4823c0950f4fa93f7 | Patch |
| https://github.com/python-zeroconf/python-zeroconf/pull/1751 | Issue Tracking Patch |
| https://github.com/python-zeroconf/python-zeroconf/releases/tag/0.149.12 | Release Notes |
| https://github.com/python-zeroconf/python-zeroconf/security/advisories/GHSA-9663-mqmp-p9mm | Vendor Advisory Patch |
Configurations
History
No history.
Information
Published : 2026-07-17 19:17
Updated : 2026-08-17 20:03
NVD link : CVE-2026-48045
Mitre link : CVE-2026-48045
CVE.ORG link : CVE-2026-48045
JSON object : View
Products Affected
paulsm
- zeroconf
CWE
CWE-770
Allocation of Resources Without Limits or Throttling
