CVE-2026-115776 · GHSA-53xc-49m8-p798
Twisted: Unauthenticated Remote Denial of Service in the Twisted IRC Server via an Unbounded Line Buffer
- Risk score
- 66/100
- CVSS
- 7.5 v3.1
- Exploit chance (30 days)
- 0.7%
- Published
- 23 Oct 2026
Open in the live forecast Today's forecast
What to know
- What it is
- A vulnerability in Twisted's IRC server allows an unauthenticated remote denial of service via an unbounded line buffer. An attacker could continuously grow the buffer until the server runs out of memory.
- Affected
- {'products': ['Twisted'], 'packages': ['Twisted'], 'versions': ['<= 26.4.0']}
- Fix
- Upgrade to version 26.10.0rc1 or later
- Exploitation
- No known exploitation
Story map
At a glance
Twisted: Amber, patch this week. Twisted has a vulnerability in its XML parser that allows an unauthenticated remote peer to cause a denial of service by continuously adding child elements to an in-memory tree, exhausting server memory and terminating the process.
The flaws
- CVE-2026-115776: Unauthenticated Remote Denial of Service in the Twisted IRC Server via an Unbounded Line Buffer (CVSS 7.5 · EPSS 1%)
- CVE-2026-115775: Unauthenticated Remote Denial of Service in the Twisted words domish XML Element Stream via an Unbounded Element Tree (CVSS 8.7 · EPSS 1%)
- CVE-2026-115778: Unauthenticated Remote Denial of Service in the Twisted conch Telnet Transport via an Unbounded Subnegotiation Buffer (CVSS 7.5 · EPSS 1%)
- CVE-2026-115774: Denial of Service in the Twisted IMAP4 Server via a Negative Literal Size in SEARCH (CVSS 4.9 · EPSS 1%)
The fix
Upgrade Twisted: 26.10.0 or later on your release line
Who is exposed: {'products': ['Twisted'], 'packages': ['Twisted'], 'versions': ['<= 26.4.0']}
Where it stands
- No known exploitation
Connects to
- Same weakness: Denial of service (CWE-400). 250 other warnings in 30 days
Why it is Amber
- CVSS 7.5 high
- Remotely exploitable without logging in
- On your watchlist: PyPI
Affected packages
| Package | Ecosystem | Vulnerable | Fixed in |
|---|---|---|---|
| Twisted | pip | <= 26.4.0 | 26.10.0rc1 |
References
- https://github.com/advisories/GHSA-53xc-49m8-p798
- https://github.com/twisted/twisted/security/advisories/GHSA-53xc-49m8-p798
- https://github.com/twisted/twisted/pull/12771
- https://github.com/twisted/twisted/commit/01f8cff7753c1edac132380b2ea939fa6bdbab30
- https://github.com/twisted/twisted/commit/ac90fb7b0ab73688a581fcd9a7c0577ec8ca3059
- https://github.com/twisted/twisted/releases/tag/twisted-26.10.0rc1
- https://github.com/advisories/GHSA-53xc-49m8-p798
Original description
Twisted is an event-based framework for internet applications, supporting Python 3.6+. Prior to 26.10.0rc1, twisted.words.protocols.irc.IRC.dataReceived retains all bytes received without a line feed in its per-connection buffer and applies no maximum line length. The twisted.words.service.IRCUser server subclass inherits this behavior, and buffering occurs before PASS, NICK, or USER authentication commands. An unauthenticated connection can continuously grow the buffer until the shared server process runs out of memory and drops all users. This issue is fixed in version 26.10.0rc1.
Last activity 23 Oct 2026. Patch Forecast updates every hour.