Weitere ähnliche Inhalte
Ähnlich wie Domino HTTP Security - Neuerungen (20)
Domino HTTP Security - Neuerungen
- 1. Belsoft Collaboration AG Hauptsitz Zweigstelle SG Zweigstelle SZ
www.belsoft-collaboration.ch Russenweg 26
CH-8008 Zürich
T +41 44 388 13 31
Espenstrasse 139 Eichenstrasse 2
CH-9443 Widnau (SG) 8808 Pfäffikon SZ
T +41 71 727 75 75 T +41 55 410 55 50
Domino HTTP Security - Neuerungen
Toni Feric
April, 2015
- 5. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
Was bedeuten diese Neuerungen konkret?
• SSLv3 abschalten (notes.ini)
• Upgrade auf min. R9.0.1.FP3IF2
• HTTP Reverse Proxy empfohlen (Sophos UTM, NGINX)
• Domino R8.5 und älter - nicht mehr direkt am Internet
• Fixpack/Interim-Fix zeitnah installieren:
http://ibm.com/support/mynotifications
• Neue Security Features nicht konfigurierbar via GUI im DDIR -> notes.ini
• Installation von Fixpack/IF schaltet ältere Features ab
• Cipherlisten im DDIR : WYSI-not-WYG
- 6. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
Strategie eines System-Administrators
• Domino Updates zeitnah installieren. – Erledigt!
• Strategie ändern
• Features müssen von Hand nachkonfiguriert werden
• SSLv3 abschalten, PFS einschalten, Cipherliste anpassen
• Reverse Proxy aktuell halten, Domino gelegentlich updaten
• Strategie ändern?
• Domino ohne https?
• Nicht sicher für: User-Login, DMZ, SSO-Tickets/Cookies, non-public Daten
• Unverschlüsselte Dienste/Protokolle ganz abschalten
• Browser-Update -> Zugriff auf Domino Webdienst geht nicht mehr
• NGINX, Apache: SSLv3 aus der Konfig entfernt?
- 8. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
DISABLE_SSLV3=1 (notes.ini)
• Auf jedem Domino Server setzen. (HTTP, SMTP, POP3, IMAP, LDAP)
• Zuvor, den neusten (oder entsprechenden) Fix installieren:
http://www-01.ibm.com/support/docview.wss?uid=swg21695998
• Alte Domino Keyrings mit MD5 Signaturen müssen vorher ersetzt werden:
http://www-01.ibm.com/support/docview.wss?uid=swg21701159
• Nur in Ausnahmefällen SSLv3 nicht abschalten (Kompatibilität)
• SMTP Gateway?
• Ev. bei serverseitigem LDAP Lookup (z.B. Directory Assistance)
• Konfiguration im Domino Directory wird ignoriert
- 9. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
Verbindungs-Fehler
• Client kann keine Verbindung zum Server aufbauen.
→ (Client kann kein TLS, Server akzeptiert kein SSL)
• Meldung im Log.nsf und auf der Konsole:
• Ist dieser spezifische Client wichtig?
→ Im Zweifelsfall SSLv3 temporär wieder einschalten, Lösung suchen.
→ Wenn möglich, TLS auf dem Remote-System einschalten.
→ Ziel sollte sein, SSLv3 abzuschalten. Es ist nicht sicher.
• Ev. Meldung im Monitoring einbauen.
- 10. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
Perfect Forward Secrecy (PFS)
• Sicherer Schlüsselaustausch
• Session Key wird nicht übers Netz übertragen
• Implementation durch Diffie-Hellman Methode (DHE)
• Wenn Private Key kompromittiert wird:
• Datenverkehr von Man-In-The-Middle nicht entschlüsselbar
• Rückwirkend keine Entschlüsselung aufgezeichneter Daten möglich
• Ab Domino R9.0.1FP3IF2 verfügbar
• PFS defaultmässig nicht aktiviert (braucht mehr CPU Leistung)
• Über notes.ini Variable SSLCipherSpec konfigurierbar
• Bei Problemen mit Java 1.6/1.7 : SSL_DH_KEYSIZE=1024
• Domino: Noch kein DHE mit Elliptic-Curve (ECDHE)
- 15. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
Entscheidungshilfe für Cipher Bewertung
• Wie bewertet man die Bezeichnung eines Ciphers (z.B.
DHE_RSA_WITH_AES_128_CBC_SHA)
Funktion Abkürzung Erklärung Bewertung
Schlüsselaustausch-Verfahren DHE
(ECDHE)
Diffie-Hellman (PFS)
(noch nicht unterstützt)
+
(++)
Asymmetrisches Verfahren
(Private/Public Key) für
Negotiation/Schlüsselaustausch
RSA
(ECC) (noch nicht unterstützt)
+
(++)
Symmetrisches Verfahren für
Datenübertragung
AES
3DES_EDE
RC4
Für legacy Windows
+
0
-
Schlüsselstärke (bit) für
symmetrischen Schlüssel
>128 bit
<128 bit
+
-
Betriebsart für Block-Cipher
(symmetrische Schlüssel)
GCM
CBC
(AEAD)
Cipher Block Chaining
+
0
Hash Algorithmus für MAC Integrity-
Checking (symmetrische Schlüssel)
SHA-384, SHA-256
SHA (=SHA-1)
MD5
+
0
--
- 16. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
Konkrete Vorschläge (SSLCipherSpec)
• iNotes & Applikations-Webserver:
SSLCipherSpec=9D9C3D3C352F3339676B9E9F
DISABLE_SSLV3=1
• Falls alte Windows XP+IE Clients verbinden sollen:
0A zu der SSLCipherSpec Variable hinzufügen
( 0A : RSA_WITH_3DES_EDE_CBC_SHA )
• Traveler
SSLCipherSpec=9D9C3D3C352F3339676B9E9F
DISABLE_SSLV3=1
• SMTP
SSLCipherSpec=9D9C3D3C352F0A3339676B9E9F
DISABLE_SSLV3=1
RouterFallbackNonTLS=1
• Bei Verbindungs-Problemen mit alten Systemen:
SSL_ENABLE_INSECURE_SSLV2_HELLO=1 (nicht empfohlen)
- 20. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
Cipher testen & bewerten - Tipps
• Security-Scan mit SSL Labs vom Internet her:
https://www.ssllabs.com/ssltest/
Protocols
• TLS1.2, TLS1.0 aktiv, kein SSL
Cipher Suites
• DHE (PFS) Cipher verfügbar?
• «DH 1024 bits WEAK» – Wird SSL_DH_KEYSIZE=1024 (notes.ini) verwendet?
Handshake Simulation
• Windows IE / XP, Java 6, Java 7 : «Protocol or Cipher Suite mismatch»
→ Alte Systeme unterstützen nur noch schwache/unsichere Cipher
Protocol Details
• «Forward Secrecy – with some browsers»
→ weil Elliptic Curves noch nicht unterstützt sind
- 23. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
Wechsel zu SHA-2 Internet Zertifikaten
• SHA: Secure Hashing Algorithmus
• Signatur von Internet Zertifikaten
• Überprüfung von Datenintegrität bei Datenübertragung (Block-Cipher)
• SHA-1 Zertifikate werden praktisch nicht mehr ausgestellt
• SHA-2 = SHA-256 (oder SHA-224, SHA-384, SHA-512)
• Theoretische Attacken gegen SHA-1 bereits bekannt
• Domino R8.* - inkompatibel mit SHA-2!
→ Empfehlung: 2015 alle Internet Zertifikate umstellen auf SHA-2
SHA
- 24. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
kyrtool.exe
• Neues Tool von IBM
• Für Verwaltung von Domino Keyrings
• Erstellen von neuen Keyrings (*.kyr + *.sth)
• Hinzufügen von Internet Zertifikaten
• Kommandozeile (ohne GUI)
• Windows + Linux
• Achtung: Neue Version seit 02.04.2015
• Keyrings mit SHA-2 Zertifikaten inkompatibel mit Domino R8*
• Kyrtool benötigt ev. Installation von Microsoft Visual C++ Runtime
• Notes DB «Domino Server Certificate Admin» nicht mehr verwenden (ggf.
bei älteren Domino Servern)
- 27. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
Allgemeine Sicherheits-Prinzipien
• Alle Daten, die nicht ausschliesslich für die Öffentlichkeit
sind, sollten durch Authentisierung geschützt sein.
• Authentifizierungs-Daten (Usernamen, Passwort, Cookie,
Zertifikatsaustausch) sollten verschlüsselt sein.
• Alle Daten, die Authentifizierung erfordern, sollten verschlüsselt
übertragen werden.
• Sensitive Daten sollten zudem nur in verschlüsselter Form abgelegt
werden.
• Dies gilt sowohl für Kommunikation übers Internet, als auch für interne
Kommunikation.
• Dies gilt für alle Protokolle. (inkl. LDAP)
Referenz: Daniel Nashed, David Kern
- 29. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
iNotes Redirect Datenbank (anonymer Zugriff abgeschaltet)
• Wenn anonymer Zugriff abgeschaltet ist, kann das Login
Formular nicht richtig angezeigt werden.
→ Weil User noch nicht authentisiert sind, wenn sie auf das Login
Formular zugreifen.
• Lösung: URL’s die trotzdem anonym erreichbar sein müssen, können in
einer notes.ini Variable aufgelistet werden:
HTTPPublicURLs=/redir.nsf/*
• Mehrere URL’s durch Kommas getrennt
- 32. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
Authentisierung – Basic Authentication
• Basic Authentication:
• Usernamen + Passwort werden vom Browser in jedem
HTTP GET Request zum Webserver mitgeschickt.
→ Empfehlung: Wenn möglich, nie verwenden.
• Vermutlich mehrmals pro Mausklick.
• Ohne https-Verbindung: Credentials aller Benutzer im Klartext
• Passwörter können ev. in Server-Logs gespeichert werden
• Merkmal: separates Login-Fenster über dem Browser
• Logoff nicht möglich (Browser Programm beenden)
• Im Domino Directory:
• Session authentication: Disabled
- 33. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
Authentisierung – Multiple Server SSO
• Bevorzugte Authentisierungs-Methode für Domino Web Server.
• Browser bekommt vom Server ein verschlüsseltes LTPA Token.
• Browser speichert dieses verschlüsseltes Session-Cookie im Cache.
• Browser kann verschlüsseltes Cookie nicht entschlüsseln.
• Browser schickt Cookie mit jedem HTTP GET Reqest.
• Nach Timeout oder Logoff der Session ist
das Cookie nicht mehr gültig.
• Eigenschaft: Login Aufforderung in der
Webseite (Formular).
• Cookies müssen vor Diebstahl geschützt
werden (-> https).
- 36. ©2014BelsoftCollaborationAG|www.belsoft-collaboration.ch
Quellenverzeichnis
• ConnectED2015, BP102: «Practical IBM Notes and Domino Internet Security» (Daniel Nashed, David Kern)
• IBM Notes and Domino wiki: «TLS Cipher Configuration»
http://www-10.lotus.com/ldd/dominowiki.nsf/dx/TLS_Cipher_Configuration
• Daniel Nashed’s Blog: «First Perfect Forward Secrecty Ciphers shipped with 9.0.1.FP3 IF2»
http://blog.nashcom.de/nashcomblog.nsf/dx/first-perfect-forward-secrecy-ciphers-shipped-with-9.0.1-fp3-if2.htm
• Darren Duke’s Blog: «TLS 1.2 in Domino and the settings I use»
http://blog.darrenduke.net/Darren/DDBZ.nsf/dx/tls-1.2-in-domino-and-the-settings-i-use.htm
• Wikipedia: «Transport Layer Security»
http://de.wikipedia.org/wiki/Transport_Layer_Security
• Wikipedia: «Forward Secrecy»
http://en.wikipedia.org/wiki/Forward_secrecy
• YouTube: «Diffie Hellman Key Exchange»
https://www.youtube.com/watch?v=YEBfamv-_do
• Wikipedia: «POODLE»
http://de.wikipedia.org/wiki/Poodle
• Wikipedia: «Heartbleed»
http://de.wikipedia.org/wiki/Heartbleed
• Wikipedia: «Secure Hash Algorithm»
http://de.wikipedia.org/wiki/Secure_Hash_Algorithm
• Div. Weitere Wikipedia Artikel (RSA, AES, RC4, DES, 3DES, MD5, Elliptic Curve Cryptography, CBC, GCM, u.a.)