SUNRPC: Add build option to disable support for insecure enctypes
Enable distributions to enforce the rejection of ancient and insecure Kerberos enctypes in the kernel's RPCSEC_GSS implementation. These are the single-DES encryption types that were deprecated in 2012 by RFC 6649. Enctypes that were deprecated more recently (by RFC 8429) remain fully supported for now because they are still likely to be widely used. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Acked-by: Simo Sorce <simo@redhat.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
This commit is contained in:

committed by
Anna Schumaker

parent
067fb11b12
commit
fe9a270519
@@ -34,6 +34,22 @@ config RPCSEC_GSS_KRB5
|
||||
|
||||
If unsure, say Y.
|
||||
|
||||
config CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES
|
||||
bool "Secure RPC: Disable insecure Kerberos encryption types"
|
||||
depends on RPCSEC_GSS_KRB5
|
||||
default n
|
||||
help
|
||||
Choose Y here to disable the use of deprecated encryption types
|
||||
with the Kerberos version 5 GSS-API mechanism (RFC 1964). The
|
||||
deprecated encryption types include DES-CBC-MD5, DES-CBC-CRC,
|
||||
and DES-CBC-MD4. These types were deprecated by RFC 6649 because
|
||||
they were found to be insecure.
|
||||
|
||||
N is the default because many sites have deployed KDCs and
|
||||
keytabs that contain only these deprecated encryption types.
|
||||
Choosing Y prevents the use of known-insecure encryption types
|
||||
but might result in compatibility problems.
|
||||
|
||||
config SUNRPC_DEBUG
|
||||
bool "RPC: Enable dprintk debugging"
|
||||
depends on SUNRPC && SYSCTL
|
||||
|
@@ -53,6 +53,7 @@
|
||||
static struct gss_api_mech gss_kerberos_mech; /* forward declaration */
|
||||
|
||||
static const struct gss_krb5_enctype supported_gss_krb5_enctypes[] = {
|
||||
#ifndef CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES
|
||||
/*
|
||||
* DES (All DES enctypes are mapped to the same gss functionality)
|
||||
*/
|
||||
@@ -74,6 +75,7 @@ static const struct gss_krb5_enctype supported_gss_krb5_enctypes[] = {
|
||||
.cksumlength = 8,
|
||||
.keyed_cksum = 0,
|
||||
},
|
||||
#endif /* CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES */
|
||||
/*
|
||||
* RC4-HMAC
|
||||
*/
|
||||
|
Reference in New Issue
Block a user