Categories
CVE-2026-48045 medium CVSS 6.5

Vulnerability in zeroconf (CVE-2026-48045)

Summary

Vulnerability in zeroconf (CVE-2026-48045). Risk of unauthorized operations or information disclosure. Exploitable via AsyncListener.handle_query_or_defer. Mitigation: upgrade to 0.149.12 or later.

Original description

The description as published by the source.

Impact

AsyncListener.handle_query_or_defer retained every truncated (TC-bit) incoming query in self._deferred[addr] and armed a per-addr timer in self._timers[addr] that flushed the reassembled query within ~500 ms (RFC 6762 §18.5). Neither the per-addr list nor the number of distinct addr keys was capped, and the dedup check (for incoming in reversed(deferred): if incoming.data == msg.data) ran O(N) over the per-addr list on every arrival.

Any unauthenticated host on the local link (UDP/5353, 224.0.0.251 / ff02::fb) can stream byte-distinct TC-flagged mDNS queries — each up to _MAX_MSG_ABSOLUTE = 8966 bytes, with DNSIncoming retaining the raw data buffer plus parsed-record state. Trivially spoofed source IPs multiply the effect across _deferred / _timers, and the O(N) data compare burns CPU quadratically as each per-addr queue grows. On memory-constrained deployments (Home Assistant on Raspberry-Pi-class hardware is the canonical victim) sustained traffic OOM-kills the process; under lighter load, the per-arrival scan and event-loop scheduler starvation break unrelated zeroconf consumers (discovery, registration, ServiceBrowser callbacks).

Patches

Fixed in zeroconf 0.149.12 (PR #1751). Upgrade to >= 0.149.12.

Workarounds

There is no in-process workaround; upgrading is the fix. Otherwise, restrict mDNS (UDP/5353) to trusted Layer-2 segments via AP client isolation, gu…

Source: GitHub Security Advisories (Global) NVD GitHub Advisory

Auto-generated summary

Assembled by SecPulse from the source data (CVSS, CWE, affected versions) using templates — no AI involved. Check the original description and references below for exact details.

A vulnerability tracked as CVE-2026-48045 has been found in zeroconf.
Attackers can target a specific entry point like AsyncListener.handle_query_or_defer over the network to misuse the product.
Risk of unauthorized operations or information disclosure. CVSS score: 6.5/10.
What to do: upgrade zeroconf to 0.149.12 or later.
If unsure, ask your IT team or search "zeroconf CVE-2026-48045" on the vendor's site.

CVE-2026-48045 (zeroconf) — CWE-400 / CVSS v3 6.5
Attack vector: adjacent-network / unauthenticated / no user interaction
Attack surface: AsyncListener.handle_query_or_defer / addr / DNSIncoming / data
Patched: 0.149.12 — apply immediately
Workaround: There is no in-process workaround; upgrading is the fix.
Plan: 1) Audit SBOM/dependencies, 2) Stage→prod upgrade, 3) Add WAF/proxy monitoring on affected endpoints, 4) Hunt IOCs in logs.
Refs: see the GHSA / vendor advisory / patched release linked on this page.

❓ What is the problem

A vulnerability (CWE-400) exists in zeroconf. Attackers reach the vulnerable code path via AsyncListener.handle_query_or_defer without authentication.

📍 Affected scope

Check the vendor advisory for the affected versions of zeroconf. Attack surface: AsyncListener.handle_query_or_defer / addr / DNSIncoming / data.

🔥 Severity

Severity: Medium (CVSS 6.5/10). Risk of unauthorized operations or information disclosure.

🔧 How to fix

Update to 0.149.12.

🛡️ Workaround

Workaround: There is no in-process workaround; upgrading is the fix.

🔍 Detection

Search webserver/proxy logs for unusual request patterns matching this CVE's known IOCs. Run grep -r 'zeroconf' . against your dependency files (package-lock.json, requirements.txt, go.sum) to find affected services.

Response actions

Concrete steps and command examples for SOC/SRE teams to execute in order

  1. 1
    Identify exposure identify
    grep -r 'zeroconf' . | grep -v node_modules

    リポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で zeroconf を grep し、稼働しているサービス・バージョンを把握する。

  2. 2
    Apply temporary workaround mitigate
    There is no in-process workaround; upgrading is the fix.

    パッチが適用されるまでの応急処置として、There is no in-process workaround; upgrading is the fix. を実施。回避策の副作用 (機能低下) を確認した上で。

  3. 3
    Apply patch patch
    Upgrade zeroconf to 0.149.12

    ステージング環境で 0.149.12 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。

  4. 4
    Post-deployment verification verify
    Confirm patched version is live in production

    パッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。

Affected packages

pip zeroconf
[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.149.12"}]}]
PyPI zeroconf
[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.149.12"}]}]

Fix status by distribution

Fixed packages published by each distribution for this CVE

References

We use cookies for analytics and ad measurement. This setting applies to all Game co., Ltd. sites. Details