CVE-2026-97206

DNS-over-QUIC (DoQ) path-migration can lead to use-after-free on multi-threaded deployments.

High 7.5

NLnet Labs Unbound, 1.22.0 up to and including version 1.26.1, contains a DNS-over-QUIC (DoQ) lifetime bug reachable by a remote DoQ client under multi-threaded operation. A client-triggered QUIC path migration can enter stream/connection cleanup while a mesh reply still retains a pointer to the DoQ stream. Cleanup frees the DoQ stream and when the pending mesh reply later completes it dereferences a stale pointer leading to a crash.

Assigner
NLnet Labs
Published
2026-10-21
Updated
2026-10-21
Reserved
2026-10-14

Scores

SourceCVSSScoreSeverityVector
NLnet Labs3.17.5HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Weaknesses

Affected

VendorProductVersions
NLnet Labs Unbound 1.22.0 to < 1.26.2 (affected)
others: unaffected

References

Full CVE JSON record (5.2)

API · GitHub · cve.org

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Unbound",
          "vendor": "NLnet Labs",
          "versions": [
            {
              "lessThan": "1.26.2",
              "status": "affected",
              "version": "1.22.0",
              "versionType": "semver"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "finder",
          "value": "Kunta Chu (Tsinghua University)"
        },
        {
          "lang": "en",
          "type": "finder",
          "value": "Jianjun Chen (Tsinghua University)"
        }
      ],
      "datePublic": "2026-10-21T00:00:00.000Z",
      "descriptions": [
        {
          "lang": "en",
          "value": "NLnet Labs Unbound, 1.22.0 up to and including version 1.26.1, contains a DNS-over-QUIC (DoQ) lifetime bug reachable by a remote DoQ client under multi-threaded operation. A client-triggered QUIC path migration can enter stream/connection cleanup while a mesh reply still retains a pointer to the DoQ stream. Cleanup frees the DoQ stream and when the pending mesh reply later completes it dereferences a stale pointer leading to a crash."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.5,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
            "version": "3.1"
          },
          "format": "CVSS",
          "scenarios": [
            {
              "lang": "en",
              "value": "compiled with DNS-over-QUIC support"
            }
          ]
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-416",
              "description": "CWE-416: Use After Free",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-21T08:57:41.106Z",
        "orgId": "206fc3a0-e175-490b-9eaa-a5738056c9f6",
        "shortName": "NLnet Labs"
      },
      "references": [
        {
          "tags": [
            "vendor-advisory"
          ],
          "url": "https://www.nlnetlabs.nl/downloads/unbound/CVE-2026-97206.txt"
        }
      ],
      "solutions": [
        {
          "lang": "en",
          "value": "This issue is fixed starting with version 1.26.2"
        }
      ],
      "timeline": [
        {
          "lang": "en",
          "time": "2026-09-20T00:00:00.000Z",
          "value": "Issue reported by Kunta Chu"
        },
        {
          "lang": "en",
          "time": "2026-09-29T00:00:00.000Z",
          "value": "NLnet Labs shares patch"
        },
        {
          "lang": "en",
          "time": "2026-09-30T00:00:00.000Z",
          "value": "Kunta Chu verifies patch"
        },
        {
          "lang": "en",
          "time": "2026-10-21T00:00:00.000Z",
          "value": "Fixes released with version 1.26.2"
        }
      ],
      "title": "DNS-over-QUIC (DoQ) path-migration can lead to use-after-free on multi-threaded deployments.",
      "x_generator": {
        "engine": "cvelib 1.8.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "206fc3a0-e175-490b-9eaa-a5738056c9f6",
    "assignerShortName": "NLnet Labs",
    "cveId": "CVE-2026-97206",
    "datePublished": "2026-10-21T08:57:41.106Z",
    "dateReserved": "2026-10-14T09:16:14.090Z",
    "dateUpdated": "2026-10-21T08:57:41.106Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}