FIX_KDB_KEYS(8)

NAME
fix_kdb_keys - Secure Kerberos database by properly randomising keys

SYNOPSIS
fix_kdb_keys

DESCRIPTION
If you built your Kerberos database before receiving this distribution, the keys were randomly generated using the vulnerable version of the Kerberos random number generator. Therefore it is possible for an attacker to mount an attack to guess these values. If an attacker can determine the key for the krbtgt ticket, they can construct tickets claiming to be any Kerberos principal. Similarly if an attacker can obtain the changepw.kerberos key, they can change anyone's password.

This distribution has been patched to use the improved des_new_random_key() routines instead of the old and cryptographically suspect des_random_key().

The primary difference is that des_random_key() uses a seeding technique which is predictable and therefore vulnerable. While des_new_random_key() uses a feedback mechanism based on the Data Encryption Standard (DES) and is seeded with a secret (and therefore unknown to an attacker) value. This value is the secret database master key.

Running fix_kdb_keys on the KDC server will change these critical keys to new values using the newer random number generator. IMPORTANT: When this is done, all outstanding ticket granting tickets will immediately become invalid. This will be disruptive to your user community. It is recommended that this is done late at night or early in the morning before most users have logged in. Alternatively pre-announce a definitive time when you will run the program and inform the users that they will have to get new tickets at that time (using either kinit or simply by logging out and then in again).

DIAGNOSTICS
Many, and descriptive.

FILES

/etc/kerberosIV/principal.db
    DBM file containing database

/etc/kerberosIV/master_key
    Master key cache file.