Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Admincamp 2016 - Securing IBM Collaboration with TLS (German)

1,429 views

Published on

Die Angreifbarkeit der IBM-Webdienste hat es erfoderlich gemacht, dass IBM mit einem TLS-Patch nachbessert. 
Diese Session zeigt Ihnen wie Sie Ihre IBM Collaborationsumgebungen (Domino, Websphere) auf TLS und aktuelle Ciphertechniken umstellen und wie Sie Web-Zertifikate, die den heutigen Standards (SHA2) entsprechen, erstellen (kyrtool, ikeyman)

Published in: Internet
  • Be the first to comment

  • Be the first to like this

Admincamp 2016 - Securing IBM Collaboration with TLS (German)

  1. 1. Notes & Domino –> mit Verse und On-PremisesAdminCamp 2016 – Sept. 19-21 Absicherung der IBM Collaboration Umgebungen mit TLS 20. September 2016, Admincamp 2016 Alexander Novak, alexander.novak@edcom.de, Tel.: +49 89 38 40 850 edcom Software & Consulting GmbH, Baierbrunner Straße 39, 81379 München www.edcom.de / noviblog.net
  2. 2. Seite 2AdminCamp 2016 – Sept. 19-21 Begriffe Domino & TLS Einstellungen/Konfiguration Domino SSL Key Erstellung (Kyrtool) Websphere SSL Konfiguration Agenda
  3. 3. Seite 3AdminCamp 2016 – Sept. 19-21 Hybrides Verschlüsselungsprotokoll, das Daten im Internet sicher transferiert werden. Solche Techniken werden vor allem eingesetzt, wenn vertrauliche Daten (zum Beispiel Bankgeschäfte im Internet) übermittelt werden. SSL 3.0 (veraltet) SSL 3.1 = TLS 1.0 (Rename) TLS 1.0 bis TLS 1.2 TLS 1.3 (in Bearbeitung) Protokolle: HTTP, IMAP, POP3, SMTP, LDAP SSL (Secure Socket Layer) / TLS (Transport Layer Security)
  4. 4. Seite 4AdminCamp 2016 – Sept. 19-21
  5. 5. Seite 5AdminCamp 2016 – Sept. 19-21 Im Protokoll Transport Layer Security (TLS) legt die Cipher Suite fest, welche Algorithmen zum Aufbau einer gesicherten Datenverbindung verwendet werden sollen. Dabei identifiziert jede Cipher Suite eine Kombination aus vier Algorithmen: Schlüsselaustausch: RSA, DH (auch ADH, ECDH), PSK Authentifizierung: RSA, DSA (auch ECDSA), PSK Hashfunktion: MD5, SHA Verschlüsselung: keine, RC4, DES, 3DES, AES Cipher Suite
  6. 6. Seite 6AdminCamp 2016 – Sept. 19-21 RSA:= Rivest Shamir Adleman Asymetrisches Verfahren (public/privat) zum Verschlüsselung und digitalen Signieren Wird oft mit symetrischen Verfahren kombiniert (z.B. 3DES, AES) DH:= Diffie-Hellmann Schlüsselaustauschprotokoll zur Erzeugung geheimer Schlüssel für zwei Kommunikationspartner DSA:= Digital Signature Algorithm Standard Algorythmus der US-Regierung für digitale Signaturen EC*:= Elliptic Curve * (z.B. ECDH, ECDSA) Technik zur Übertragung der Schlüssel in elliptischen Kurven Verschlüsselungstechniken/algorithmen
  7. 7. Seite 7AdminCamp 2016 – Sept. 19-21 PSK:= Pre-Shared Key Verschlüsselung mit vorher vereinbartem Schlüssel = Verteilungsproblem Wird oft bei WLANs eingesetzt RC4:= Rons Code Symmetrische Stromverschlüsselung NOT SECURE Einsatz durch das IETF (Internet Engineering Task Force) seit Feb. 2015 verboten DES:= Data Encryption Standard Symmetrische Blockverschlüsselung (56Bit), Mehrfahrnutzung (TripleDES / 3DES) Gilt als NOT SECURE Verschlüsselungstechniken/algorithmen
  8. 8. Seite 8AdminCamp 2016 – Sept. 19-21 AES := Advanced Encryption Standard Symmetrische Blockverschlüsselung (128, 192, 256 Bit) Nachfolger von DES; Vorgabverschlüsselung für Regierungen AE AD := Authenticated Encryption with Associated Data Symmetrische Blockverschlüsselung Prüfung der Daten auf Vertraulichkeit, Integrität und Authentizität Schutz vor Angriffen gegenüber Hashes und Cipher Block Chaining (CBC) Verschlüsselungstechniken/algorithmen
  9. 9. Seite 9AdminCamp 2016 – Sept. 19-21 Betriesmodi für Blockchiffres Definition wie mit einer Blockchiffre (AES, DES, AEAD) verschlüsselt werden soll CBC := Cipher Block Chaining Mode CTR := Counter Mode GCM := Galois/Counter Mode GMAC := Galois Message Authentication Mode (GCM nur Authentifizierung) HMAC := Keyed-Hash Message Authentication Code Nachrichtenauthentifizierungscode basierend auf Hash-Funktionen Gewissheit über den Ursprung von Daten/Nachrichten zu erhalten und ihre Integrität zu überprüfen. Verschlüsselungstechniken/algorithmen
  10. 10. Seite 10AdminCamp 2016 – Sept. 19-21 PFS := Perfect Forward Secrecy Eigenschaft der Schlüsselaustauschprotokolle (z.B. DH) Verhindert die Entschlüsselung älterer Datenübermittlungen wenn der Langzeitschlüssel aufgedeckt (kompromittiert) wurde HSTS := HTTP Strict Transport Security ein Sicherheitsmechanismus für HTTPS-Verbindungen, der vor der Aushebelung der Verbindungsverschlüsselung durch eine SSL downgrade (TLS>SSL) Attacke schützen soll Verschlüsselungstechniken/algorithmen
  11. 11. Seite 11AdminCamp 2016 – Sept. 19-21 MD5 := Message Digest Algorithm 5 ist eine weit verbreitete kryptologischer Hashfunktionen, die aus einer beliebigen Nachricht einen 128-Bit-Hashwert erzeugt. MD5 gilt inzwischen als NOT SECURE, da es mit überschaubarem Aufwand möglich ist, unterschiedliche Nachrichten zu erzeugen, die den gleichen MD5-Hashwert aufweisen SHA := Secure Hash Algorithm bezeichnet eine Gruppe standardisierter kryptologischer Hashfunktionen. SHA-1 mit 128 Bit, SHA-2 Familie, SHA-3 Familie SHA-1 gilt seit 2005 NOT SECURE und es wird vom BSI seit 2010 empfohlen diesen nicht mehr zu verwenden SHA-1 wird aktuell und zukünftig von den Browser geblockt SHA1-basierte SSL-Zertifikate und Browserwarnungen Verschlüsselungstechniken/algorithmen
  12. 12. Seite 12AdminCamp 2016 – Sept. 19-21 SHA-1 (160 Bit Länge) << DO NOT USE http://de.wikipedia.org/wiki/Secure_Hash_Algorithm SHA-2 / SHA-256 (224 Bit, 256 Bit, 384 Bit und 512 Bit) http://de.wikipedia.org/wiki/SHA-2 SHA-3 „Keccak“ (128 Bit, 256 Bit) Neues Hashverfahren (Aug. 2015) mit „Zustandsvektor“, jedoch scheinbar langsam http://de.wikipedia.org/wiki/SHA-3 Secure Hash Algorithm (SHA) Techniken
  13. 13. Seite 13AdminCamp 2016 – Sept. 19-21 Man in the Middle Abfangen des Datentransfers (eine Art Proxy) ohne Kenntnis des Anwenders BEAST := Browser Exploit Against SSL/TLS Cipher Block Chaining (CBC) Verwundbarkeit (Man in the Middle) SSL renegotiation SSL Neuverhandlung HTTP/s Sicherheitslücken
  14. 14. Seite 14AdminCamp 2016 – Sept. 19-21 Padding Oracle On Downgraded Legacy Encryption ... ist eine schwerwiegende Sicherheitslücke in verschiedenen Internet- Protokollen, wodurch über verschlüsselte Verbindungen private Daten von Clients und Servern ausgelesen werden können (Quelle: Wikipedia) Sicherheitslücke bei SSL V3.0 und seit Ende 2014 auch TLS V1.0/1.1 SSL Downgrade & Cipher Block Chaining (CBC) Angriff Referenz(en) https://www.openssl.org/~bodo/ssl-poodle.pdf http://de.wikipedia.org/wiki/Poodle HTTP/s Sicherheitslücken - Poodle
  15. 15. Seite 15AdminCamp 2016 – Sept. 19-21 ... ein schwerwiegender Programmfehler in älteren Versionen der Open-Source- Bibliothek OpenSSL, durch den über verschlüsselte TLS-Verbindungen private Daten von Clients und Servern ausgelesen werden können. (Quelle: Wikipedia) Sicherheitslücke bei OpenSSL V1.0.1 – 1.0.1f Lücke wurde mit Version 1.0.1g (April 2014) behoben Referenz(en) http://de.wikipedia.org/wiki/Heartbleed Jan. 2016: Weitere Sicherheitslücke in OpenSSL V1.0.1 und V1.0.2 OpenSSL fixt kritische Sicherheitslücke  fixed mit V1.0.1r/V1.0.2f HTTP/s Sicherheitslücken - Heartbleed
  16. 16. Seite 16AdminCamp 2016 – Sept. 19-21 FREAK := Factoring RSA Export Keys Schwachstelle im RSA 512 Bit Schlüssel (cipher = RSA_Export); trotz höherer cipher wird vom Angreifer ein „fall back“ auf den unsicheren RSA 512 Bit Schlüssel erzwungen https://de.wikipedia.org/wiki/FREAK_%28Sicherheitsl%C3%BCcke%29 Domino ist davon nicht betroffen Websphere IFIX: PI36563 - Interim fix to remove the RSA_Export and RC4 ciphers RC4 Bar Mitzvah Attacke Angriff auf die RC4 Chiffres https://en.wikipedia.org/wiki/Bar_mitzvah_attack RC4-SHA Cipher deaktivieren bzw entfernen HTTP/s Sicherheitslücken
  17. 17. Seite 17AdminCamp 2016 – Sept. 19-21 Blockchiffren (cipher) AES-128, AES-192, AES-256 mit folgenden Betriebsarten Galois-Counter-Mode (GCM) Cipher-Block Chaining (CBC) Counter Mode (CTR) Asymetrische Verschlüsselung (encryption) Diffie-Hellman EC Diffie-Hellmann (ECDHE) RSA Hashing SHA-256, SHA-512/256, SHA-384 und SHA-512 SHA3-256, SHA3-384, SHA3-512 BSI Empfehlung (Feb. 2016) BSI TR-02102 Kryptographische Verfahren: Empfehlungen und Schlüssellängen
  18. 18. Seite 18AdminCamp 2016 – Sept. 19-21 Begriffe Domino & TLS Einstellungen/Konfiguration Domino SSL Key Erstellung (Kyrtool) Websphere SSL Konfiguration Agenda
  19. 19. Seite 19AdminCamp 2016 – Sept. 19-21 IBM Domino 2014 HTTP Stack bietet nur SSL V3.0 Kein natives TLS Protokoll TLS nur mit IBM HTTP Server IHS Plug-in mit IBM Domino 9.x Standalone Auf Druck der Kunden wurden Interims Fixes (IF) für TLS 1.0 (HTTP, SMTP, LDAP, POP3 & IMAP) entwickelt SSLv3 POODLE Angreifbarkeit (CVE-2014-3566) Fix (Nov 2014) IBM Notes/Domino 9.0.1 FP2 IF1 & 9.0 IF6 IBM Notes/Domino 8.5.3 FP6 IF4, 8.5.2 FP4 IF2, 8.5.1 FP5 IF2 IBM Domino HTTP Stack 2014
  20. 20. Seite 20AdminCamp 2016 – Sept. 19-21 Weitere Fix(es) wg. Poodle Angriffe im TLS v1.0 TLS POODLE Angreifbarkeit (CVE-2014-8730) Fix (Dez. 2014) IBM Notes/Domino 9.0.1 FP2 IF3 & 9.0 IF7 IBM Notes/Domino 8.5.3 FP6 IF6, 8.5.2 FP4 IF3, 8.5.1 FP5 IF3 Automatische Deaktivierung SSL V2 IMAP SSL V3 via Notes.ini := DISABLE_SSLV3=1 SSL renegotiation Alle schwachen Cipher (<128Bit) wurden entfernt Ciphersuite TLS_FALLBACK_SCSV (verhindert das Erzwingen der SSLV3-Verbindung) „reordering“ Cipher Liste um AEC cipher zuerst zu nutzen SSLv3 POODLE Angreifbarkeit der IBM JVM 1.6 SR16 FP1 Aktualisierung der IBM JVM 1.6 SR16 FP2 für IBM Notes/Domino 9.0.1 FP2 & 8.5.3 FP6 Security Bulletin: Multiple vulnerabilities in IBM Java SDK affect IBM Notes and Domino IBM Notes/Domino Fix – Dez 2014
  21. 21. Seite 21AdminCamp 2016 – Sept. 19-21 Implementierung von TLS 1.0 (Nov 2014) IBM Notes/Domino 9.0.1 FP2 IF1 & 9.0 IF6 IBM Notes/Domino 8.5.3 FP6 IF4, 8.5.2 FP4 IF2, 8.5.1 FP5 IF2 SHA-2 Support (Nov 2014) IBM Notes/Domino 9.0.1 FP2 IF1 & 9.0 IF6 Implementierung von TLS 1.2 (Apr 2015) IBM Domino 9.0.1 FP3 IF2 & IBM Notes 9.0.1 FP3 IF3 HTTP, SMTP, LDAP, POP3 & IMAP https://www-10.lotus.com/ldd/dominowiki.nsf/dx/TLS_1.2 Perfect Forward Secrecy (PFS) via Ephemeral Diffie-Hellman (DHE) Authenticated Encryption with Associated Data (AEAD) mit Advanced Encryption Standard (AES) Implementierung von HTTP Strict Transport Security (HSTS) IBM Notes/Domino Security Fix Historie
  22. 22. Seite 22AdminCamp 2016 – Sept. 19-21 „two image parsing buffer overflow“ in Dojo (Mai 2015) IBM Notes/Domino 9.0.1 FP3 IF3 IBM Notes/Domino 8.5.3 FP6 IF6 http://www-01.ibm.com/support/docview.wss?uid=swg21883245 Implementierung von Eliptic Curve DHE (ECDHE) (Okt 2015) IBM Domino 9.0.1 FP4 IF2 Apple App Transport Security verwenden ECDHE Cipher http://www-01.ibm.com/support/docview.wss?uid=swg21966059 Domino GIF processing “overflow“ (Okt 2015) IBM Notes/Domino 9.0.1 FP4 IF3 IBM Notes/Domino 8.5.3 FP6 IF10 http://www-01.ibm.com/support/docview.wss?uid=swg21969050 IBM Notes/Domino Security Fix Historie
  23. 23. Seite 23AdminCamp 2016 – Sept. 19-21 MD5 SLOTH TLS 1.2 Verwundbarkeit (Jan 2016) IBM Domino 9.0.1 FP5 IF1 IBM Notes 9.0.1 FP5 IF1 (Linux), FP5 IF2 (Windows), FP1 IF1 (Mac 64 Bit) http://www-01.ibm.com/support/docview.wss?uid=swg21974958 Support für Extended Master Secret (TLS 1.2) Deaktivierung der „TLS Session Resumption“ (Wiederaufnahme der bestehenden Verbindung) für ausgehende Verbindungen IBM Java SDK V6SR16FP15 SLOTH TLS1.2 Verwundbarkeit (Feb 2016) IBM Notes/Domino 9.0.1 FP5 JVM Patch - V6SR16FP20 Multiple Vulnerabilities in IBM Java SDK affect IBM Domino How to use the IBM Notes & Domino JVM installer <ProgramFiles>jvmpatcher.log IBM Notes/Domino Security Fix Historie
  24. 24. Seite 24AdminCamp 2016 – Sept. 19-21 Flexera InstallShield Verwundbarkeit (Juni 2016) IBM Notes 8.5-9.0.1 Installer, IBM ICAA 1.0. Trojaner im „untrusted“ Suchpfad kann bei der InstallShield Installation evlt. Adminrechte auf dem System erlangen Workaround: <systemdir</mapistub.dll & mapi32.dll to <installdir> IBM ICAA InstallShield vulnerable to DLL planting (CVE-2016-2542) IBM Notes InstallShield vulnerable to DLL planting (CVE-2016-2542) IBM Traveler XML External Entity Injection (XXE) Verwundbarkeit (Juli 2016) IBM Traveler 9.0.1 FP11 IBM Domino 8.5.3 – 9.0.1 XML External Entities Injection Vulnerability in IBM Traveler (CVE-2016-3039) IBM Notes/Domino Security Fix Historie
  25. 25. Seite 25AdminCamp 2016 – Sept. 19-21 IBM Java SDK V6SR16FP25 Verwundbarkeit (Aug 2016) IBM Notes/Domino 8.5.3 FP6 / 9.0.1 FP6 JVM Patch - V6SR16FP30 IBM Notes/Domino 9.0.1 FP7 - JVM FP30 included Multiple Vulnerabilities in IBM Java SDK affect IBM Notes/Domino How to use the IBM Notes & Domino JVM installer = <ProgramFiles>jvmpatcher.log AES & SHA-2 Support für Notes Encryption (Sept. 2016) IBM Notes / Domino 9.0.1 FP7 Authentication encryption = SHA-2 anstatt SHA-1 (HMAC-SHA 256 = Vorgabe FP7) Port ecryption = AES oder SHA-2 anstatt RC4 HMAC-SHA256, AES-CBC, AES GCM, Forward Secrecy Authentication & port encryption enhancements in Notes and Domino 9.0.1 FP7 IBM Notes/Domino Security Fix Historie
  26. 26. Seite 26AdminCamp 2016 – Sept. 19-21 Die Java Klasse HttpsURLConnection verbindet sich mit dem TLSV1.0 Protokoll IBM Domino 9.0.1FP3 IF2+ TLSv1.2 Verbindung für Java Agents (HttpsURLConnection class) erzwingen Notes.ini JavaUserOptionsFile=C:DominoprogJVMjvmOptions.txt jvmOptions.txt https.protocols=TLSv1.2 Config Domino to connect over TLSv1.2 running Java agents HttpsURLConnection class IBM Domino Java Agents TLS Parameter
  27. 27. Seite 27AdminCamp 2016 – Sept. 19-21 DISABLE_SSLV3=1 Deaktivierung von SSLV3 SSL_DISABLE_TLS_10=1 Deaktivierung von TLS 1.0 (9.0.1FP3IF3+) SSL_DISABLE_TLS_12=1 Deaktivierung von TLS 1.2 (9.0.1FP5+) SSL_DISABLE_RENEGOTIATE=1 Unterbindet die SSL Neuverhandlung SSL_DISABLE_FALLBACK_SCSV=1 Deaktivierung der Fallback_SCSV Funktion > reduziert die Sicherheit IBM Domino TLS Parameter
  28. 28. Seite 28AdminCamp 2016 – Sept. 19-21 IBM Domino SSL/TLS Cipherorder – 9.0.1 F3 TLS 1.0 / SSLv3 - Default vs. complete DHE_RSA_WITH_AES_256_CBC_SHA (39) RSA_WITH_AES_256_CBC_SHA (35) RSA_WITH_AES_128_CBC_SHA (2F) DHE_RSA_WITH_AES_128_CBC_SHA (33) RSA_WITH_3DES_EDE_CBC_SHA (0A) RSA_WITH_RC4_128_SHA (05) TLS 1.2 - Default vs. complete DHE_RSA_WITH_AES_256_GCM_SHA384 (9F) DHE_RSA_WITH_AES_128_GCM_SHA256 (9E) DHE_RSA_WITH_AES_256_CBC_SHA256 (6B) DHE_RSA_WITH_AES_256_CBC_SHA (39) DHE_RSA_WITH_AES_128_CBC_SHA256 (67) RSA_WITH_AES_256_GCM_SHA384 (9D) RSA_WITH_AES_128_GCM_SHA256 (9C) RSA_WITH_AES_256_CBC_SHA256 (3D) RSA_WITH_AES_256_CBC_SHA (35) RSA_WITH_AES_128_CBC_SHA256 (3C) RSA_WITH_AES_128_CBC_SHA (2F) DHE_RSA_WITH_AES_128_CBC_SHA (33) RSA_WITH_3DES_EDE_CBC_SHA (0A) RSA_WITH_RC4_128_SHA (05)
  29. 29. Seite 29AdminCamp 2016 – Sept. 19-21 IBM Domino SSL/TLS Cipherorder – 9.0.1 FP4+ TLS 1.0 / SSLv3 - Default vs. complete ECDHE_RSA_WITH_AES_256_CBC_SHA (C014) DHE_RSA_WITH_AES_256_CBC_SHA (0039) ECDHE_RSA_WITH_AES_128_CBC_SHA (C013) RSA_WITH_AES_256_CBC_SHA (0035) RSA_WITH_AES_128_CBC_SHA (002F) RSA_WITH_3DES_EDE_CBC_SHA (000A) RSA_WITH_RC4_128_SHA (0005) TLS 1.2 – Default vs. complete ECDHE_RSA_WITH_AES_256_GCM_SHA384 (C030) DHE_RSA_WITH_AES_256_GCM_SHA384 (009F) ECDHE_RSA_WITH_AES_128_GCM_SHA256 (C02F) DHE_RSA_WITH_AES_128_GCM_SHA256 (009E) ECDHE_RSA_WITH_AES_256_CBC_SHA384 (C028) DHE_RSA_WITH_AES_256_CBC_SHA256 (006B) ECDHE_RSA_WITH_AES_256_CBC_SHA (C014) DHE_RSA_WITH_AES_256_CBC_SHA (0039) ECDHE_RSA_WITH_AES_128_CBC_SHA256 (C027) DHE_RSA_WITH_AES_128_CBC_SHA256 (0067) ECDHE_RSA_WITH_AES_128_CBC_SHA (C013) RSA_WITH_AES_256_GCM_SHA384 (009D) RSA_WITH_AES_128_GCM_SHA256 (009C) RSA_WITH_AES_256_CBC_SHA256 (003D) RSA_WITH_AES_256_CBC_SHA (0035) RSA_WITH_AES_128_CBC_SHA256 (003C) RSA_WITH_AES_128_CBC_SHA (002F) RSA_WITH_3DES_EDE_CBC_SHA (000A) RSA_WITH_RC4_128_SHA (0005)
  30. 30. Seite 30AdminCamp 2016 – Sept. 19-21 SSL_USE_CLIENT_CIPHER_ORDER=1 Deaktiviert die Ciphervorgabe vom Domino Server (Client Cipherhandling) > unsicher SSLCIPHERSPEC=CipherHexwerte Überschreibt die Vorgabe Cipherliste & -reihenfolge https://www-10.lotus.com/ldd/dominowiki.nsf/dx/TLS_Cipher_Configuration <FP4 = 2stellig SSLCipherSpec=9F9E6B39679D9C3D353 >FP4 = 4stellig SSLCipherSpec=C030009F009D USE_WEAK_SSL_CIPHERS=1 Ermöglicht die Nutzung “schwacher” Cipher > unsicher Zusätzliche Cipher werden danach via SSLCIPHERSPEC= definiert IBM Domino SSL/TLS Cipher
  31. 31. Seite 31AdminCamp 2016 – Sept. 19-21 DHE Cipher verwenden die Schlüssellänge des Domino Keyrings (z.B. 2048/4096 Bit) Java Clients V1.6 / 1.7 kann nur DHE 1024 Bit Schlüssellänge Problem mit DHE Cipher > 1024 Bit Lösung 1024 Bit Schlüssellänge für DHE Cipher SSL_DH_KEYSIZE=1024 SSL_DH_PARAMS=c:domprogdhparams1024.pem Eigene DH Cipher via „openssl dhparam 1024“ erstellen ABER: SSL Labs bewertet 1024 DHE Schlüssel als „weak“ DHE Cipher Probleme mit Java
  32. 32. Seite 32AdminCamp 2016 – Sept. 19-21 Authentication & port encryption enhancements in Notes and Domino 9.0.1 FP7 PORT_ENC_ADV=sum Port Encryption Optionen (HMAC-SHA256, AES-128 CBC, AES-128 GCM, Forward Secrecy) Sum=127 (Bitweise Aktivierung aller Optionen) TICKET_ALG_SHA=value (Vorgabe FP7 = 256) Zuweisung des Cryptographic Algorithmus für die Authentifizierung 1 = HMAC-SHA1, 256 = HMAC-SHA256 (Def.) 384 = HMAC-SHA 384, 512 = HMAC-SHA 512 DEBUG_PORT_ENC_ADV=1 Anzeigen von Fehlermeldungen bzgl. der neuen Algorithmen LOG_AUTHENTICATION=1 Zeigt an welcher Algorithmus beim der Authentifizierung verwendet wird. IBM Domino 9.0.1 FP 7 - N/D encryption
  33. 33. Seite 33AdminCamp 2016 – Sept. 19-21 Test für SSL/TLS Externe Webseiten per SSLLabls https://www.ssllabs.com/ssltest/index.html https://www.ssllabs.com/ssltest/viewMyClient.html Interne/Externe Webseiten TESTSSLServer.exe OpenSSL (Linux / Windows) HTTPs Test: openssl s_client -connect webhost.dns:443 SMTP TLS Test: openssl s_client -connect mailhost.dns:25 -starttls smtp Weitere Optionen sind -tls1, -no_ssl3
  34. 34. Seite 34AdminCamp 2016 – Sept. 19-21 Domino 8.5.3 FP6 IF9 DISABLE_SSLV3=1 SHA-1 !!! SHA-2 TLS 1.0 Domino Security Best Practices (09/2016) Domino 9.0.1 FP7 DISABLE_SSLV3=1 SSL_DISABLE_TLS_10=1 PORT_ENC_ADV=127 TLS 1.2 (wenn möglich) SHA 2 Zertifikat(e) Default Cipherorder
  35. 35. Seite 35AdminCamp 2016 – Sept. 19-21 Domino FP3+ Zugriff via Java Console nur noch mit Notes 9.0.1 FP3+ möglich (Disable SSLV3) http://www-01.ibm.com/support/docview.wss?uid=swg21695943 Notes FP4 Probleme bei Zugriffen auf IBM Connections wg. deaktivierten Ciphern Domino FP5 & Java Patch SR16FP20 (SPR# RSSNA6UU79) Keine Zugriff auf Java Console – MD5 Algroithmen sind deaktiviert Fix in FP6 oder Reaktivierung der MD5 Algorithmen (domprog/jvm/..../java.security) http://www-01.ibm.com/support/docview.wss?uid=swg21977125 Sametime 8.5.x/9.0 LDAPs Verbindung schlägt fehl Option 1: Verwenden SSL V2 Protokoll (SSL_ENABLE_INSECURE_RENEGOTIATE=1) Option 2: Update Sametime 9.0.1 mit TLS Patch und Neukonfiguration Problemfälle mit 9.0.1 und TLS/Cipher
  36. 36. Seite 36AdminCamp 2016 – Sept. 19-21 DB Einstellung für SSL „Require SSL connection“ Server / Token Einstellung für das Login „Force login on SSL“ Globale SSL Umleitung HTTP, LDAP & IMAP Ports „Redirect to SSL“ Domino & SSL Aktivierung
  37. 37. Seite 37AdminCamp 2016 – Sept. 19-21 Domino Redirect Loginseite muss Anonym erreichbar sein, ansonsten wird diese nicht richtig angezeigt Bildresourcen werden nicht geladen REDIRECT TO SSL = TRUE Notes.ini := HTTPPublicUrls=/redir.nsf/* 8.5.3 := HTTPPublicUrls=/redir.nsf/ iNotes-LoginBanner65short.gif:/redir.nsf/StylesheetLogin:/redir.nsf/Login.js 9.0.x := HTTPPublicUrls=/redir.nsf/ IBMLogo.gif:/redir.nsf/StylesheetLogin:/redir.nsf/Login.js Redirect Login Page
  38. 38. Seite 38AdminCamp 2016 – Sept. 19-21 SMTP Inbound Configdok := „SSL negotiated over TCPIP“ SMTP Outbound Serverdok := “negotiated SSL“ via Port 25 SMTP w/o SSL > Failover wenn TLS Outbound nicht verfügbar ist RouterFallbackNonTLS=1 Domino SMTP TLS
  39. 39. Seite 39AdminCamp 2016 – Sept. 19-21 Begriffe Domino & TLS Einstellungen/Konfiguration Domino SSL Key Erstellung (Kyrtool) Websphere SSL Konfiguration Agenda
  40. 40. Seite 40AdminCamp 2016 – Sept. 19-21 DER := Dateiformat für ein Binary X.509-Zertifikat Base64 := Dateiformat für ein Base64 codiertes (Text) X.509-Zertifikat PKCS#12 := Dateiformat für privaten Schlüssel (meist durch Passwort geschützt) Dateiendungen .CRT := kennzeichnet Dateien, die das fertige Zertifikat enthalten Alternativ auch .CER oder .PEM (Base64-kodiertes X.509-Zertifikat) .CSR := Zertifizierungsanforderung für CA (eigene oder offizielle) .P12 := Zertifikatsdatei bzw. -speicher inkl. privater Schlüssel und/oder weiterer Schlüssel Zertifikatsspeicher/datenbanken := .JKS, .CMS, .P12 Dateiformate für Zertifikate
  41. 41. Seite 41AdminCamp 2016 – Sept. 19-21 certsrv.nsf / certreq.nsf Domino Keyring Datenbanken NEU := KYRTOOL (Kommandozeile) Am besten in Verbindung mit OpenSSL nutzbar Kann keine eigenen „private key“ Request erstellen SHA-2 Support nur für IBM Domino 9.0.x SHA-2 Keyrings in Domino 8.5.x funktionieren nicht !!! iKeyman gskit V5 Läuft nur unter Windows 2003/XP Domino Keyring Tools
  42. 42. Seite 42AdminCamp 2016 – Sept. 19-21 Download KYRTOOL KYRTOOL ins IBM Notes Client Verzeichnis kopieren (Notes.dll wird benötigt) Download OpenSSL OpenSSL (pre build für Windows von Shining Light) installieren http://slproweb.com/products/Win32OpenSSL.html OpenSSL DLL Dateien NICHT in das Windows Verzeichnis kopieren OpenSSL Konfigurationsdatei zuweisen und ggfls. konfigurieren set OPENSSL_CONF=c:OpenSSLopenssl.cnf (Win64 Bit binaries) Domino KYRTOOL & OpenSSL
  43. 43. Seite 43AdminCamp 2016 – Sept. 19-21 IBM Wiki: Generating a keyring file with a third party CA SHA-2 cert using OpenSSL and kyrtool 1. Privaten Schlüssel (RSA / 2048 Bit) erstellen >openssl.exe genrsa–out serverpriv.key 2048 2. CSR (Certificate Signing Request) für die eigene/externe CA generieren >openssl.exe req -new -sha256 -key serverpriv.key –out serverreq.csr Eingabe der Requestdaten (Name des Servers = CN, Organisation, OU, Country, Mailadresse, etc.) 3. CSR Datei oder Inhalt bei der Internet-CA hinterlegen und auf das gestempelte Zertifikat (CRT) warten
  44. 44. Seite 44AdminCamp 2016 – Sept. 19-21 4. Alle Zertifikate in eine Datei zusammenführen >type serverpriv.key servercert.crt ca-intermediate.crt ca-root.crt > allservercerts.txt optional können diese auch einen Texteditor nacheinander zusammen kopiert werden Richtige Reihenfolge beachten da ansonsten die Kette (CHAIN) nicht richtig erkannt wird !!  1.. private Key, 2. gestempeltes Zertifikat, 3. CA2, 4. RootCAs 5. Domino Keyring erstellen und mit Kennwort schützen (stash file/sth) >kyrtool create –k dominokey.kyr –p password 6. Zertifikate bzw. Schlüssel in die Domino Keyring Datei importieren >kyrtool import all -k dominokey.kyr –i allservercerts.txt IBM Wiki: Generating a keyring file with a third party CA SHA-2 cert using OpenSSL and kyrtool 4. Alle Zertifikate in eine Datei zusammenführen >type serverpriv.key servercert.crt ca-intermediate.crt ca-root.crt > allservercerts.txt optional können diese auch einen Texteditor nacheinander zusammen kopiert werden Richtige Reihenfolge beachten da ansonsten die Kette (CHAIN) nicht richtig erkannt wird !!  1.. private Key, 2. gestempeltes Zertifikat, 3. CA2, 4. RootCAs 5. Domino Keyring erstellen und mit Kennwort schützen (stash file/sth) >kyrtool create –k dominokey.kyr –p password 6. Zertifikate bzw. Schlüssel in die Domino Keyring Datei importieren >kyrtool import all -k dominokey.kyr –i allservercerts.txt
  45. 45. Seite 45AdminCamp 2016 – Sept. 19-21 Domino Keyring – Kyrtool Befehle Zertifikate bzw. Schlüssel auf Gültigkeit prüfen >kyrtool verify allservercerts.txt Zertifikate in der Domino Keyring Datei prüfen bzw. anzeigen >kyrtool show keys -k dominokey.kyr (nur Serverzertifkat – inkl. privater Schlüssel) >kyrtool show certs -k dominokey.kyr (nur Ausstellerzertifkate)
  46. 46. Seite 46AdminCamp 2016 – Sept. 19-21 Import von bestehenden Zertifikaten in eine Domino Keyring Datei z.B. Wildcard Zertifikate *.timetoact.de / *.edcom.de Inklusiver privater Schlüssel und kompletter Zertifikatskette (=chain) – sofern exportiert P12/PCKS Dateien sind normalerweise durch Passwort geschützt Voraussetzung für den Import ist das die Schlüsseldatei in Textformat vorliegt (PEM Format) >openssl pkcs12 –in SSLkey.pkcs/.p12 -out SSLKeyAll.pem –nodes Optional >openssl pkcs12 –in SSLkey.pkcs/.p12 -out SSLCertsOnly.pem –nodes –nokeys Optional >openssl pkcs12 –in SSLkey.pkcs/.p12 -out SSLPrivKeyOnly.pem –nodes –nocerts Import des konvertierten Zertifikates in das Domino Keyring >kyrtool import all -k dominokey.kyr –i SSLKeyAll.pem Domino Keyring - PKCS/P12 Import
  47. 47. Seite 47AdminCamp 2016 – Sept. 19-21 Certsrv.nsf Self-signed 512 Bit mit MD5 encryption Cert-sign-req (CSR) 512/1024 & 2048 Bit mit MD5 encryption Certreq.nsf (CA Prozess) MD5, SHA1 encryption mit 512/1024 & 2048 Bit SHA-2 Fix – IBM Domino 9.0.1 FP3 SPR# DKEN9PJNBC - Allow certreq.nsf to create SSL keyring files containing certificates signed using SHA-256, SHA-384, and SHA-512. SHA in Domino
  48. 48. Seite 48AdminCamp 2016 – Sept. 19-21 OPENSSL Konfig Datei OPENSSL.CNF Zuweisung mehrerer DNS Einträge im Zertifikat um Browserfehlermeldung zu unterbinden OpenSSL – Alias URL zuweisen ....... [req] distinguished_name = req_distinguished_name req_extensions = v3_req [ v3_req ] # Extensions to add to a certificate request basicConstraints = CA:FALSE keyUsage = nonRepudiation, digitalSignature, keyEncipherment subjectAltName = @alt_names [alt_names] DNS.1 = im.novitest.local DNS.2 = dom.novitest.local IP.1 = 192.168.1.1 IP.2 = 192.168.69.14 .......
  49. 49. Seite 49AdminCamp 2016 – Sept. 19-21 Begriffe Domino & TLS Einstellungen/Konfiguration Domino SSL Key Erstellung (Kyrtool) Websphere SSL Konfiguration Agenda
  50. 50. Seite 50AdminCamp 2016 – Sept. 19-21 Websphere – SSL Zertifikate SSL Verwaltung Keystore := Verwaltung der eigenen Zertifikate ... <wasdmgrprofile>configcells<cellname>trust.p12 Truststore := Querzulassungen zu anderen Servern / root Zertifikaten ... <wasdmgrprofile>configcells<cellname>key.p12 Konfiguration via Websphere ISC oder IBM ikeyman Password „WebAS“
  51. 51. Seite 51AdminCamp 2016 – Sept. 19-21 Websphere – SSL Zertifikate Websphere generiert ein „self-signed“ SSL Zertifikat Auf Basis des Hostnamen Network Deployment generiert eigene Root CA (dmgr hostname) “self signed“ Serverschlüssel ist ein Jahr gültig und erneuert sich selbstständig
  52. 52. Seite 52AdminCamp 2016 – Sept. 19-21 Websphere – SSL Zertifikate offizielle SSL Zertifikate für Extranet und mobile Access (Verisign, Cybertrust, Trustcenter, etc.) SSL Request erstellen (CSR) & empfangen (CRT/CER) Import Privat Key Format *.P12 (z.B. Wilcard Zertifikate) Zuweisung des SSL Schlüssel an den WAS Server Import der SSL Zertifikate in andere WAS Zellen (Trust) Media Server TLS (Video Manager) Connections  Sametime TLS „Querzulassung“
  53. 53. Seite 53AdminCamp 2016 – Sept. 19-21 Websphere – SSL Zertifikate Request erstellen (in der WAS ISC) SSL certificate and key management > Key stores and certificates > CellDefaultKeyStore > Personal certificate requests > NEW Signiertes CA Zertifikat importieren SSL certificate and key management > Key stores and certificates > CellDefaultKeyStore > Personal certificates > Receive cert from CA
  54. 54. Seite 54AdminCamp 2016 – Sept. 19-21 Websphere – SSL Zertifikate P12 Ist der „personal request“ nicht mehr vorhanden (z.B. bei Verlängerungen) kann ein „Renewal“ nicht mehr eingelesen werden (ISC Fehlermeldungen) P12 „private“ Key importieren (z.B. bei Wildcard Zertifikaten) P12 Dateien werden durch Passwörter geschützt SSL certificate and key management > Key stores and certificates > CellDefaultKeyStore > Personal certificates > Import certificates from a key file or key store
  55. 55. Seite 55AdminCamp 2016 – Sept. 19-21 Websphere – SSL Zertifikate Zuweisung der SSL Zertifikate dem Websphere Anwendungsserver SSL certificate and key management > Manage endpoint security configurations > Inbound > WebsphereServer (z.B. STProxyServer) SSL certificate and key management > Manage endpoint security configurations > Outbound > WebsphereServer (z.B. STProxyServer)
  56. 56. Seite 56AdminCamp 2016 – Sept. 19-21 Websphere – SSL Zertifikate Websphere Network Deployment hat evtl. Probleme die Schlüsselspeicher (keystore, trustore) zwischen dem Deployment Manager und Knotes zu synchronsieren Folge = WAS Server lassen sich nicht richtig beenden (hängt beim Beenden), da der Schlüsselaustausch auf eine Bestätigung wartet Manuelle Synchronisation <wasnodeprofile>binretrievesigners –host dmgrhost –port dmgrsoapport SOAP Port für dmgr ist normalerweise 8879 – bei Sametime SSC allerdings 8703 Sametime > retrievesigners –host ssc.novitest.local –port 8703
  57. 57. Seite 57AdminCamp 2016 – Sept. 19-21 Websphere – TLS & Cipherlist SSL Protokollversion einstellen SSL certificate and key management > SSL configurations > CellDefaultSSLSettings > Quality of protection (QoP) settings SSL_TLS := SSLv3 und TLSv1  Vorgabe SSL := SSLv3 TLS := TLSv1 only TLSv1 := TLSv1 only SSL_TLSv2 := ist SSLv3 und TLSv1, TLSv1.1, TLSv1.2 TLSv1.1 := TLSv1.1 only TLSv1.2 := TLSv1.2 only SSLV3 wird mit Websphere 8.5.5 FP3 IF Patches oder 8.5.5 FP4+ automatisch deaktiviert JVM Argument := -Dcom.ibm.jsse2.disableSSLv3=true http://www-01.ibm.com/support/docview.wss?uid=swg21687173
  58. 58. Seite 58AdminCamp 2016 – Sept. 19-21 Websphere – TLS & Cipherlist Cipherliste anpassen SSL certificate and key management > SSL configurations > CellDefaultSSLSettings > Quality of protection (QoP) settings
  59. 59. Seite 59AdminCamp 2016 – Sept. 19-21 Sametime & Connection TLS Websphere Protokoll auf TLSv1.2 (kein TLS1.0) umstellen Websphere 8.5.5 FP4+ deaktiviert SSLv3 per Code Sametime 8.5 - 9.0 Sametime Poodle Hotfix vom 5. Feb. 2015 einspielen oder neueste Fixes (Fixcentral) Sametime Community TLS benötigt noch weitere Konfigurationsschritte Connections 3.0 – 5.0 WebSphere, IHS & Plugins müssen gefixed (IBM Link) werden Connections 5.5 (IHS & Websphere) TLS V.12 How to Force IBM Connections 5.5 CR1 to Use TLSv1.2
  60. 60. Seite 60AdminCamp 2016 – Sept. 19-21 Sametime TLS für Community & LDAP IBM Doku: Security Considerations for TLS Configuration 1. Domino Keyring (SHA-2) für Sametime Community erstellen 2. SSL Software Support (ST 9 SDK) installieren 3. KeyDBs via IBM iKeyman erstellen und externes LDAP Server Zertifikate einlesen Keytrust.p12 := Externes LDAP Zertifikat und/oder Zertifikatskette (root) einlesen Keystore.p12 := Eigenes Domino/Sametime Zertifikat und/oder Zertifikatskette (root) einlesen TIPP – Umwandlung der Domino/OpenSSL privaten Schlüssel und signiertes Zertifikatsdatei in P12 Format openssl pkcs12 -export -in st9certdatei.pem -inkey st9priv.key -out st9.p12
  61. 61. Seite 61AdminCamp 2016 – Sept. 19-21 Sametime Community TLS Zuweisung der Schlüsseldatebanken (Keystore/P12)
  62. 62. Seite 62AdminCamp 2016 – Sept. 19-21 Sametime Community TLS Verbindungen Sametime Community Server > Sametime Community Server Sametime Community Server > LDAP Server Sametime Client > Sametime MUX/Community Server Strict TLS vs. legacy RC2 encryption
  63. 63. Seite 63AdminCamp 2016 – Sept. 19-21
  64. 64. Seite 64AdminCamp 2016 – Sept. 19-21 Beurteilung bitte nicht vergessen! Securing IBM Collaboration Environment
  65. 65. Seite 65AdminCamp 2016 – Sept. 19-21 APPENDIX
  66. 66. Seite 66AdminCamp 2016 – Sept. 19-21 1. Privaten Schlüssel (RSA / 2048 Bit) erstellen >openssl.exe genrsa –out server.key 2048 2. CSR (Certificate Signing Request) für die CA generieren >openssl.exe req -new -sha256 -key server.key –out server.csr Eingabe der Requestdaten (CN, Org, OU, Country, etc.) 3. OpenSSL „self-signed“ Zertifkat generieren (3560 Tage gültig) >openssl.exe x509 -req -days 3650 -sha256 -in server.csr -signkey server.key-out server.pem 4. Alle Zertifikate (server.crt, CA-Root, CA-Intermediate) in eine Datei zusammenführen >type server.key server.pem > selfsigned-key.txt optional können diese auch einen Texteditor nacheinander zusammen kopiert werden 5. Domino Keyring erstellen und mit Kennwort schützen (stash file/sth) >kyrtool create –k dominokey.kyr –p password IBM Wiki: Generating a keyring file with a self-signed SHA-2 cert using OpenSSL and kyrtool
  67. 67. Seite 67AdminCamp 2016 – Sept. 19-21 IBM Wiki: Generating a keyring file with a self-signed SHA-2 cert using OpenSSL and kyrtool 6. Zertifikate bzw. Schlüssel auf Gültigkeit prüfen >>kyrtool verify selfsigned-key.txt 7. Zertifikate bzw. Schlüssel in die Domino Keyring Datei importieren >kyrtool import all -k dominokey.kyr –i selfsigned-key.txt 8. Zertifikate in der Domino Keyring Datei prüfen >kyrtool show keys -k dominokey.kyr (nur Serverzertifkat – inkl. privater Schlüssel) >kyrtool show certs -k dominokey.kyr (nur Ausstellerzertifkate) 9. Domino Keyring Datei(en) auf Domino Server portieren und einbinden >copy dominokey.kyr + dominokey.sth > Domino Datenverzeichnis
  68. 68. Seite 68AdminCamp 2016 – Sept. 19-21 DEBUG_SSL_ALL=1/2 Debug für SSL (inlusive Handshake & Cipher) DEBUG_SSL_HANDSHAKE=1/2 Zeigt Protokollversionen an DEBUG_SSL_CIPHERS=1/2 Zeigt Informationen zu den Ciphern DEBUG_SSL_DHE=1/2 DHE Cipher Debugging (9.0.1 FP3) SSL_LOGGING_DISABLE=1 Unterbindet alle Domino Console Meldungen zu SSL IBM Domino SSL/TLS Parameter

×