In meinem letzten Posting habe ich beschrieben wie man durch Deaktivieren von SSL 2.0 und SSL 3.0 einen IIS (z.B. für OWA) gegen die „Poodle“ Attacke absichern kann. Dies funktioniert auch wie beschrieben und kann auf poodlescan.com überprüft werden.
Jetzt bin ich auf eine erheblich leistungsfähigere Testsite auf ssllabs.com gestoßen, die mich zu weiteren Nachforschungen animiert hat. Neben der Deaktivierung von SSL 2.0 und SSL3.0 (siehe oben) kann man durch zwei vergleichbare, zusätzliche Schritte die Sicherheit der Verbindungen mit dem IIS deutlich erhöhen:
- Auf Windows Server 2008 R2 und neuer sind die Protokolle TLS 1.1 und TLS 1.2 verfügbar aber deaktivert. Diese sollten durch Erzeugung der entsprechenden Registry-Keys aktiviert werden. Es schadet nichts diese Registry-Keys auch auf Windows Server 2008 anzulegen, sie werden dort ignoriert.
- Durch die Aktivierung/Deaktivierung sowie Umsortierung der verwendeten Verschlüsselungsverfahren („cipher suites“) wird für fast alle Verbindungen „Forward Secrecy“ ermöglicht. Dies funktionert auch auf einem Windows Server 2008. IE6 unter Windows XP kann nach diesen Änderungen nicht mehr auf den Server zugreifen, aber das sollte heutzutage kein Problem mehr sein.
All diese (zum Teil in KB245030 beschriebenen) Änderungen werden durch Anlegen/Ändern von Registry-Keys unterhalb der beiden folgenden Stellen durchgeführt:
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel
- HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Cryptography\Configuration\SSL\00010002
Wenn durch die beschriebenen Änderungen irgendwelche Probleme entstehen, kann man den komplette Inhalt dieser beiden Keys löschen und den Server neu starten. Die Defaultwerte werden dabei automatisch neu erzeugt.
In einem Blog habe ich ein sehr ausführliches PowerShell-Script (lokale Kopie) gefunden (Downloadlink ganz unten auf der Seite), dass alle benötigten Registry-Änderungen automatisch durchführt (wenn PowerShell als Administrator gestartet wird). Sicherheitshalber sollte vor dem Start des Scripts der Inhalt der beiden beschriebenen Keys (…\SChannel und …\00010002) geleert werden. Anschließend ist zwingend ein Server-Neustart erforderlich. Den Erfolg der Änderungen kann man dann auf ssllabs.com überprüfen.