Courier IMAP before 6.0.1 and Courier Mail Server before 2.0.2 allow authenticated IMAP users to crash the imapd process via deeply nested parenthesized SEARCH queries. The SEARCH command parser (alloc_search_key in searchinfo.C) recursively descends on nested parenthesized groups through a mutual recursion chain with alloc_search_andlist() and alloc_search_notkey(), with no depth limit. Courier IMAP has no overall command line length limit, making exploitation trivial. A single IMAP command with ~2500 nested parentheses overflows the 8MB default stack, causing SIGSEGV.
https://packages.debian.org/sid/courier-imap
https://github.com/svarshavchik/courier/releases/tag/courier-imap%2F6.0.1%2F20260627214444
https://github.com/svarshavchik/courier/releases/tag/courier%2F2.0.2%2F20260627214309
https://github.com/svarshavchik/courier-libs/commit/b5b5581aabea3efadf5e2944947ff0214aa3533e
Published: 2026-07-29
Updated: 2026-07-29
Base Score: 6.8
Vector: CVSS2#AV:N/AC:L/Au:S/C:N/I:N/A:C
Severity: Medium
Base Score: 6.5
Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Severity: Medium
Base Score: 7.1
Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Severity: High