Vraag Op IIS, hoe patch ik de kwetsbaarheid van SSL 3.0 POODLE (CVE-2014-3566)?


Hoe kan ik patchen CVE-2014-3566 op een systeem met Windows Server 2012 waarop IIS wordt uitgevoerd?

Is er een patch in Windows Update of moet ik doen een registerwijziging om SSL 3.0 uit te schakelen?


50
2017-10-15 15:08


oorsprong


Er is een Microsoft Fix it 50495 op de MS KB-pagina waarnaar u bent gelinkt. - MattBianco
Ik heb geprobeerd Fix it 50495 uit te voeren op Windows 2008 en het is mislukt met de fout "Deze Microsoft Fix it is niet van toepassing op de versie van uw besturingssysteem of toepassing." Oh nou ja. - Josh


antwoorden:


Er is geen "patch". Het is een kwetsbaarheid in het protocol, geen bug in de implementatie.

In Windows Server 2003 tot 2012 R2 worden de SSL / TLS-protocollen beheerd door vlaggen in het register dat is ingesteld op HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols.

Als u SSLv3 wilt uitschakelen, waarmee de POODLE-kwetsbaarheid is gemoeid, maakt u een subsleutel op de bovenstaande locatie (als deze nog niet aanwezig is) met de naam SSL 3.0 en, onder dat, een subsleutel genoemd Server (als het nog niet aanwezig is). Op deze locatie (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel\Protocols\SSL 3.0\Server) maak een DWORD-waarde met de naam Enabled en laat het staan ​​op 0.

Het uitschakelen van SSL 2.0, wat u ook zou moeten doen, gebeurt op dezelfde manier, behalve dat u een sleutel met de naam gebruikt SSL 2.0 in het bovenstaande registerpad.

Ik heb niet alle versies getest, maar ik denk dat het waarschijnlijk veilig is om aan te nemen dat een herstart nodig is om deze wijziging door te voeren.


56
2017-10-15 18:26



opnieuw opstarten niet noodzakelijk op Windows Server 2012 tenminste. je kunt voor en na verifiëren bij poodlebleed.com door uw URL in te voeren en 443 voor SSL-poort - Simon
Bedankt, weet je of ik PCT ook moet uitschakelen omdat het zogenaamd standaard is uitgeschakeld en toch niet op deze manier is uitgeschakeld? - Mark Broadhurst
@Simon, is er iets anders dat je moet doen om de wijzigingen door te voeren? Ik heb zojuist de registerupdates gemaakt op een server van 2012, maar er wordt nog steeds gemeld dat SSL3 is ingeschakeld. - Abe Miessler
Ik geloof het niet. Ik neem aan dat je iis en mijn Apache gebruikt en je hebt die website gecontroleerd. En je weet zeker dat je de exact juiste registersleutel hebt? - Simon
* NIET apache (ik weet niet waar 'mijn Apache' vandaan kwam!) - Simon


Voor het gemak van de installatie heb ik dit "disable ssl 2 and 3.reg" bestand afgeleid van Evan's antwoord hierboven:

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

23
2017-10-17 01:23





Powershell om SSL2 en SSL3 uit te schakelen:

2..3 | %{ New-ItemProperty -Path "HKLM:SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL $_.0\Server" -Name Enabled -PropertyType "DWORD" -Value 0 -Force }

11
2017-10-28 21:21



Helaas werkt het bovenstaande alleen als de registersubsleutels al aanwezig zijn. Zou leuk zijn om PS te zien die ze kan maken als ze niet bestaat of ze te updaten als ze dat wel doen. - Jaans
Weet je het zeker? De mijne maakt ze voor mij. Het kan verschillen in lagere versies van Powershell en Windows (ik gebruik v2 op Server 2008 R2) - Vasili Syrakis
Yup ... zie screenshot geüpload naar: i.imgur.com/rctFH4D.png PS 3.0 en WSMan 3.0 gebruiken. - Jaans


Er is een gratis hulpprogramma van Nartac dat u kunt gebruiken om de protocollen uit te schakelen.

https://www.nartac.com/Products/IISCrypto/Default.aspx


8
2017-10-20 15:44



Deze tool is geweldig, bedankt voor het plaatsen ervan - bladefist


Hier is een PowerShell die zal testen of de registersleutels aanwezig zijn, maak ze indien nodig en voer dan de nodige waarden in om SSL 2.0 en SSL 3.0 uit te schakelen.

$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

Dit kan worden geïmplementeerd met behulp van SCCM of de opdrachtregel - zorg er gewoon voor dat de SCCM-taak of opdrachtregel als beheerder wordt uitgevoerd. Sommige websites met de registerinformatie geven aan dat opnieuw opstarten vereist is nadat de registersleutels zijn gemaakt en / of gewijzigd.


7
2017-10-21 18:47





Of neem een ​​kopie van IISCrypto en klik op de best practices-knop, schakel SSL 3.0 uit en pas dan toe, en start opnieuw op


3
2017-12-15 23:22





U hoeft SSL3 niet uit te schakelen. U kunt SSL3 inschakelen en hebben POODLE gematigd.

# 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

Met deze instellingen zou je nog steeds IE6-ondersteuning hebben (met SSLv3 met RC4) en een meer dan acceptabele configuratie hebben. Alleen IE6 en echt oude client zouden SSLv3- of RC4-coderingen gebruiken.


2
2018-05-27 09:40





Er is een goed PowerShell-script dat helpt bij IIS 7.5 & 8-configuratie:

Dit PowerShell-script stelt uw Microsoft Internet-informatie in   Server 7.5 en 8.0 (IIS) om TLS 1.1 en TLS 1.2-protocol te ondersteunen met   Voorwaartse geheimhouding. Bovendien verhoogt het de veiligheid van uw SSL   verbindingen door onbeveiligde SSL2 en SSL3 en alle onveilig uit te schakelen   en zwakke cijfers dat een browser ook kan terugvallen. Dit script   implementeert de huidige regels voor beste praktijken.

https://www.hass.de/content/setup-your-iis-ssl-perfect-forward-secrecy-and-tls-12


2



Hmm, niet zeker waarom dit gestemd was. Ik heb dat hulpprogramma zelf gebruikt en het werkt perfect. - David Thomas
Dit ziet er goed uit, maar tenminste één man heeft problemen gehad na het uitvoeren ervan - weet niet of het geïsoleerd is gezien andere mensen zeggen dat het geweldig is. - Mark