Bug Fix Advisory krb5 bug fix update

Advisory: RHBA-2008:0381-5
Type: Bug Fix Advisory
Severity: N/A
Issued on: 2008-05-21
Last updated on: 2008-05-21
Affected Products: RHEL Desktop Workstation (v. 5 client)
Red Hat Enterprise Linux (v. 5 server)
Red Hat Enterprise Linux Desktop (v. 5 client)
OVAL: N/A

Details

Updated krb5 packages that resolve several issues are now available.

Kerberos is an authentication system which permits clients and servers to
authenticate to each other with the help of a trusted third party and
symmetric-key cryptography.

A flaw was found in the way the MIT Kerberos Authentication Service and Key
Distribution Center server (krb5kdc) handled Kerberos v4 protocol packets.
An un-authenticated remote attacker could use this flaw to crash the
krb5kdc daemon, disclose portions of its memory, or possibly execute
arbitrary code using malformed or truncated Kerberos v4 protocol requests.
(CVE-2008-0062, CVE-2008-0063)

This issue only affected krb5kdc with Kerberos v4 protocol compatibility
enabled, which is the default setting on Red Hat Enterprise Linux 4.
Kerberos v4 protocol support can be disabled by akdding "v4_mode=none"
(without the quotes) to the "[kdcdefaults]" section of
/var/kerberos/krb5kdc/kdc.conf.

Jeff Altman of Secure Endpoints discovered a flaw in the RPC library as
used by MIT Kerberos kadmind server. An un-authenticated remote attacker
could use this flaw to crash kadmind or possibly execute arbitrary code.
This issue only affected systems with certain resource limits configured
and did not affect systems using default resource limits used by Red Hat
Enterprise Linux 5. (CVE-2008-0947)

Red Hat would like to thank MIT for reporting these issues.

Multiple memory management flaws were discovered in the GSSAPI library used
by MIT Kerberos. These flaws could possibly result in use of already freed
memory or an attempt to free already freed memory blocks (double-free
flaw), possibly causing a crash or arbitrary code execution.
(CVE-2007-5901, CVE-2007-5971)

In addition, these updated krb5 packages provide fixes for the following bugs:

* delegated krb5 credentials were not properly stored when SPNEGO was the
underlying mechanism during GSSAPI authentication. SPNEGO credentials can
now be properly searched, and applications can copy delegated credentials
as expected.

* applications can initiate context acceptance (via gss_accept_sec_context)
without passing a ret_flags value that would indicate that credentials were
delegated.

* password change requests would fail if the primary server was unavailable
when libkrb5 generated a set- or change-password request.

* quality checks on the setting of a new password were bypassed when a user
attempted to log in remotely with an expired password.

* when a user's password expired, kinit would not prompt that user to
change the password. kinit now prompts the user to set a new password.

* the mget command was unable to successfully download and set SELinux labels.

* the mget command was unable to transfer files when runique was turned on.

* attempts to download non-existent files via FTP would sockets to remain open.

* the krb5 init scripts have been updated to conform more closely to init
script guidelines.

* if a Key Distribution Center (KDC) returned a KDC_ERR_SVC_UNAVAILABLE
code, the next KDC was not tried.

* kadmin would print a misleading "too many arguments" error message to the
console under certain conditions.

* kpasswd did not fall back to TCP on receipt of certain errors, or when a
packet was too big for UDP. This update corrects this.

* Kerberos password expiration warnings were based on principal expiration
rather than user password expiration.

* the kpasswd command would attempt to determine the user's principal name
by reading it from the user's credential cache. If an access error
occurred, kpasswd would fail rather than being handled gracefully.

* in the telnet man pages, the description of the escape character as
announced on program invocation was misleading if rlogin mode was selected.

* a package verification problem.

* support for the Red Hat Directory Server's nsAccountLock attribute was added.

* the manual page for kdc.conf was missing a section on the 'kdc_tcp_ports'
option.

Users are advised to upgrade to these updated krb5 packages, which resolve
these issues.


Solution

Before applying this update, make sure that all previously-released
errata relevant to your system have been applied.

This update is available via Red Hat Network. Details on how to use
the Red Hat Network to apply this update are available at
http://kbase.redhat.com/faq/FAQ_58_10188

Updated packages

RHEL Desktop Workstation (v. 5 client)

IA-32:
krb5-devel-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    4b195d9978054b9974f948474c4cd13b
krb5-server-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    325ac71e82bd98995226bac3c9535fb6
 
x86_64:
krb5-devel-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    4b195d9978054b9974f948474c4cd13b
krb5-devel-1.6.1-25.el5.x86_64.rpm
File outdated by:  RHBA-2008:0902
    375a08bd829177d877bced4b4ec3b84d
krb5-server-1.6.1-25.el5.x86_64.rpm
File outdated by:  RHBA-2008:0902
    ab7e4807a7b0d20a1deb2f67b8b346e8
 
Red Hat Enterprise Linux (v. 5 server)

SRPMS:
krb5-1.6.1-25.el5.src.rpm
File outdated by:  RHBA-2008:0902
    a6f52132a9ccf075b1b296b8cc0d9fb0
 
IA-32:
krb5-devel-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    4b195d9978054b9974f948474c4cd13b
krb5-libs-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    09a70124beda3466959920e61b78edf7
krb5-server-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    325ac71e82bd98995226bac3c9535fb6
krb5-workstation-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    9b2d5b00ad689b02b08a402bf9506112
 
IA-64:
krb5-devel-1.6.1-25.el5.ia64.rpm
File outdated by:  RHBA-2008:0902
    316a18892b5eda39d38c53f3c5a1277c
krb5-libs-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    09a70124beda3466959920e61b78edf7
krb5-libs-1.6.1-25.el5.ia64.rpm
File outdated by:  RHBA-2008:0902
    d71016b464611e789c5c010994fe5631
krb5-server-1.6.1-25.el5.ia64.rpm
File outdated by:  RHBA-2008:0902
    7049217ad8e3a4c903b849f11250717e
krb5-workstation-1.6.1-25.el5.ia64.rpm
File outdated by:  RHBA-2008:0902
    9247d5bc3c77a845a1223da30ec968fa
 
PPC:
krb5-devel-1.6.1-25.el5.ppc.rpm
File outdated by:  RHBA-2008:0902
    87fed8275bd61cbef6021a4dcec2b25f
krb5-devel-1.6.1-25.el5.ppc64.rpm
File outdated by:  RHBA-2008:0902
    5f72b9ac98df72c93244f439dceb7c53
krb5-libs-1.6.1-25.el5.ppc.rpm
File outdated by:  RHBA-2008:0902
    766bde59a5b90d762d059b48f56a86fa
krb5-libs-1.6.1-25.el5.ppc64.rpm
File outdated by:  RHBA-2008:0902
    90872d8235018898ca3a685c3045e4d2
krb5-server-1.6.1-25.el5.ppc.rpm
File outdated by:  RHBA-2008:0902
    706b2db6ec039ccda45af0eae70c0617
krb5-workstation-1.6.1-25.el5.ppc.rpm
File outdated by:  RHBA-2008:0902
    058ffdb3e63136f00fca1ecdaf691878
 
s390x:
krb5-devel-1.6.1-25.el5.s390.rpm
File outdated by:  RHBA-2008:0902
    d3e21a6a6bd4f8bee1b2b0108b71d238
krb5-devel-1.6.1-25.el5.s390x.rpm
File outdated by:  RHBA-2008:0902
    eeaae57d30525df37ea5713d8979f428
krb5-libs-1.6.1-25.el5.s390.rpm
File outdated by:  RHBA-2008:0902
    6d7d4aba2b271115546ff0292afe3113
krb5-libs-1.6.1-25.el5.s390x.rpm
File outdated by:  RHBA-2008:0902
    b526f70b5c19467551556c4d6ab21c00
krb5-server-1.6.1-25.el5.s390x.rpm
File outdated by:  RHBA-2008:0902
    6127e748b203cc7131f15e44660b7534
krb5-workstation-1.6.1-25.el5.s390x.rpm
File outdated by:  RHBA-2008:0902
    e085e65a38eeac268684e1a00b7c1256
 
x86_64:
krb5-devel-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    4b195d9978054b9974f948474c4cd13b
krb5-devel-1.6.1-25.el5.x86_64.rpm
File outdated by:  RHBA-2008:0902
    375a08bd829177d877bced4b4ec3b84d
krb5-libs-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    09a70124beda3466959920e61b78edf7
krb5-libs-1.6.1-25.el5.x86_64.rpm
File outdated by:  RHBA-2008:0902
    c8005ab81b3ba437588b7e07f1a9418a
krb5-server-1.6.1-25.el5.x86_64.rpm
File outdated by:  RHBA-2008:0902
    ab7e4807a7b0d20a1deb2f67b8b346e8
krb5-workstation-1.6.1-25.el5.x86_64.rpm
File outdated by:  RHBA-2008:0902
    4c9723fc27a3c5a03680c828adc92d3b
 
Red Hat Enterprise Linux Desktop (v. 5 client)

SRPMS:
krb5-1.6.1-25.el5.src.rpm
File outdated by:  RHBA-2008:0902
    a6f52132a9ccf075b1b296b8cc0d9fb0
 
IA-32:
krb5-libs-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    09a70124beda3466959920e61b78edf7
krb5-workstation-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    9b2d5b00ad689b02b08a402bf9506112
 
x86_64:
krb5-libs-1.6.1-25.el5.i386.rpm
File outdated by:  RHBA-2008:0902
    09a70124beda3466959920e61b78edf7
krb5-libs-1.6.1-25.el5.x86_64.rpm
File outdated by:  RHBA-2008:0902
    c8005ab81b3ba437588b7e07f1a9418a
krb5-workstation-1.6.1-25.el5.x86_64.rpm
File outdated by:  RHBA-2008:0902
    4c9723fc27a3c5a03680c828adc92d3b
 
(The unlinked packages above are only available from the Red Hat Network)

Bugs fixed (see bugzilla for more information)

242500 - Wrong init script
247633 - ftp client: runique on stops mget from working
247741 - Documentation of rlogin mode is misleading
248618 - ftp leaks socket fds when it fails to open a file
248631 - kpasswd insists on a valid credentials cache and doesn't use the UID
314651 - gss_init_sec_context() mechglue wrapper doesn't handle ret_flags right
319351 - gss_krb5_copy_ccache can't find delegated Kerberos creds when using SPNEGO
329771 - Rpm Verify Fails - krb5.conf needs %verify(not md5 size mtime) in %config
381011 - /etc/init.d/kadmin: line 35: [: too many arguments
392631 - kpasswd does not fallback to tcp
413051 - kinit does not automatically start a password change when password is expired
426085 - kerberos ftp receives sigabort on mget since krb5-1.6.1-selinux-label.patch
427789 - krb5 password changing uses incorrect sequence numbers for every server but the first
431784 - RFE: Support for Directory Server specify account lock attribute


Keywords

delegation, expiration, kpasswd, pam, runique, sequence, spnego, tcp


These packages are GPG signed by Red Hat for security. Our key and details on how to verify the signature are available from:
https://www.redhat.com/security/team/key/#package

The Red Hat security contact is secalert@redhat.com. More contact details at http://www.redhat.com/security/team/contact/