IISを実行しているWindows Server 2012システムで CVE-2014-3566 にパッチを適用するにはどうすればよいですか?
Windows Updateにパッチはありますか、またはSSL 3.0を無効にするためにレジストリ変更 を行う必要がありますか ?
「パッチ」はありません。これはプロトコルの脆弱性であり、実装のバグではありません。
Windows Server 2003から2012 R2では、SSL/TLSプロトコルは、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols
に設定されたレジストリのフラグによって制御されます。
POODLEの脆弱性が関係するSSLv3を無効にするには、上記の場所(まだ存在しない場合)にSSL 3.0
という名前のサブキーを作成し、その下にServer
という名前のサブキーを作成します(そうでない場合)すでに存在します)。この場所(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols\SSL 3.0\Server
)で、Enabled
という名前のDWORD値を作成し、0
のままにします。
SSL 2.0の無効化も同じように行う必要がありますが、上記のレジストリパスでSSL 2.0
という名前のキーを使用する点が異なります。
私はすべてのバージョンをテストしたわけではありませんが、この変更を有効にするには再起動が必要であると想定してもおそらく安全だと思います。
インストールを簡単にするために、この「disable ssl 2 and 3.reg」ファイルを 上記のEvanの回答 から導き出しました。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server]
"Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server]
"Enabled"=dword:00000000
SSL2およびSSL3を無効にするPowershell:
2..3 | %{ New-ItemProperty -Path "HKLM:SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL $_.0\Server" -Name Enabled -PropertyType "DWORD" -Value 0 -Force }
プロトコルを無効にするために使用できるNartacの無料ユーティリティがあります。
以下は、レジストリキーの存在をテストし、必要に応じて作成し、必要な値を入力してSSL 2.0およびSSL 3.0を無効にするPowerShellです。
$regPath1 = 'HKLM:SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols\SSL 2.0'
$regPath2 = 'HKLM:SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols\SSL 2.0\Server'
$regPath3 = 'HKLM:SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols\SSL 3.0'
$regPath4 = 'HKLM:SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols\SSL 3.0\Server'
If(!(Test-Path -Path $regPath1))
{
New-Item -Path $regPath1 -Force
}
If(!(Test-Path $regPath2))
{
New-Item -Path $regPath2 -Force
}
New-ItemProperty -Path $regPath2 -Name DisabledByDefault -PropertyType DWORD -Value "1" -Force
New-ItemProperty -Path $regPath2 -Name Enabled -PropertyType DWORD -Value "0" -Force
If(!(Test-Path $regPath3))
{
New-Item -Path $regPath3 -Force
}
If(!(Test-Path $regPath4))
{
New-Item -Path $regPath4 -Force
}
New-ItemProperty -Path $regPath4 -Name DisabledByDefault -PropertyType DWORD -Value "1" -Force
New-ItemProperty -Path $regPath4 -Name Enabled -PropertyType DWORD -Value "0" -Force
これは、SCCMまたはコマンドラインを使用して展開できます。SCCMジョブまたはコマンドラインを管理者として実行してください。レジストリ情報がある一部のWebサイトでは、レジストリキーが作成または変更された後、再起動が必要です。
またはIISCryptoのコピーを取得して[ベストプラクティス]ボタンをクリックし、SSL 3.0をオフにして適用してから再起動します
SSL3を無効にする必要はありません。 SSL3を有効にしてPOODLE mitigatedにすることができます。
# Copy and paste this in PowerShell then restart your server
$cipherSuitesOrder = @(
'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256',
'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P384',
'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P256',
'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P384',
'TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256',
'TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384',
'TLS_RSA_WITH_AES_128_CBC_SHA256',
'TLS_RSA_WITH_AES_128_CBC_SHA',
'TLS_RSA_WITH_AES_256_CBC_SHA256',
'TLS_RSA_WITH_AES_256_CBC_SHA',
'TLS_RSA_WITH_RC4_128_SHA',
'TLS_RSA_WITH_3DES_EDE_CBC_SHA',
'TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256_P256',
'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256_P256',
'TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384_P384',
'TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384_P384',
'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA_P256',
'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA_P384',
'TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA_P256',
'TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA_P384'
)
$cipherSuitesAsString = [string]::join(',', $cipherSuitesOrder)
New-ItemProperty -path 'HKLM:\SOFTWARE\Policies\Microsoft\Cryptography\Configuration\SSL\00010002' \
-name 'Functions' -value $cipherSuitesAsString -PropertyType 'String' -Force | Out-Null
これらの設定を使用しても、IE6のサポート(SSLv3でRC4を使用)が可能であり、構成のセキュリティは許容範囲を超えています。 IE6と本当に古いクライアントだけがSSLv3またはRC4暗号を使用します。
IIS 7.5&8の設定に役立つ優れたPowerShellスクリプトがあります。
このPowerShellスクリプトは、Microsoft Internet Information Server 7.5および8.0(IIS)をセットアップして、TLS 1.1およびTLS 1.2プロトコルをサポートし、転送秘密をサポートします。さらに、安全でないSSL2とSSL3、およびブラウザーもフォールバックする可能性のあるすべての安全でない弱い暗号を無効にすることにより、SSL接続のセキュリティを強化します。このスクリプトは、現在のベストプラクティスルールを実装しています。
https://www.hass.de/content/setup-your-iis-ssl-perfect-forward-secrecy-and-tls-12