summaryrefslogtreecommitdiffstats
path: root/krb5-kadmind-null-password.patch
blob: b64f43f7d070c96e09dda00360e862718f4fcad9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
commit c5be6209311d4a8f10fda37d0d3f876c1b33b77b
Author: Richard Basch <basch@alum.mit.edu>
Date:   Tue May 29 14:07:03 2012 -0400

    Null pointer deref in kadmind [CVE-2012-1013]
    
    The fix for #6626 could cause kadmind to dereference a null pointer if
    a create-principal request contains no password but does contain the
    KRB5_KDB_DISALLOW_ALL_TIX flag (e.g. "addprinc -randkey -allow_tix
    name").  Only clients authorized to create principals can trigger the
    bug.  Fix the bug by testing for a null password in check_1_6_dummy.
    
    CVSSv2 vector: AV:N/AC:M/Au:S/C:N/I:N/A:P/E:H/RL:O/RC:C
    
    [ghudson@mit.edu: Minor style change and commit message]
    
    ticket: 7152
    target_version: 1.10.2
    tags: pullup

diff --git a/src/lib/kadm5/srv/svr_principal.c b/src/lib/kadm5/srv/svr_principal.c
index a0b110d..f5ea005 100644
--- a/src/lib/kadm5/srv/svr_principal.c
+++ b/src/lib/kadm5/srv/svr_principal.c
@@ -186,7 +186,7 @@ check_1_6_dummy(kadm5_principal_ent_t entry, long mask,
     char *password = *passptr;
 
     /* Old-style randkey operations disallowed tickets to start. */
-    if (!(mask & KADM5_ATTRIBUTES) ||
+    if (password == NULL || !(mask & KADM5_ATTRIBUTES) ||
         !(entry->attributes & KRB5_KDB_DISALLOW_ALL_TIX))
         return;