CVE-2026-106454 · GHSA-8pqf-f4m5-798g
Twisted: IMAP wildcardToRegexp() ReDoS
- Risk score
- 41/100
- CVSS
- 4.3 v3.1
- Exploit chance (30 days)
- 0.3%
- Published
- 6 Oct 2026
Open in the live forecast Today's forecast
What to know
- What it is
- Twisted is an event-based framework for internet applications, supporting Python 3.6+. In 25.5.0 and earlier, wildcardToRegexp() in twisted/mail/imap4.py translates the IMAP asterisk and percent wildcards but passes all other characters from an authenticated client's LIST or LSUB pattern directly to re.compile(), allo…
- Affected
- Twisted (pip) <= 26.4.0
- Fix
- No patched version listed yet: check the advisory for mitigations.
- Exploitation
- Public proof of concept
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-106454: IMAP wildcardToRegexp() ReDoS (CVSS 4.3 · EPSS 0%)
- 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-115776: Unauthenticated Remote Denial of Service in the Twisted IRC Server via an Unbounded Line Buffer (CVSS 7.5 · 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%)
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
- Public proof of concept
Connects to
- Same weakness: CWE-1333 (CWE-1333). 43 other warnings in 30 days
Why it is Yellow
- CVSS 4.3 medium
- Public exploit or proof of concept referenced
- On your watchlist: PyPI
Affected packages
| Package | Ecosystem | Vulnerable | Fixed in |
|---|---|---|---|
| Twisted | pip | <= 26.4.0 | No fix yet |
References
- https://github.com/advisories/GHSA-8pqf-f4m5-798g
- https://github.com/twisted/twisted/security/advisories/GHSA-8pqf-f4m5-798g
- https://nvd.nist.gov/vuln/detail/CVE-2026-106454
- https://github.com/twisted/twisted/pull/12788
- https://github.com/twisted/twisted/commit/2f8a3c29246f4eb324690e06a9767a11dc4aec9f
- https://github.com/advisories/GHSA-8pqf-f4m5-798g
Original description
Twisted is an event-based framework for internet applications, supporting Python 3.6+. In 25.5.0 and earlier, wildcardToRegexp() in twisted/mail/imap4.py translates the IMAP asterisk and percent wildcards but passes all other characters from an authenticated client's LIST or LSUB pattern directly to re.compile(), allowing nested or otherwise expensive regular expression constructs to cause catastrophic backtracking when matched against mailbox names. Because Twisted uses a cooperative single-threaded reactor, the blocking match suspends all server input and output for the duration of the match. No fixed release is available as of this review.
Last activity 6 Oct 2026. Patch Forecast updates every hour.