[15998] in Kerberos-V5-bugs

home help back first fref pref prev next nref lref last post

[krbdev.mit.edu #8643] git commit

daemon@ATHENA.MIT.EDU (Greg Hudson via RT)
Wed May 2 01:31:46 2018

Mail-followup-to: rt@krbdev.mit.edu
mail-copies-to: never
From: "Greg Hudson via RT" <rt-comment@KRBDEV-PROD-APP-1.mit.edu>
In-Reply-To: <rt-8643@krbdev.mit.edu>
Message-ID: <rt-8643-48502.7.09467470722551@krbdev.mit.edu>
To: "'AdminCc of krbdev.mit.edu Ticket #8643'":;
Date: Wed,  2 May 2018 01:25:59 -0400 (EDT)
Reply-To: rt-comment@KRBDEV-PROD-APP-1.mit.edu
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: krb5-bugs-bounces@mit.edu


Fix flaws in LDAP DN checking

KDB_TL_USER_INFO tl-data is intended to be internal to the LDAP KDB
module, and not used in disk or wire principal entries.  Prevent
kadmin clients from sending KDB_TL_USER_INFO tl-data by giving it a
type number less than 256 and filtering out type numbers less than 256
in kadm5_create_principal_3().  (We already filter out low type
numbers in kadm5_modify_principal()).

In the LDAP KDB module, if containerdn and linkdn are both specified
in a put_principal operation, check both linkdn and the computed
standalone_principal_dn for container membership.  To that end, factor
out the checks into helper functions and call them on all applicable
client-influenced DNs.

CVE-2018-5729:

In MIT krb5 1.6 or later, an authenticated kadmin user with permission
to add principals to an LDAP Kerberos database can cause a null
dereference in kadmind, or circumvent a DN container check, by
supplying tagged data intended to be internal to the database module.
Thanks to Sharwan Ram and Pooja Anil for discovering the potential
null dereference.

CVE-2018-5730:

In MIT krb5 1.6 or later, an authenticated kadmin user with permission
to add principals to an LDAP Kerberos database can circumvent a DN
containership check by supplying both a "linkdn" and "containerdn"
database argument, or by supplying a DN string which is a left
extension of a container DN string but is not hierarchically within
the container DN.

(cherry picked from commit e1caf6fb74981da62039846931ebdffed71309d1)

https://github.com/krb5/krb5/commit/a2df94b6bb22ecf6e77c5044cff0f627b4fb30cf
Author: Greg Hudson <ghudson@mit.edu>
Commit: a2df94b6bb22ecf6e77c5044cff0f627b4fb30cf
Branch: krb5-1.15
 src/lib/kadm5/srv/svr_principal.c                  |    7 +
 src/plugins/kdb/ldap/libkdb_ldap/kdb_ldap.h        |    2 +-
 src/plugins/kdb/ldap/libkdb_ldap/ldap_principal2.c |  200 +++++++++++---------
 src/tests/t_kdb.py                                 |   14 ++
 4 files changed, 128 insertions(+), 95 deletions(-)

_______________________________________________
krb5-bugs mailing list
krb5-bugs@mit.edu
https://mailman.mit.edu/mailman/listinfo/krb5-bugs

home help back first fref pref prev next nref lref last post