CVE-2026-106454
published 2026-10-06CVE-2026-106454: 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…
PriorityP422medium4.3CVSS 3.1
AVNACLPRLUINSUCNINAL
EPSS
0.33%
24.6th percentile
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.
Affected
15 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| ansible-automation-platform-24 | controller-rhel8 | — | — |
| ansible-automation-platform-24 | eda-controller-rhel8 | — | — |
| ansible-automation-platform-25 | controller-rhel8 | — | — |
| ansible-automation-platform-25 | eda-controller-rhel8 | — | — |
| ansible-automation-platform-25 | lightspeed-rhel8 | — | — |
| ansible-automation-platform-26 | controller-rhel9 | — | — |
| ansible-automation-platform-26 | eda-controller-rhel9 | — | — |
| ansible-automation-platform-26 | lightspeed-rhel9 | — | — |
| ansible-automation-platform-27 | controller-rhel9 | — | — |
| ansible-automation-platform-27 | eda-controller-rhel9 | — | — |
| ansible-automation-platform-27 | lightspeed-rhel9 | — | — |
| openshift4 | ose-kuryr-cni-rhel8 | — | — |
| openshift4 | ose-kuryr-controller-rhel8 | — | — |
| twisted | twisted | <= 25.5.0 | — |
| twisted | twisted | 0 – 25.5.0 | — |
CVSS provenance
nvdv3.14.3MEDIUMCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
vendor_redhat4.3MEDIUM
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
Red Hat
twisted: Twisted: Denial of Service via regular expression backtracking in IMAP search patterns
vendor_redhat·2026-10-06·CVSS 4.3
CVE-2026-106454 [MEDIUM] CWE-1333 twisted: Twisted: Denial of Service via regular expression backtracking in IMAP search patterns
twisted: Twisted: Denial of Service via regular expression backtracking in IMAP search patterns
A flaw was found in Twisted. An authenticated remote attacker can cause a Denial of Service (DoS) by submitting specially crafted mailbox search queries using Internet Message Access Protocol (IMAP) commands such as LIST or LSUB. Because the server fails to properly sanitize these search patterns before compiling them, complex patterns can trigger excessive processing delays known as regular expression catastrophic backtracking. Due to the framework's single-threaded event loop, this blocking operation halts all server traffic, rendering the application unresponsive to other clients.
Package: ansible-automation-platform-24/controller-rhel8 (Red Hat Ansible Automation Platform 2) - Out of suppo
GHSA
Twisted: IMAP wildcardToRegexp() ReDoS
ghsa·2026-10-07
CVE-2026-106454 [MEDIUM] CWE-1333 Twisted: IMAP wildcardToRegexp() ReDoS
Twisted: IMAP wildcardToRegexp() ReDoS
### Summary
`wildcardToRegexp()` in `twisted/mail/imap4.py` converts IMAP LIST/LSUB wildcard patterns to Python regular expressions. It substitutes the two IMAP wildcards (`*` → `(?:.*?)` and `%` → `(?:(?:[^\\/])*?)`) but passes every other character through unchanged to `re.compile()`. This means that an authenticated IMAP client can send a quoted pattern string containing arbitrary regex syntax - including catastrophic-backtracking constructs such as `(a+)+z`.
Because Twisted runs a cooperative, single-threaded reactor, a blocking regex match freezes **all** I/O on the server for the duration of the match.
---
## Vulnerable Code
### `twisted/mail/imap4.py`
```python
# line 4595
def wildcardToRegexp(wildcard, delim=None):
wildcard = wildcard.re
No detection rules found.
No public exploits indexed.
2026-10-06
Published