当前位置:   article > 正文

oracle禁用掉arcfour,阻止使用机制 - 在 Oracle® Solaris 11.2 中管理加密和证书

ckm_blowfish

阻止使用机制

如果不应使用库提供者的某些加密机制,可以删除这些所选的机制。例如,如果另一个库中的相同机制表现得更好,或者调查发现了安全漏洞,则可能要考虑阻止使用机制。

如果加密框架提供了某个提供者(如 AES)的多种模式,则可以禁用速度较慢的机制或已损坏的机制。还可以使用本过程删除经证明存在安全漏洞的算法。

可以有选择地禁用硬件提供者的机制和随机数功能。有关重新启用它们的信息,请参见Example 3–22。此示例中的硬件 Sun Crypto Accelerator 1000 板提供了一个随机数生成器。

如何禁止使用用户级机制

开始之前

您必须是指定有 Crypto Management(加密管理)权限配置文件的管理员。有关更多信息,请参见在 Oracle Solaris 11.2 中确保用户和进程的安全中的使用所指定的管理权限。

列出特定用户级软件提供者提供的机制。

% cryptoadm list -m provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so

/usr/lib/security/$ISA/pkcs11_softtoken.so:

CKM_DES_CBC,CKM_DES_CBC_PAD,CKM_DES_ECB,CKM_DES_KEY_GEN,

CKM_DES3_CBC,CKM_DES3_CBC_PAD,CKM_DES3_ECB,CKM_DES3_KEY_GEN,

CKM_AES_CBC,CKM_AES_CBC_PAD,CKM_AES_ECB,CKM_AES_KEY_GEN,

列出可使用的机制。

$ cryptoadm list -p

user-level providers:

=====================

/usr/lib/security/$ISA/pkcs11_softtoken.so: all mechanisms are enabled.

random is enabled.

禁用不应使用的机制。

$ cryptoadm disable provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so \

> mechanism=CKM_DES_CBC,CKM_DES_CBC_PAD,CKM_DES_ECB

列出可使用的机制。

$ cryptoadm list -p provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so

/usr/lib/security/$ISA/pkcs11_softtoken.so: all mechanisms are enabled,

except CKM_DES_ECB,CKM_DES_CBC_PAD,CKM_DES_CBC. random is enabled.

示例 3-15启用一个用户级软件提供者机制

在下面的示例中,将使禁用的 DES 机制再次可用。

$ cryptoadm list -m provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so

/usr/lib/security/$ISA/pkcs11_softtoken.so:

CKM_DES_CBC,CKM_DES_CBC_PAD,CKM_DES_ECB,CKM_DES_KEY_GEN,

CKM_DES3_CBC,CKM_DES3_CBC_PAD,CKM_DES3_ECB,CKM_DES3_KEY_GEN,

$ cryptoadm list -p provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so

/usr/lib/security/$ISA/pkcs11_softtoken.so: all mechanisms are enabled,

except CKM_DES_ECB,CKM_DES_CBC_PAD,CKM_DES_CBC. random is enabled.

$ cryptoadm enable provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so \

> mechanism=CKM_DES_ECB

$ cryptoadm list -p provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so

/usr/lib/security/$ISA/pkcs11_softtoken.so: all mechanisms are enabled,

except CKM_DES_CBC_PAD,CKM_DES_CBC. random is enabled.

示例 3-16启用所有用户级软件提供者机制

在下面的示例中,将启用用户级库的所有机制。

$ cryptoadm enable provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so all

$ cryptoadm list -p provider=/usr/lib/security/\$ISA/pkcs11_softtoken.so

/usr/lib/security/$ISA/pkcs11_softtoken.so: all mechanisms are enabled.

random is enabled.

示例 3-17永久删除用户级库

在下面的示例中,将从 /opt 目录中删除 libpkcs11.so.1 库。

$ cryptoadm uninstall provider=/opt/lib/\$ISA/libpkcs11.so.1

$ cryptoadm list

user-level providers:

/usr/lib/security/$ISA/pkcs11_kernel.so

/usr/lib/security/$ISA/pkcs11_softtoken.so

/usr/lib/security/$ISA/pkcs11_tpm.so

kernel providers:

如何禁止使用内核软件机制

开始之前

您必须是指定有 Crypto Management(加密管理)权限配置文件的管理员。有关更多信息,请参见在 Oracle Solaris 11.2 中确保用户和进程的安全中的使用所指定的管理权限。

列出特定内核软件提供者提供的机制。

$ cryptoadm list -m provider=aes

aes: CKM_AES_ECB,CKM_AES_CBC,CKM_AES_CTR,CKM_AES_CCM,CKM_AES_GCM,

CKM_AES_GMAC,CKM_AES_CFB128,CKM_AES_XTS,CKM_AES_XCBC_MAC

列出可使用的机制。

$ cryptoadm list -p provider=aes

aes: all mechanisms are enabled.

禁用不应使用的机制。

$ cryptoadm disable provider=aes mechanism=CKM_AES_ECB

列出可使用的机制。

$ cryptoadm list -p provider=aes

aes: all mechanisms are enabled, except CKM_AES_ECB.

示例 3-18启用内核软件提供者机制

在下面的示例中,将使禁用的 AES 机制再次可用。

cryptoadm list -m provider=aes

aes: CKM_AES_ECB,CKM_AES_CBC,CKM_AES_CTR,CKM_AES_CCM,

CKM_AES_GCM,CKM_AES_GMAC,CKM_AES_CFB128,CKM_AES_XTS,CKM_AES_XCBC_MAC

$ cryptoadm list -p provider=aes

aes: all mechanisms are enabled, except CKM_AES_ECB.

$ cryptoadm enable provider=aes mechanism=CKM_AES_ECB

$ cryptoadm list -p provider=aes

aes: all mechanisms are enabled.

示例 3-19临时禁用内核软件提供者

在下面的示例中,将临时禁用 AES 提供者。unload 子命令可用于禁止在卸载某个提供者时自动装入该提供者。例如,修改此提供者的机制时,可能使用 unload 子命令。

$ cryptoadm unload provider=aes

$ cryptoadm list

Kernel software providers:

des

aes (inactive)

arcfour

blowfish

ecc

sha1

sha2

md4

md5

rsa

swrand

n2rng/0

ncp/0

n2cp/0

AES 提供者只有在加密框架刷新之后才会可用。

$ svcadm refresh system/cryptosvc

$ cryptoadm list

Kernel software providers:

des

aes

arcfour

blowfish

camellia

ecc

sha1

sha2

md4

md5

rsa

swrand

n2rng/0

ncp/0

n2cp/0

如果内核使用者正在使用内核软件提供者,则不会卸载该软件。此时将显示错误消息,不过该提供者仍然可供使用。

示例 3-20永久禁用软件提供者

在下面的示例中,将禁用 AES 提供者。禁用后,该 AES 提供者将不会出现在内核软件提供者的策略列表中。

$ cryptoadm uninstall provider=aes

$ cryptoadm list

Kernel software providers:

des

arcfour

blowfish

camellia

ecc

sha1

sha2

md4

md5

rsa

swrand

n2rng/0

ncp/0

n2cp/0

如果内核使用者正在使用内核软件提供者,将显示一条错误消息,不过该提供者仍然可供使用。

示例 3-21重新安装已删除的内核软件提供者

在下面的示例中,将重新安装 AES 内核软件提供者。要重新安装已禁用的内核提供者,必须枚举要安装的机制。

$ cryptoadm install provider=aes \

mechanism=CKM_AES_ECB,CKM_AES_CBC,CKM_AES_CTR,CKM_AES_CCM,

CKM_AES_GCM,CKM_AES_GMAC,CKM_AES_CFB128,CKM_AES_XTS,CKM_AES_XCBC_MAC

$ cryptoadm list

Kernel software providers:

des

aes

arcfour

blowfish

camellia

ecc

sha1

sha2

md4

md5

rsa

swrand

n2rng/0

ncp/0

n2cp/0

如何禁用硬件提供者机制和功能

开始之前

您必须是指定有 Crypto Management(加密管理)权限配置文件的管理员。有关更多信息,请参见在 Oracle Solaris 11.2 中确保用户和进程的安全中的使用所指定的管理权限。

选择要禁用的机制或功能。

列出硬件提供者。

# cryptoadm list

...

Kernel hardware providers:

dca/0

禁用选定的机制。

# cryptoadm list -m provider=dca/0

dca/0: CKM_RSA_PKCS, CKM_RSA_X_509, CKM_DSA, CKM_DES_CBC, CKM_DES3_CBC

random is enabled.

# cryptoadm disable provider=dca/0 mechanism=CKM_DES_CBC,CKM_DES3_CBC

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled except CKM_DES_CBC,CKM_DES3_CBC.

random is enabled.

禁用随机数生成器。

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled. random is enabled.

# cryptoadm disable provider=dca/0 random

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled. random is disabled.

禁用所有机制。不禁用随机数生成器。

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled. random is enabled.

# cryptoadm disable provider=dca/0 mechanism=all

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are disabled. random is enabled.

禁用该硬件上所有功能和机制。

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled. random is enabled.

# cryptoadm disable provider=dca/0 all

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are disabled. random is disabled.

示例 3-22启用硬件提供者的机制和功能

在下面的示例中,将有选择地启用单个硬件的已禁用机制。

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled except CKM_DES_ECB,CKM_DES3_ECB

.

random is enabled.

# cryptoadm enable provider=dca/0 mechanism=CKM_DES3_ECB

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled except CKM_DES_ECB.

random is enabled.

在下面的示例中,将仅启用随机数生成器。

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled, except CKM_MD5,CKM_MD5_HMAC,….

random is disabled.

# cryptoadm enable provider=dca/0 random

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled, except CKM_MD5,CKM_MD5_HMAC,….

random is enabled.

在下面的示例中,将仅启用机制。随机数生成器将继续处于禁用状态。

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled, except CKM_MD5,CKM_MD5_HMAC,….

random is disabled.

# cryptoadm enable provider=dca/0 mechanism=all

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled. random is disabled.

在下面的示例中,将启用板上的所有功能和机制。

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled, except CKM_DES_ECB,CKM_DES3_ECB.

random is disabled.

# cryptoadm enable provider=dca/0 all

# cryptoadm list -p provider=dca/0

dca/0: all mechanisms are enabled. random is enabled.

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/486740
推荐阅读
相关标签
  

闽ICP备14008679号