lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date: Wed, 11 Feb 2004 15:21:14 +0100
From: Thomas Roessler <roessler@...s-not-exist.org>
To: BUGTRAQ@...urityfocus.com
Subject: Mutt-1.4.2 fixes buffer overflow.

Mutt-1.4.2 has just been released; this version fixes a buffer
overflow that can be triggered by incoming messages.  There are
reports about spam that has actually triggered this problem and
crashed mutt.

It is recommended that users of mutt versions prior to 1.4.2 upgrade
to this version, or apply the patch included below.

Users of "unstable" mutt versions after 1.3.28 (including 1.5.*) do
not need to upgrade, as this problem had been fixed in the unstable
branch in February 2002; unfortunately, the fix was not backported
before 1.4 was released.


mutt-1.4.2 can be found at ftp://ftp.mutt.org/mutt/.

Distribution files:

  MD5 checksum                    file name             size

44fc379c317109f516894a7c3fd43cc9  diff-1.4.1i-1.4.2i.gz	(23k)
6045b47cbba8170d6a9fdccc1aa817b9  mutt-1.4.2i.tar.gz	(2.4M)

Linux distributors are expected to release updated mutt packages
shortly.


Credits:  The problem in the stable mutt code base was originally
reported to Red Hat, and was brought to my attention by Mark Cox.

The Common Vulnerabilities and Exposures project (cve.mitre.org) has
assigned the name CAN-2004-0078 to this issue.  
		
Regards,
-- 
Thomas Roessler ยท Personal soap box at <http://log.does-not-exist.org/>.






Index: menu.c
===================================================================
RCS file: /cvs/mutt/mutt/menu.c,v
retrieving revision 2.27.2.1
diff -u -r2.27.2.1 menu.c
--- menu.c	28 Jan 2002 10:18:50 -0000	2.27.2.1
+++ menu.c	11 Feb 2004 10:05:52 -0000
@@ -148,30 +148,13 @@
     menu->make_entry (s, l, menu, i);
 }
 
-void menu_pad_string (char *s, size_t l)
+void menu_pad_string (char *s, size_t n)
 {
-  size_t n = mutt_strlen (s);
   int shift = option (OPTARROWCURSOR) ? 3 : 0;
-  
-  l--; /* save room for the terminal \0 */
-  if (l > COLS - shift)
-    l = COLS - shift;
+  int cols = COLS - shift;
 
-  /* Let's just pad the string anyway ... */
-  mutt_format_string (s, INT_MAX, l, l, 0, ' ', s, n, 1);
-  return;
-
-#if !defined (HAVE_BKGDSET) && !defined (USE_SLANG_CURSES)
-  /* we have to pad the string with blanks to the end of line */
-  if (n < l)
-  {
-    while (n < l)
-      s[n++] = ' ';
-    s[n] = 0;
-  }
-  else
-#endif
-    s[l] = 0;
+  mutt_format_string (s, n, cols, cols, 0, ' ', s, strlen (s), 1);
+  s[n - 1] = 0;
 }
 
 void menu_redraw_full (MUTTMENU *menu)

Content of type "application/pgp-signature" skipped

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ