A buffer overflow vulnerability has been found in the WU-IMAP daemon and can be used to remotely execute code via malformed requests. An account is necessary to exploit this overflow.
4eab3d4451f2286911c7ccb083a73a3343426075027dd2069efebe1bf2bfc3c9
('binary' encoding is not supported, stored as-is) 10.05.2002
SECURITY BUG REPORT
Affected version:
* WU-IMAP 2000.283 default install
* WU-IMAP 2000.284 default install
* WU-IMAP 2000.287 default install
* WU-IMAP 2001.315 compiled with RFC 1730 support
Overview:
Wu-imapd is an easy to set-up IMAP daemon created and
distributed by Washington University. Malicious user is able
to construct a malformed request which will overflow an
internal buffer, and run code on the server with uid/gid of
the e-mail owner. The vulnerability mainly affects free
e-mail providers/mail servers where the user has no shell
access to the system.
Description:
The bug in imapd.c code leads to internal buffer overflow.
It may happen when the user ask for fetching partial mailbox
attributes.
request will cause server to SIG11 : A0666 PARTIAL 1
BODY[AAA...1052bytes..AAA] 1 1
imapd.c
-------
int main (int argc,char *argv[])
{
unsigned long i,uid;
long f;
char *s,*t,*u,*v,tmp[MAILTMPLEN];
.
.
.
else if (!strncmp (t,"BODY[",5) && (v = strchr(t+5,']')) &&
!v[1]){
strncpy (tmp,t+5,i = v - (t+5));
.
.
.
else if (!strncmp (t,"BODY.PEEK[",10) &&
(v = strchr (t+10,']')) && !v[1]) {
strncpy (tmp,t+10,i = v - (t+10));
.
.
.
-------
The bug is very similar to the one found in Kerberos4 ftp
client. No bound check prior moving user supplied data.
Since the attacker overwrites the server's main stack,
overflow will occur when the user logs out.
Marcell Fodor
-------------
e-mail: m.fodor@mail.datanet.hu
web: http://mantra.freeweb.hu