CVE-2026-48045: python-zeroconf denial of service via unbounded TC-deferred queue

CVE-2026-48045 · Severity: medium · CVSS 6.5 · Published 2026-07-17

The python-zeroconf library, used for automatic device discovery on local networks, is vulnerable to a denial-of-service attack. An attacker on the same local network can send a flood of specially crafted network traffic that causes the application to consume excessive memory and processor power. This can lead to the application crashing or becoming completely unresponsive, disrupting services that rely on automatic network discovery.

Technologies: zeroconf (PyPI). Vendors: PyPI.

Quick answers

Is CVE-2026-48045 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-48045 being exploited in the wild.
How severe is CVE-2026-48045?
Medium severity, with a CVSS score of 6.5, published 17 July 2026.
Which products and versions are affected?
zeroconf (PyPI) < 0.149.12, ECOSYSTEM:introduced=0,fixed=0.149.12.
Is there a fix for CVE-2026-48045?
Yes. zeroconf (PyPI): upgrade to 0.149.12 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-48045 attacked?
It is attacked from the adjacent network, in a software library.
Am I affected by CVE-2026-48045?
Check whether you run zeroconf (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • zeroconf (PyPI): upgrade to 0.149.12 or later
    pip install "zeroconf>=0.149.12"

Technical details

A resource exhaustion vulnerability (CWE-770) exists in the AsyncListener.handle_query_or_defer component of python-zeroconf. The implementation failed to cap the number of deferred truncated (TC-bit) queries stored in memory or the number of distinct source addresses tracked. An attacker on the local link (UDP/5353) can send a stream of byte-distinct TC-flagged queries with spoofed source IPs to grow internal dictionaries (_deferred and _timers) without limit. This results in memory exhaustion (OOM) and quadratic CPU burn during the O(N) deduplication scan of the deferred list. The issue is resolved in version 0.149.12 by implementing per-address and total-address caps with FIFO eviction.

Affected products

  • python-zeroconf python-zeroconf < 0.149.12

Identifiers

  • CVE-2026-48045
  • GHSA-9663-mqmp-p9mm
  • PYSEC-2026-3435

Timeline

  • 2026-05-20: patched: Fix committed and version 0.149.12 released.
  • 2026-05-21: advisory: GitHub Security Advisory GHSA-9663-mqmp-p9mm published.
  • 2026-07-17: disclosed: CVE-2026-48045 published to NVD.

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.