On Fri, 25 Nov 2005, Mark Crispin wrote:

I routinely keep 5000 messages in my inbox which causes a bit of a stir when I open it (although I only use pine, not imapd). If you don't want the intensive load, then set process limits. (consult the manual for your particular OS). Since it's only a LIST, it's non-destructive if the process is terminated during it. (albeit, if you're limiting on total CPU time it's possible that you could cross over that threshhold sometime AFTER the LIST).

The only way I see this as a potential DOS is if there are other services which shut themselves down under high load (sendmail springs to mind).

-Dan

In general, it is more helpful to send a report of claimed vulnerabilities to the developer privately, prior to a public announcement. It is also helpful to avoid public announcements during national holidays in the developer's country; November 24 and 25 are national holidays in the USA.

I have examined your report, and have reproduced the CPU-intensive LIST operation. However, I do not see how this is a "vulnerability".

The problem has nothing to do with "%" in the mailbox name, or the "%s" combination. It's the sheer number of wildcards in the pattern.

I've been running this LIST for a few hours now. It's quite amusing. The server is progressing in the pattern-matching algorithm on the strings in question.

The problem is that the pattern-matching algorithm makes no attempt to optimize large numbers of wildcards (it's effectively doing a very large "Towers of Hanoi") or cancel out cases where the non-wildcard part of the search pattern is longer than the candidate string.

There is no "%s" sprintf() issue, or other buffer overflow or improper memory access, that I can see. The system running this CPU-consuming imapd process is otherwise running smoothly with no noticable delays. The schedulers in most operating systems do not allow CPU-intensive tasks to have a substantial impact on the performance of interactive tasks. The imapd is not consuming much memory either.

Consequently, as far as I can tell, the principal impact is to the imapd session doing the ridiculous wildcard.

If the above is a correct description of the issue, then I do not consider it to be a vulnerability, much less a "high risk" vulnerability. It does not appear to:
. allow access to unauthorizated areas of the system
. allow execution of arbitrary code
. substantially impact system performance

Have I missed something?  If so, please tell me what it is.

I would certainly reconsider my response in light of additional information.

As a practical matter, it may be worthwhile to add a limitation on the number of wildcards permitted to something that can be solved in a reasonable amount of time.

-- Mark --

http://panda.com/mrc
Democracy is two wolves and a sheep deciding what to eat for lunch.
Liberty is a well-armed sheep contesting the vote.
_______________________________________________
Imap-uw mailing list
[email protected]
https://mailman1.u.washington.edu/mailman/listinfo/imap-uw


--

"It's buttery kettle ASS corn!"

-Dan Mahoney, Ezzi Computers, 10/22/03, 2AM

--------Dan Mahoney--------
Techie,  Sysadmin,  WebGeek
Gushi on efnet/undernet IRC
ICQ: 13735144   AIM: LarpGM
Site:  http://www.gushi.org
---------------------------

_______________________________________________
Imap-uw mailing list
[email protected]
https://mailman1.u.washington.edu/mailman/listinfo/imap-uw

Reply via email to