SecurityTracker.com
    Home    |    View Topics    |    Search    |    Contact Us    |   

SecurityTracker
Archives


 


Category:   Application (Security)  >   kadmind (please use Kerberos) Vendors:   Royal Institute of Technology
(FreeBSD Issues Fix) Heimdal k5admind Framing Length Buffer Overflow Lets Remote Users Execute Arbitrary Code
SecurityTracker Alert ID:  1010077
SecurityTracker URL:  http://securitytracker.com/id/1010077
CVE Reference:   CVE-2004-0434   (Links to External Site)
Date:  May 6 2004
Impact:   Denial of service via network, Execution of arbitrary code via network, Root access via network
Fix Available:  Yes  Vendor Confirmed:  Yes  
Version(s): 0.6.1 and prior versions
Description:   A heap overflow vulnerability was reported in Heimdal k5admind. A remote user can execute arbitrary code on the target system.

Evgeny Demidov reported that there is a pre-authentication flaw in the k5admind(8) Kerberos Key Distribution Center (KDC) interface in the processing of Kerberos 4 compatibility administration requests. A remote user can supply a framing length value of less than two bytes to cause the target service to copy an arbitrary amount of data into a small buffer on the heap.

Only systems that have compiled k5admind with Kerberos 4 support are reported to be affected.

Impact:   A remote user can execute arbitrary code on the target system with the privileges of the k5admind daemon.
Solution:   FreeBSD has released a fix and indicates that you can do one of the following [quoted]:

1) Upgrade your vulnerable system to 4-STABLE; or to the RELENG_4_9 or RELENG_4_8 security branch dated after the correction date.

2) To patch your present system:

The following patches have been verified to apply to FreeBSD 4.8 and 4.9.

a) Download the relevant patch from the location below, and verify the detached PGP signature using your PGP utility.

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:09/kadmind.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:09/kadmind.patch.asc

b) Execute the following commands as root:

# cd /usr/src
# patch < /path/to/patch
# cd /usr/src/kerberos5/tools
# make obj && make depend && make
# cd /usr/src/kerberos5/lib
# make obj && make depend && make
# cd /usr/src/kerberos5/libexec/k5admind
# make obj && make depend && make all install

Vendor URL:  www.pdc.kth.se/heimdal/ (Links to External Site)
Cause:   Boundary error
Underlying OS:  UNIX (FreeBSD)
Underlying OS Comments:  4.8, 4.9, 4.10, 5.0

Message History:   This archive entry is a follow-up to the message listed below.
May 6 2004 Heimdal k5admind Framing Length Buffer Overflow Lets Remote Users Execute Arbitrary Code



 Source Message Contents

Subject:  FreeBSD Security Advisory FreeBSD-SA-04:09.kadmind


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

=============================================================================
FreeBSD-SA-04:09.kadmind                                    Security Advisory
                                                          The FreeBSD Project

Topic:          heimdal kadmind remote heap buffer overflow

Category:       contrib
Module:         crypto_heimdal
Announced:      2004-05-05
Credits:        Evgeny Demidov, VulnDisco, Love Hornquist-Astrand
Affects:        FreeBSD 4 systems built with both Kerberos 4 and Kerberos 5.
                FreeBSD 5 systems prior to 5.1 built with both Kerberos 4 and
                Kerberos 5.
Corrected:      2004-05-05 20:19:48 UTC (RELENG_4, 4.10-PRERELEASE)
                2004-05-05 20:48:57 UTC (RELENG_4_10, 4.10-RELEASE-RC)
                2004-05-05 20:15:56 UTC (RELENG_4_9, 4.9-RELEASE-p7)
                2004-05-05 20:17:51 UTC (RELENG_4_8, 4.8-RELEASE-p20)
CVE Name:       CAN-2004-0434
FreeBSD only:   NO

For general information regarding FreeBSD Security Advisories,
including descriptions of the fields above, security branches, and the
following sections, please visit
<URL:http://www.freebsd.org/security/>.

I.   Background

Heimdal implements the Kerberos 5 network authentication protocols.
The k5admind(8) daemon provides the administrative interface to the
Kerberos Key Distribution Center (KDC).  In some configurations,
k5admind also includes Kerberos 4 compatibility.

NOTE: FreeBSD versions prior to 5.1-RELEASE contain optional Kerberos
4 support.  FreeBSD versions 5.1-RELEASE and later do not include
Kerberos 4 support of any kind.

II.  Problem Description

An input validation error was discovered in the k5admind code that
handles the framing of Kerberos 4 compatibility administration
requests.  The code assumed that the length given in the framing was
always two or more bytes.  Smaller lengths will cause k5admind to read
an arbitrary amount of data into a minimally-sized buffer on the heap.

Note that this code is not present unless k5admind has been compiled
with Kerberos 4 support.  This will occur if a FreeBSD system is
compiled with both of the WITH_KERBEROS4 and WITH_KERBEROS5 build flags.
These flags are never simultaneously set during the FreeBSD binary
release process; consequently, binary installs of FreeBSD (even with
Kerberos support installed) are not affected.

III. Impact

A remote attacker may send a specially formatted message to k5admind,
causing it to crash or possibly resulting in arbitrary code execution.

IV.  Workaround

Disable the Kerberos 4 support in k5admind by running it with the
`--no-kerberos4' option.

V.   Solution

Perform one of the following:

1) Upgrade your vulnerable system to 4-STABLE; or to the RELENG_4_9 or
RELENG_4_8 security branch dated after the correction date.

2) To patch your present system:

The following patches have been verified to apply to FreeBSD 4.8 and
4.9.

a) Download the relevant patch from the location below, and verify the
detached PGP signature using your PGP utility.

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:09/kadmind.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:09/kadmind.patch.asc

b) Execute the following commands as root:

# cd /usr/src
# patch < /path/to/patch
# cd /usr/src/kerberos5/tools
# make obj && make depend && make
# cd /usr/src/kerberos5/lib
# make obj && make depend && make
# cd /usr/src/kerberos5/libexec/k5admind
# make obj && make depend && make all install

VI.  Correction details

The following list contains the revision numbers of each file that was
corrected in FreeBSD.

Branch                                                           Revision
  Path
- -------------------------------------------------------------------------
RELENG_4
  src/crypto/heimdal/kadmin/version4.c                        1.1.1.1.2.6
RELENG_4_10
  src/crypto/heimdal/kadmin/version4.c                    1.1.1.1.2.5.6.1
RELENG_4_9
  src/UPDATING                                              1.73.2.89.2.8
  src/crypto/heimdal/kadmin/version4.c                    1.1.1.1.2.5.4.1
  src/sys/conf/newvers.sh                                   1.44.2.32.2.8
RELENG_4_8
  src/UPDATING                                             1.73.2.80.2.23
  src/crypto/heimdal/kadmin/version4.c                    1.1.1.1.2.5.2.1
  src/sys/conf/newvers.sh                                  1.44.2.29.2.21
- -------------------------------------------------------------------------
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (FreeBSD)

iD8DBQFAmVp/FdaIBMps37IRArWAAJ9wsAaSmpmkdisZ7dKCdUqtjzi5/ACfQx91
Rl2JAQ/JrZyoOlwYRea1SLc=
=gQfq
-----END PGP SIGNATURE-----
_______________________________________________
freebsd-security-notifications@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-security-notifications
To unsubscribe, send any mail to "freebsd-security-notifications-unsubscribe@freebsd.org"

 
 


Go to the Top of This SecurityTracker Archive Page





Home   |    View Topics   |    Search   |    Contact Us

This web site uses cookies for web analytics. Learn More

Copyright 2021, SecurityGlobal.net LLC