Bug 750929 - SIGSEGV Crash while parsing certificates file
SIGSEGV Crash while parsing certificates file
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: mutt (Show other bugs)
6.2
Unspecified Unspecified
unspecified Severity high
: rc
: ---
Assigned To: jpacner
Lukas Zachar
: Patch
Depends On:
Blocks: 947782 751124 1021464
  Show dependency treegraph
 
Reported: 2011-11-02 16:55 EDT by Matěj Cepl
Modified: 2014-07-28 05:01 EDT (History)
3 users (show)

See Also:
Fixed In Version: mutt-1.5.20-6.20091214hg736b6a.el6
Doc Type: Bug Fix
Doc Text:
Prior to this update, mutt did not correctly parse certificate files when accessing accounts through IMAP and POP3 protocols. Consequently, mutt terminated unexpectedly with a segmentation fault when attempting to access an IMAP or POP3 account. This update fixes the parsing process and accessing an IMAP or POP3 account now functions as intended.
Story Points: ---
Clone Of:
: 751124 1021464 (view as bug list)
Environment:
Last Closed: 2014-07-28 05:01:30 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)
proposed patch to parse certificates file securely (876 bytes, patch)
2013-06-27 07:47 EDT, Honza Horak
no flags Details | Diff
patch to parse certificates file securely (639 bytes, patch)
2013-10-21 06:36 EDT, Honza Horak
no flags Details | Diff

  None (edit)
Description Matěj Cepl 2011-11-02 16:55:03 EDT
Description of problem:
I have set

set folder=imaps://matej@luther.ceplovi.cz/INBOX

and when starting mutt, I get this crash:

Program received signal SIGSEGV, Segmentation fault.
__strstr_sse2 (haystack_start=0x1 <Address 0x1 out of bounds>, 
    needle_start=0x4a8248 "-----BEGIN") at ../string/strstr.c:63
63	  while (*haystack && *needle)
Missing separate debuginfos, use: debuginfo-install bzip2-libs-1.0.5-7.el6_0.x86_64 keyutils-libs-1.4-3.el6.x86_64 libgcrypt-1.4.5-9.el6.x86_64 libgpg-error-1.7-4.el6.x86_64 libtasn1-2.3-3.el6.x86_64 nss-softokn-freebl-3.12.9-10.el6.x86_64 zlib-1.2.3-27.el6.x86_64
(gdb) thread apply all backtrace

Thread 1 (Thread 0x7ffff7fd67c0 (LWP 24792)):
#0  __strstr_sse2 (haystack_start=0x1 <Address 0x1 out of bounds>, 
    needle_start=0x4a8248 "-----BEGIN") at ../string/strstr.c:63
#1  0x000000000048798b in tls_compare_certificates (certdata=0xb9b8f0, certstat=0, 
    hostname=<value optimized out>, chainidx=0, certerr=0x7fffffffca18, savedcert=0x7fffffffca14)
    at mutt_ssl_gnutls.c:438
#2  tls_check_preauth (certdata=0xb9b8f0, certstat=0, hostname=<value optimized out>, 
    chainidx=0, certerr=0x7fffffffca18, savedcert=0x7fffffffca14) at mutt_ssl_gnutls.c:590
#3  0x0000000000489131 in tls_check_certificate (conn=0xb7d950) at mutt_ssl_gnutls.c:1005
#4  tls_negotiate (conn=0xb7d950) at mutt_ssl_gnutls.c:346
#5  0x000000000048950c in tls_socket_open (conn=0xb7d950) at mutt_ssl_gnutls.c:162
#6  0x0000000000490a27 in imap_open_connection (idata=0xb7def0) at imap.c:407
#7  0x0000000000490d68 in imap_conn_find (account=0x7fffffffd860, flags=<value optimized out>)
    at imap.c:371
#8  0x00000000004924af in imap_open_mailbox (ctx=0xb7c650) at imap.c:574
#9  0x0000000000443be5 in mx_open_mailbox (path=<value optimized out>, flags=0, pctx=0x0)
    at mx.c:661
#10 0x0000000000439aa6 in main (argc=1, argv=<value optimized out>) at main.c:1017
(gdb) 

Version-Release number of selected component (if applicable):
mutt-1.5.20-2.20091214hg736b6a.el6_1.1.x86_64

How reproducible:
100% (three out of three attempts, also with attempt to access POP3 account)

Steps to Reproduce:
1.try to access IMAP or POP3 account
2.
3.
  
Actual results:
crash

Expected results:
opened mailbox

Additional info:
Comment 2 RHEL Product and Program Management 2011-11-02 17:28:53 EDT
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unfortunately unable to
address this request at this time. Red Hat invites you to
ask your support representative to propose this request, if
appropriate and relevant, in the next release of Red Hat
Enterprise Linux. If you would like it considered as an
exception in the current release, please ask your support
representative.
Comment 15 Honza Horak 2013-06-27 07:47:48 EDT
Created attachment 766073 [details]
proposed patch to parse certificates file securely

The previous patch contained off-by-one error, this one seems to work fine for some time in Fedora.
Comment 18 Honza Horak 2013-10-21 06:36:03 EDT
Created attachment 814524 [details]
patch to parse certificates file securely

Upstream fixed this issue a bit differently, this is upstream's patch.
Comment 22 jpacner 2014-05-16 08:34:53 EDT
Fixed in commit http://pkgs.devel.redhat.com/cgit/rpms/mutt/commit/?h=rhel-6.6&id=d5f692c7abf9d2ab32558e21f10c45ba7844def9 (build mutt-1.5.20-5.20091214hg736b6a.el6).
Comment 24 Matěj Cepl 2014-06-16 08:19:51 EDT
Yes, I use   mutt.x86_64 (RHEL package 5:1.5.20-4.20091214hg736b6a.el6_5) and I can confirm it doesn't crash anymore.
Comment 25 jpacner 2014-07-23 10:07:46 EDT
List of patches present on mutt-1.5.20-6.20091214hg736b6a.el6:
http://pkgs.devel.redhat.com/cgit/rpms/mutt/commit/?h=rhel-6.6&id=d5f692c7abf9d2ab32558e21f10c45ba7844def9
Comment 29 errata-xmlrpc 2014-07-28 05:01:30 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2014-0945.html

Note You need to log in before you can comment on or make changes to this bug.