Description
Twisted is an event-based framework for internet applications, supporting Python 3.6+. Prior to 26.10.0rc1, twisted.names.dns.DNSDatagramProtocol accepts a UDP DNS response for a pending query when its 16-bit transaction ID matches but does not verify that the response came from the queried host and port. An attacker able to deliver a packet to the resolver's listening port with the correct transaction ID can inject a forged answer. The standard twisted.names.client.Resolver uses a new random source port for each query, increasing off-path attack complexity, while applications that reuse a DNSDatagramProtocol instance expose only the transaction-ID search space after the first query. A successful forgery can redirect hostname resolution and enable mail interception, server-side request forgery, or man-in-the-middle positioning. This issue is fixed in version 26.10.0rc1.
Published: 2026-10-23
Score: 3.1 Low
EPSS: n/a
KEV: No
Impact: DNS Response Spoofing
Action: Patch
AI Analysis

Impact

Twisted, an event‑driven Python framework, allowed an attacker to deliver a forged UDP DNS response that matched a pending query’s transaction ID but came from an arbitrary source address because the framework did not validate the source host and port. The resultant injection could alter hostname resolution, leading to mail interception, server‑side request forgery, or man‑in‑the‑middle attacks. This weakness manifests as a DNS response spoofing flaw in twisted.names.dns.DNSDatagramProtocol.

Affected Systems

The vulnerability exists in all Twisted releases prior to version 26.10.0rc1. Applications using twisted.names or the broader Twisted framework that rely on DNSDatagramProtocol for DNS resolution are affected.

Risk and Exploitability

The listed CVSS score of 3.1 indicates low severity. The EPSS score is not available, and the vulnerability is not yet in the CISA KEV catalog. However, because the flaw can be exploited remotely over standard DNS traffic, the potential impact on applications that reuse the DNSDatagramProtocol instance is significant. The likely attack vector is an off‑path attacker crafting a DNS response that matches a transaction ID, which is more difficult when using a new random source port per query, but still feasible. Given the absence of source address validation, the attack is relatively simple once the correct ID is guessed.

Generated by OpenCVE AI on October 23, 2026 at 21:32 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Twisted to version 26.10.0rc1 or newer to apply the vendor‑provided fix for source address validation in DNSDatagramProtocol.
  • If upgrade is not immediately possible, restrict use of DNSDatagramProtocol to a single resolver instance or switch to twisted.names.client.Resolver, which randomizes the source port for each query and raises the attacker’s effort to spoof a response.
  • Apply network‐level controls such as firewall rules or DNSSEC enforcement to mitigate the risk of forged DNS responses if a patch cannot be applied promptly.

Generated by OpenCVE AI on October 23, 2026 at 21:32 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 24 Oct 2026 00:30:00 +0000

Type Values Removed Values Added
References
Metrics threat_severity

None

threat_severity

Low


Fri, 23 Oct 2026 23:15:00 +0000

Type Values Removed Values Added
First Time appeared Twisted
Twisted twisted
Vendors & Products Twisted
Twisted twisted

Fri, 23 Oct 2026 20:45:00 +0000

Type Values Removed Values Added
Description Twisted is an event-based framework for internet applications, supporting Python 3.6+. Prior to 26.10.0rc1, twisted.names.dns.DNSDatagramProtocol accepts a UDP DNS response for a pending query when its 16-bit transaction ID matches but does not verify that the response came from the queried host and port. An attacker able to deliver a packet to the resolver's listening port with the correct transaction ID can inject a forged answer. The standard twisted.names.client.Resolver uses a new random source port for each query, increasing off-path attack complexity, while applications that reuse a DNSDatagramProtocol instance expose only the transaction-ID search space after the first query. A successful forgery can redirect hostname resolution and enable mail interception, server-side request forgery, or man-in-the-middle positioning. This issue is fixed in version 26.10.0rc1.
Title Twisted: DNS Response Spoofing in twisted.names Due to Missing Source Address Validation
Weaknesses CWE-346
References
Metrics cvssV3_1

{'score': 3.1, 'vector': 'CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-23T20:21:54.364Z

Reserved: 2026-08-31T23:04:48.173Z

Link: CVE-2026-83813

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-23T21:17:25.287

Modified: 2026-10-23T21:17:25.287

Link: CVE-2026-83813

cve-icon Redhat

Severity : Low

Publid Date: 2026-10-23T20:21:54Z

Links: CVE-2026-83813 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-23T23:00:13Z

Weaknesses