禁用弱密码

use*_*963 2 security windows-server-2008 ssl windows-registry

有没有人有在 Windows 注册表上禁用弱密码的经验?服务器没有安装 IIS。下面是我的安全扫描的结果,但不是 100% 应该添加哪些注册表项,我之前通过注册表禁用了整个协议,但从未禁用过单个密码。

猜测将在此处创建注册表项。

HKey_Local_Machine\System\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\
Run Code Online (Sandbox Code Playgroud)

以下是远程服务器支持的弱 SSL 密码列表:

  Low Strength Ciphers (< 56-bit key)

    TLSv1
      EXP-EDH-RSA-DES-CBC-SHA      Kx=DH(512)     Au=RSA      Enc=DES-CBC(40)          Mac=SHA1   export     
      EXP-DES-CBC-SHA              Kx=RSA(512)    Au=RSA      Enc=DES-CBC(40)          Mac=SHA1   export     
      EXP-RC4-MD5                  Kx=RSA(512)    Au=RSA      Enc=RC4(40)              Mac=MD5    export     

The fields above are :

  {OpenSSL ciphername}
  Kx={key exchange}
  Au={authentication}
  Enc={symmetric encryption method}
  Mac={message authentication code}
  {export flag}
Run Code Online (Sandbox Code Playgroud)

Rya*_*ies 5

猜测将在此处创建注册表项。

你不必猜测。乐微软知识库

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel] 
"EventLogging"=dword:00000001 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Ciphers] 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\CipherSuites] 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Hashes] 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\KeyExchangeAlgorithms] 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols] 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols\SSL 2.0] 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols\SSL 2.0\Client] 
"DisabledByDefault"=dword:00000001
Run Code Online (Sandbox Code Playgroud)

所以你的预感很接近,但是当你想要启用/禁用密码时注意 Ciphers 子键,当你想要禁用/启用整个协议时注意 Protocols 子键。

因此,例如,如果您想禁用 RC4,请创建多个新密钥,针对可在 RC4 中使用的每种不同密钥大小创建一个:

HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 56/128

HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 64/128

HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 40/128

HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 128/128
Run Code Online (Sandbox Code Playgroud)

在这些键中的每一个中,您都需要创建新值:

Enabled    REG_DWORD    0
Run Code Online (Sandbox Code Playgroud)

例如,如果您想禁用整个 SSL v2 协议,请创建密钥:

HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Client

HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server
Run Code Online (Sandbox Code Playgroud)

在每个键中,创建两个新值:

Enabled              DWORD    0
DisabledByDefault    DWORD    1
Run Code Online (Sandbox Code Playgroud)

请注意,这些策略仅影响链接到/调用到 Schannel.dll 的应用程序...因此 IIS、Internet Explorer、远程桌面等。这些设置不会影响使用其他 SSL 库(如 OpenSSL)的应用程序。