推荐用于审核/testingMIT Kerberos密码的工具

Debian 6
MIT Kerberos即krb5

我希望能够定期审核/testingKerberos服务器中的密码以确保质量。 如果密码可以快速破解,我想通知用户更改密码等。

我pipe理Kerberos服务器。 我可以使用kdb5_udil来转储数据库。 我不知道该怎么做。

什么是审核/testingMIT Kerberos krb5密码的好工具和方法?

注意:
我读过约翰开膛手也许能做到这一点,但我还没有成功。 我试过在我的dump中指向unafs,并要求input数据库文件和单元名称。 我不知道单元格名称是什么,我猜测这是特定于Kerberos / AFS而不是KDC的转储文件?

我不确定哪些工具,但是我确实有一些build议,即使使用较弱的密码也能更好地确保安全性。 首先,尽可能使用预authentication。 这是在主体上的Kerberos数据库中设置的标志,可以configuration为在新主体上默认。 如果没有预先validation,有人可能会在不知道用户密码的情况下请求Kerberos票据。 虽然他们还不能使用它,但他们可以将其存储在线下,并反复尝试解密这张票,各种密码直到成功。 这张票很有可能会过期,但密码不会有。 他们现在可以请求另一张了解用户密码的票。 在Kerberos服务器将提供用户解密的票据之前,预validation需要知道密码的证据。

其次,要知道您允许Kerberos使用哪些algorithm和盐分。 每种algorithm都有不同的string到键的function,这就是密码的转换方式。 string到键的function越复杂,暴力就越困难。 通常,AESencryption具有更好的串到密钥algorithm。 这与AES本身是更好的encryption是分开的。 即使客户端只请求AESencryption,如果Kerberos为用户存储DES或3DES密钥,他们也许可以被请求使暴力更容易。 另外,你想确保你只使用V5盐。 较老的Kerberos不使用盐(有时称为v4盐)和DESencryption。 如果你不使用salt,那么可以使用一个简单的预先生成的密码查询表及其encryption密钥来强制密码。 salt为用户的密码添加了唯一的值,用户名和域,以确保即使对于另一个用户或领域的相同密码,其encryption密钥也是唯一的。