+ All Categories
Home > Software > Domino Security Present and Future ConnectED Review - ICS.UG 2016

Domino Security Present and Future ConnectED Review - ICS.UG 2016

Date post: 16-Apr-2017
Category:
Upload: ics-user-group
View: 497 times
Download: 6 times
Share this document with a friend
50
Domino Security Present and Future ConnectED Review 22. März 2016 Daniel Nashed (Nash!Com)
Transcript
Page 1: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Domino SecurityPresent and FutureConnectED Review

22. März 2016Daniel Nashed (Nash!Com)

Page 2: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Über den Referenten

Nash!Com – IBM® Business Partner/ISVMitglied The Penumbra group - An international consortium of

selected Business Partners pooling their talent and resources

Fokus: Cross-Platform C-API, IBM® Domino® Infrastruktur, Administration, Integration, Performance, Security, Troubleshooting und IBM® Traveler

Platform Fokus: Microsoft® Windows® 32/64, Linux® und IBM AIX®

DNUG Fachgruppe IBM Domino® Infrastruktur

Autor des Domino auf Linux®/UNIX® Start Scripts

Page 3: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Agenda

Aktuelle Verschlüsselungs-Standards für Domino

Aktuelle Informationen und geplante Features im Bereich Domino Security

Aktuelle Änderungen im Bereich Web-Server Zertifikate und das KeyRing Tool

Fragen und Anregungen – Jeder Zeit

Page 4: Domino Security Present and Future ConnectED Review - ICS.UG 2016

BSI Whitepaper – 11.2.2015

BSI TR-02102-1 "Kryptographische Verfahren: Empfehlungen und Schlüssellängen" https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Publikationen/TechnischeRichtlinie

n/TR02102/BSI-TR-02102_pdf

Block Ciphers: AES-128, AES-192, AES-256 with

Galois-Counter-Mode (GCM) Cipher-Block Chaining (CBC) Counter Mode (CTR)

Asymmetric Encryption: ECIES 224 (after 2015 at least 250), DLIES and RSA >= 2048 Bits (after 2016 at least >= 3072 bits)

Hashing: SHA-224, SHA-256, SHA-512/256, SHA-384, SHA-512, SHA-512/224 SHA1 nicht mehr für neue Certs → Nach 2015 nur noch: SHA-256, SHA-384, SHA-512, SHA-512/256

Key Exchange:Diffe-Hellma (DHE_RSA)/ EC Diffe-Hellman (ECDHE_RSA)

Page 5: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Apple Transport Security (ATS)

Apple führt neuen Sicherheits-Standard (ATS) einWird seit iOS 9 und OSX 10.11 (El Capitan) verwendet

Anforderungen

TLS 1.2 >= 2048 bit RSA Key Mindestens SHA-256 Signierte Web-Server Zertifikate ECDHE → PFS supported, moderne Cipher

Bisher wird dieser Standard nur für Partner Applikationen erzwungen Wenn der Entwickler die Applikation nicht mit entsprechenden Ausnahmen compiled hat Es ist aber zu erwarten, daß Apple in den nächsten Releases die Anforderungen weiter festzieht

ActiveSync und der Safari Browser benötigt aktuell noch kein TLS 1.2 und ECDHE SSL V3 ist schon deaktiviert!

Page 6: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Domino TLS Support!

IBM hat aufgrund von Sicherheitsproblemen wie dem SSL V3 Bug „Poodle“ schrittweise neuere SSL/TLS Versionen eingeführt

„Poodle“ und andere Probleme haben den ursprünglichen Zeitplan, geändert Funktionen werden durch Fixpacks und Interims-Fixe bereitgestellt

Alle Konfiguration der neuen Funktionen wird bis „Domino.Next“ über notes.ini Parameter gesteuert

Aktuelle Version: Domino 9.0.1 FP5 IF1

Support für TLS 1.2 inklusive aktueller DHE und ECDHE Ciphers (seit 9.0.1 FP4 IF2)

Empfehlung: Update auf die aktuelle 9.0.1 Version mit FP und IF!!!

Domino 8.5.3 wird kein TLS 1.2 und kein SHA-256 supporten!

Page 7: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Aktuelle Änderungen

TLS 1.2 Verwendet intern SHA-256 statt MD5/SHA-1

Neue Cipher

Advanced Encrption Standard (AES) Galois/Counter Mode (GCM) Perfect Forward Secrecy (PFS) via

Ephemeral Diffie-Hellman (DHE) Elliptic Curve Diffie-Hellman (ECDHE)

Support für “Secure Renegotiation”

HSTS (Http Strict Transport Security) Header Information, daß der Browser über HTTPS zugreifen soll

Page 8: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Aktuelle Probleme und Lösungen

Bekannte Probleme, die in Domino 9.0.1 FP5 IF1 gelöst sind

SPR #KLYHA57S37 - Disable TLS Session Resumption on outbound connections by default

Problem: Session Resumption hat zu falschen TLS /Cipher Kombinationen bei STARTTLS geführt Weitere Details:

http://blog.nashcom.de/nashcomblog.nsf/dx/tls-1.2-connection-issues-with-protection.outlook.com.htm

SPR #MKENA4SQ7R - Domino TLS 1.2 Client Hello does not offer a Signature Algorithm extension causing some handshakes to fail

Fehlende Security Protocol Extension führt zu Verbindungsabrüchen in bestimmten Konstellationen Dieser Fix implementiert die entsprechende Extension

Page 9: Domino Security Present and Future ConnectED Review - ICS.UG 2016

„SLOTH“ MD5 Vulnerability

Gefixed in Domino 9.0.1 FP5 IF1

SPR #KLYHA5YRVP - Recommended security fix for IBM Domino (technote 1974958)

Die „SLOTH Vulnerability“ hat mit einer Kollisions-Attacke der MD5 hash Funktion im TLS Handshake zu tun. Der Fix behebt das Problem.

CVEID: CVE-2015-7575

„DESCRIPTION: The TLS protocol could allow weaker than expected security caused by a collision attack when using the MD5 hash function for signing a ServerKeyExchange message during a TLS handshake. An attacker could exploit this vulnerability using man-in-the-middle techniques to impersonate a TLS server and obtain credentials.„

Referenz -> http://www.ibm.com/support/docview.wss?uid=swg21974958

Page 10: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Support für Extended Master Secret (RFC 7627)

SPR #DKENA32JMP - Add support for Extended Master Secret (RFC 7627) to TLS 1.2 Recht neue RFC, die von Google und Microsoft in ihren aktuellen Browsern

implementiert ist. → Beide Seiten müssen die Extension supporten! Reduziert ab Domino 9.0.1 FP5 IF1 mögliche Man-in-the-middle-Attacken

„The Transport Layer Security (TLS) master secret is not cryptographically bound to important session parameters such as the server certificate. Consequently, it is possible for an active attacker to set up two sessions, one with a client and another with a server, such that the master secrets on the two sessions are the same. Thereafter, any mechanism that relies on the master secret for authentication, including session resumption, becomes vulnerable to a man-in-the-middle attack, where the attacker can simply forward messages back and forth between the client and server. This specification defines a TLS extension that contextually binds the master secret to a log of the full handshake that computes it, thus preventing such attacks.“

Referenz: https://www.ietf.org/mail-archive/web/ietf-announce/current/msg14570.html

Page 11: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Notes Client Interims Fixe

Server und Client IFs enthalten unterschiedliche Fixe bei gleicher IF Nummer!!! Derzeit gibt es auch unterschiedliche Fixe für unterschiedliche Client Plattfomen!!

Notes 9.0.1 FP5 IF1 für Windows war ein Vorabfix, der schnell ein Installer-Problem beim Update gefixed hat

Notes 9.0.1 Fix Pack 5 Interim Fix 1 (Linux)

SPR #KLYHA5YRVP Security Bulletin: Vulnerability in MD5 Signature and Hash Algorithm affects IBM Notes

(TN #1975290)

SPR #DKENA32JMP Add support for Extended Master Secret (RFC 7627) to TLS 1.2

SPR #KLYHA57S37 Disable TLS Session Resumption on outbound connections by default

Page 12: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Notes Client Interims Fixe

Notes 9.0.1 Fix Pack 5 Interim Fix 2

SPR #KLYHA5YRVP

Security Bulletin: Vulnerability in MD5 Signature and Hash Algorithm affects IBM (TN #1975290) Fix ist neu für Windows in IF2, Aber unter Linux schon in IF1

SPR #AYAVA67A8Z

Security Bulletin: libpng related security vulnerabilities identified in IBM Notes (TN #1975365)

Page 13: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Aktueller Cipher Support – Teil 1

Alle Cipher in der Reihenfolge ihrer Verwendung von Server-Seite ECDHE und DHE Cipher

TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030) ECDH 256 bits (eq. 3072 bits RSA) TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 (0x9f) DH 2048 bits (p: 256, g: 1, Ys: 256) TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f) ECDH 256 bits (eq. 3072 bits RSA) TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (0x9e) DH 2048 bits (p: 256, g: 1, Ys: 256) TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028) ECDH 256 bits (eq. 3072 bits RSA) TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 (0x6b) DH 2048 bits (p: 256, g: 1, Ys: 256) TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (0xc014) ECDH 256 bits (eq. 3072 bits RSA) TLS_DHE_RSA_WITH_AES_256_CBC_SHA (0x39) DH 2048 bits (p: 256, g: 1, Ys: 256) TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (0xc027) ECDH 256 bits (eq. 3072 bits RSA) TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 (0x67) DH 2048 bits (p: 256, g: 1, Ys: 256) TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (0xc013) ECDH 256 bits (eq. 3072 bits RSA)

Page 14: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Aktueller Cipher Support – Teil 2

RSA AES GCM Cipher

TLS_RSA_WITH_AES_256_GCM_SHA384 (0x9d) TLS_RSA_WITH_AES_128_GCM_SHA256 (0x9c)

RSA AES CBC Cipher

TLS_RSA_WITH_AES_256_CBC_SHA256 (0x3d) TLS_RSA_WITH_AES_256_CBC_SHA (0x35) TLS_RSA_WITH_AES_128_CBC_SHA256 (0x3c) TLS_RSA_WITH_AES_128_CBC_SHA (0x2f)

RSA 3DES Cipher

TLS_RSA_WITH_3DES_EDE_CBC_SHA (0xa)

Page 15: Domino Security Present and Future ConnectED Review - ICS.UG 2016

„Cipher“ manuell konfigurieren

Der „Cipher Dialog“ im Server Dokument und Internet-Site Dialog wird bis zum nächsten Feature Release (9.0.2) nicht mehr verwendet

Per Default sind aktuell sichere Cipher konfiguriertÄnderungen an der Cipher Liste erfolgt über einen notes.ini Eintrag für alle Protokolle

notes.ini Eintrag SSLCIPHERSPEC=...

Enthält die Codes der Cipher aneinander gehängt Vor 9.0.1 FP4 IF2 gab es nur 2 Octet Codes Jetzt sollten 4 Octet Codes verwendet werden

Beispiel mit gemischtem 2 / 4 Octet Format:

SSLCIPHERSPEC=9D9C3D3C352F0A39676B9E9FC030C02FC028C014C027C013

Wichtiger Wiki Eintrag: http://www.lotus.com/ldd/dominowiki.nsf/dx/TLS_Cipher_Configuration

Page 16: Domino Security Present and Future ConnectED Review - ICS.UG 2016

HSTS Header

Gibt die Informtion an den Client, daß er sich in nächster Zeit nur über HTTPS verbinden soll

https://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security

Best Practice: Nur HTTPS zur Verfügung stellen und Header anpassen Standard hat eine recht kurze Gültigkeit Wird nur mitgesendet, wenn der Server nur HTTPS aktiviert hat → HTTP ggf. deaktivieren

Notes.ini

HTTP_HSTS_MAX_AGE=17280000 HTTP_HSTS_INCLUDE_SUBDOMAINS=1

Resultiert in folgendem Rating:

"Strict Transport Security (HSTS) Yes max-age=17280000; includeSubDomains"

Page 17: Domino Security Present and Future ConnectED Review - ICS.UG 2016

OCSP Konfiguration

Online Certificate Status Protocol

Überträgt „gecachted“ Zertifikat-Status Information (CRL) https://en.wikipedia.org/wiki/Online_Certificate_Status_Protocol

Beispiel: Notes.ini

SSL_ENABLE_OCSP_STAPLING=1 OCSP_RESPONDER=http://evssl-ocsp.globalsign.com/responder OCSP_CLOCKSKEW=10 OCSP_LOGLEVEL=31

Ergebnis:

OCSP stapling -> Yes

Tip: Responder URL ermitteln:

openssl x509 -noout -ocsp_uri -in cert.pem

Beispiel-Ergebnis: http://ocsp.int-x1.letsencrypt.org/

Page 18: Domino Security Present and Future ConnectED Review - ICS.UG 2016

SSL Test Tools

Eine der meist verwendeten SSL Test-Websites

Gibt einen guten Überblick über die SSL/TLS Sicherheit des eigenen Servers

Rating von “A” bis “F”

Detail Information über TLS Version und Cipher „Simulation“ welcher Cipher von welchem Client-Typ verwendet wird

Server Test https://www.ssllabs.com/ssltest/

Client Test https://www.ssllabs.com/ssltest/viewMyClient.html

Page 19: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Aktueller Status

Page 20: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Optional - ECDHE Curves

Unterschiedliche „Curves“ werden supportet

NIST P-256, NIST P-384, and NIST P-521 are supported.

Die schnellste (kleinste) gemeinsame supportete Curve wird verwendet

Curves können einzeln deaktiviert werden

Notes.ini

SSL_DISABLE_CURVE_P256=1 SSL_DISABLE_CURVE_P384=1 SSL_DISABLE_CURVE_P521=1

Page 21: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Optional – Eigene DHE Groups

Kleinste Länge für DH Groups wurde auf 2048 bit in D9.0.1 FP4 IF2 erhöht

Besserer Schutz vor Logjam AttackenBei DHE_RSA_WITH_AES_128_CBC_SHA wird immer eine 1024 bit group

Aus Kompatibilitätsgründen für Java 6 Cipher ist mittlerweile auf die Weak-List gesetzt und im Standard deaktiviert

„Custom DH Groups“ ab 9.0.1 FP4 IF2 via notes.ini SSL_DH_PARAMS notes.ini.

PEM-encoded DH Parameters Datei, die selbst generiert wird 1024 bit Custom Groups sind erlaubt, aber sollten regelmäßig erneuert werden.

Notes.ini SSL_DH_PARAMS=c:\dhparams2048.pem Erzeugen von Dateien: "openssl dhparam 2048 > dhparam2048.pem

Page 22: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Optional - SSL_DH_KEYSIZE

DHE Key Size wird per Default über die Stärke des Server Keys bestimmt

Notes.ini SSL_DH_KEYSIZE=n kann verwendet werden, um die Länge zu verringern

Mögliche Werte: 1024, 2048, 3072 und 4096 (seit Domino 9.0.1 FP4)

Nur benötigt, wenn wichtige Systeme sich über DHE verbinden müssen und ein Problem mit höheren Schlüssel-Stärken haben

Java 6 Problem wurde separat gelöst Entsprechender Cipher verwendet aktuell immer 1024 bit Entsprechender Cipher ist aber mittlerweile auf der „Weak List“

Page 23: Domino Security Present and Future ConnectED Review - ICS.UG 2016

TLS Support für Geräte / Applikationen

Aktuelle Mobile Endgeräte supporten TLS 1.2

Review aller Applikationen z. B. auch SSL/TLS Verbindungen für Directory Assistance über LDAP!

Applikationen OpenSSL wird häufig verwendet

Ältere Versionen haben Probleme mit dem deaktivierten V2 SSL Handshake Wenn es nicht anders geht: notes.ini SSL_ENABLE_INSECURE_SSLV2_HELLO=1

Kann für SMTP Server wichtig sein – Mehr später

Java Java 1.6 unterstützt TLS 1.2 (Notes/Domino verwendet eine aktualisierte 1.6 JVM)

Aktuelle Java Patches supporten TLS 1.2 (allerdings sehr eingeschränkt) → Details nächste Folien

Page 24: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Notes/Domino Java

IBM Java Updater

Major Version (z.B. 9.0.1) beinhaltet volle JVM Version FP kann einen JVM patch enthalten, aber IFs enthalten keine JVM patches Separate Patch Installer für Client & Server

Aktuelle JVM → IBM Java 6SR16FP20 Zusätzlich zu 9.0.1 FP5 IF1 installiert!

Aktuelles Problem nach dem Update: Java Console funktioniert nicht mehr

Lösung: Re-Aktivieren von MD5 im ../jvm/lib/security/java.security File. Entfernen von „MD5“ aus den deaktivierten Algorithmen

jdk.certpath.disabledAlgorithms=MD2, MD5, RSA keySize < 1024 jdk.tls.disabledAlgorithms=SSLv3, RC4, MD5withRSA, DH keySize < 768

Page 25: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Eingeschränkter TLS 1.2 Support für Java 1.6

Mit aktuellen Patches sind Verbindungen mit DHE_RSA_WITH_AES_256_CBC_SHA / 2048 bit key und TLS 1.2 möglich!

Benötigt Patch zum Austausch der Java Security Policy Files"Java Cryptography Extension"

Separter Download, der local_policy.jar und US_export_policy.jar austauscht Wird bei jedem Update überschrieben! Einschränkungen werden über geänderte Policies, die in diesen jar-Files enthalten sind, überschrieben

Weitere Details siehe: http://blog.nashcom.de/nashcomblog.nsf/dx/higher-crypt-standards-with-notesdomino-and-jvm-1.6.htm

Interessantes Detail: Der neue Mac Notes 9.0.1 64bit Client verwendet schon Java 1.8 Verbindung verwendet mit aktuellen Domino Servern ECDHE_RSA_WITH_AES_128_GCM_SHA256

Page 26: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Aktuelle SSL/TLS Parameter

DISABLE_SSLV3=1 Empfohlen und wichtig: Deaktiviert SSL V3

DEBUG_SSL_ALL=2 Oder nur DEBUG_SSL_HANDSHAKE=2 und DEBUG_SSL_CIPHERS=2

USE_WEAK_SSL_CIPHERS=1 Nicht empfohlen! IBM stellt sicher, daß aktuelle Cipher vorhanden sind

SSL_ENABLE_INSECURE_RENEGOTIATE=1 Nicht empfohlen! Ist nur aus Compatibilitäts-Gründen noch vorhanden

SSL_DISABLE_FALLBACK_SCSV=1 Nicht empfohlen! Deaktiviert TLS_FALLBACK_SCSV wenn Client es nicht (richtig) supporten

SSL_USE_CLIENT_CIPHER_ORDER=1 Nicht empfohlen! Erlaubt Clients die Cipher Order anzugeben

Page 27: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Logging - SSL/TLS Fehler

Neues Logging auch ohne Debug Einstellungen

Kann via notes.ini SSL_LOGGING_DISABLE=1 deaktiviert werden

Log-Beispiele:

TLS/SSL connection 1.2.3.4(443)-4.5.6.7(1263) failed with server certificate chain requiring support for SHA384

TLS/SSL connection 1.2.3.4(443)-4.5.6.7(3829) failed with no supported ciphers

TLS/SSL connection 1.2.3.4(443)-4.5.6.7(3416) failed with rejecting incoming SSLv3 connection

TLS/SSL connection 1.2.3.4(443)-4.5.6.7(1263) failed with server certificate chain signature alogrithms NOT supported by client

Page 28: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Logging von TLS Verbindungen

Neues Logging in 9.0.1 FP5

Notes.ini SSL_LOG_SUCCESS=1 Log all successful SSL/TLS handshakes

Notes.ini SSL_LOG_SUCCESS=2 Log all successful full handshakes (i.e. - don't log resumed sessions)

Notes.ini SSL_LOG_SUCCESS=N; N > 5 Log all successful SSL/TLS handshakes to server port N (25 for mail, 443 for https, etc)

09.03.2016 15:31:23 TLS1.2 connected 80.135.215.188 (52795) -> 91.250.96.67 (443) - ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xC030) with NIST P-256

09.03.2016 02:13:52 TLS1.2 resumed 80.187.109.29 (12455) -> 91.250.96.67 (443) - ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xC030)

09.03.2016 02:18:18 TLS1.0 outbound 91.250.96.67 (39071) -> 193.27.22.85 (25) - DHE_RSA_WITH_AES_256_CBC_SHA (0x0039)

Page 29: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Referenz – Hilfreiche OpenSSL Commands

Connect Test HTTPS openssl s_client -connect www.acme.com:443

Connect Test SMTP TLS openssl s_client -connect mail.acme.com:25 -starttls smtp

Beide geben Information über Protokoll und Cipher etc aus

Optionen um bestimmte SSL/TLS Versionen zu verwenden -tls1, -no_tls1, -no_ssl3

“wget” Verwendet OpenSSL Libs und kann für HTTPS Anfagen verwendet werden wget.exe [--secure-protocol=TLSv1] --no-check-certificate https://www.acme.com

Page 30: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Domino SMTP TLS Extension “STARTTLS”

SSL/TLS for SMTP

Oft mit dem TLS v1.x Protokoll verwechselt STARTTLS SMTP Protokoll Erweiterung für „Kanal-Verschlüsselung“ über SMTP Port 25

Funktionsweise

Client verbindet sich “EHLO”, Server sendet “250-STARTTLS” als eine der Erweiterungen Client schickt “STARTTLS” Client und Server verhandeln TLS Protokoll-Version und Cipher Server antwortet mit “220 Ready to start TLS” Client startet die verschlüsselte Kommunikation erneut mit “EHLO”

Referenz: “ SMTP Service Extension for Secure SMTP over Transport Layer Security”

” https://www.ietf.org/rfc/rfc3207.txt

Page 31: Domino Security Present and Future ConnectED Review - ICS.UG 2016

STARTTLS Beispiel

EHLO mailout10.t-online.de250-domino.nashcom.de Hello mailout10.t-online.de ([194.25.134.21]), pleased to meet you250-TLS250-STARTTLS250-SIZE250 8BITMIMESTARTTLS220 Ready to start TLS

EHLO mailout10.t-online.de250-domino.nashcom.de Hello mailout10.t-online.de ([194.25.134.21]), pleased to meet you250-SIZE250 8BITMIMEMAIL FROM:<[email protected]> SIZE=1002250 [email protected]... Sender OKRCPT TO:<[email protected]>250 [email protected]... Recipient OKDATA354 Enter message, end with "." on a line by itself.250 Message accepted for delivery

Page 32: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Referenz Folie: SMTP TLS Extension – Eingehend

Config Doc: Router/SMTP/Advanced Commands and Extensions SSL negotiated over TCP/IP port: Enabled

Page 33: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Referenz Folie: SMTP TLS Extension – Ausgehend

Server Doc: Ports/Internet Ports/Mail: SMTP Outbound: Negotiated SSL

Page 34: Domino Security Present and Future ConnectED Review - ICS.UG 2016

SMTP TLS Details und Einschränkungen

Domino prüft nicht, ob das Zertifikat von einer vertrauenswürdigen CA kommt Das Zertifikat wird aber auf technische Korrektheit geprüft (Komplette Zertifikats-Kette etc) !! Die Gegenseite prüft ggf. unser Zertifikat → „Offizielles Zertifikat verwenden!“

Eingehende Verbindungen können bei unterschiedlichen TLS Versionen und Cipher fehlschlagen

Sollte mit TLS 1.2 und aktuellen Ciphern sehr selten vorkommen

Es gibt immer noch Server, die alte OpenSSL Libs verwenden und SSLV2_HELLO Support benötigen → Best Practice ist aktuell noch für SMTP Server SSSV“_HELLO zu erlauben

Notes.ini SSL_ENABLE_INSECURE_SSLV2_HELLO=1

Fallback für ausgehende Verbindungen auf unverschlüsselte Verbindungen Notes.ini RouterFallbackNonTLS=1 In der Regel entscheidet der Client, ob die Verbindung trotzdem zustande kommt

Page 35: Domino Security Present and Future ConnectED Review - ICS.UG 2016

SHA-1 Support

SHA-1 ist als „unsicher“ eingestuft

Es gibt mindestens theoretische Angriffe gegen SHA-1 Mindestens SHA-256 wird für sichere Verschlüsselung benötigt SHA-256 ist Federal Information Processing Standard (FIPS) 140-2 konform BSI rät zu SHA-256

Browser warnen bei SHA-1 basierten Zertifikaten

Beispiel: Google hat mit Warnungen schon Ende 2014 angefangen bei lang laufenden Zertifikaten Schritt für Schritt wird das Datum runtergesetzt (1.1.2017, .. 1.1.2016)

Betroffen sind alle Server und Intermediate CAs Zertifikate, die mit SHA-1 signiert sind Root Zertifikate werden anders validiert und sind nicht betroffen

Page 36: Domino Security Present and Future ConnectED Review - ICS.UG 2016

SHA-256 (SHA-2) Support

Domino 9.0.x ohne die neuen Fixe supportet SHA-256 bereits in machen Bereichen

X.509 S/MIME Verschlüsselung und Signatur HTTP Passwort Hashing (Intern) Internet CA supportet SHA-256

Domino >= 9.0.1 FP2 IF1 supportet SHA-2 Zertifikate für alle Internet Protokolle und für Keyring Files

SHA-2 Support: SHA-256, SHA-384 und SHA-512 Kein Support für SHA-2 in Domino 8.5.3

Neues Keyring File Management Tool “kyrtool”

Page 37: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Neues Keyring Tool - “kyrtool”

Separater Download Win32/64, Linux 32/64 Client & Server → einfach in das Notes/Domino Programmverzeichnis kopieren

Importieren, Anzeigen show und Exportieren von Zertifikaten Aber kann keine Keys erzeugen oder Zertifikate Anforderungen erstellen

OpenSSL für das Erzeugen von Key-Paaren und Zertifikats-Anforderungen („CSR“) Viele andere Tools können verwendet werden Oder bestehende Zertifikate im PEM Format

Importieren von „Trusted Roots“ Entweder alle zusammen aus einer PEM Datei in richtiger Reihenfolge (Key, cert, intermediates, Root) Oder separater Import

Page 38: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Beispiel: Zertifikat mit OpenSSL erstellen

OpenSSL Nativ auf Linux/Unix installiert Oder auf Windows z. B. In einer cygwin Umgebung

1. Erstellen Private/Public Key openssl genrsa -out server.key 2048

2. Erstellen des „Certificate Signing Request“ (CSR) openssl req -new -sha256 -key server.key -out server.csr

3. Senden CSR zur CA Oder erstellen eines “self signed” Zertifikates für eine Test-Umgebung

openssl x509 -req -days 3650 -sha256 -in server.csr -signkey server.key -out server.pem

Resultat sollte immer im “PEM” Format sein

Page 39: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Verify Import File

Inhalt einer PEM Datei sollte vor dem Import immer „verifiziert“ werden

Sicherstellen, daß die Zertifikates-Kette vollständig ist und aufeinander aufbaut Key, Cert, Intermediate Certs, Root Cert

Special Tip: Anzeigen der Certs in einer Eingabe-Datei Example: kyrtool.exe show certs -i c:\domino\all.pem

kyrtool.exe verify c:\domino\all.pem Successfully read 2048 bit RSA private key INFO: Successfully read 4 certificates INFO: Private key matches leaf certificate INFO: IssuerName of cert 0 matches the SubjectName of cert 1 INFO: IssuerName of cert 1 matches the SubjectName of cert 2 INFO: IssuerName of cert 2 matches the SubjectName of cert 3 INFO: Final certificate in chain is self-signed

Page 40: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Keyring File erstellen

Erstellen des Keyring Files

kyrtool create -k keyring.kyr -p password Beim Erstellen muß ein Passwort eingegeben werden

Alle anderen Commands lesen das Passwort aus der “.sth” Datei

Importieren von Key, Certificate, Intermediates und Trusted Root

Kopieren von Key, Cert, Intermediates und Root Certificate in ein PEM file kyrtool import all -k keyring.kyr -i server.pem

Separates Importieren der unterschiedlichen Teile ist auch möglich

Kyrtool import all|keys|certs|roots -k keyring.kyr -i server.pem Aber ist weitaus komplizierter und Fehler anfälliger

Page 41: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Keyring “show” Command

Wird verwendet um Informationen aus dem Domino Keyring File anzuzeigen

Kyrtool show certs -k keyfile.kyr Zeitgt die komplette Zertifikateskette inklusive es entsprechenden Root Certs Tip: Dump aller Zertifikate und Überprüfung via „verify“

Kyrtool show keys -k keyfile.kyr Zeigt alle Keys im Keyring File

Kyrtool show roots -k keyfile.kyr Zeigt alle Trusted Roots im Keyring File

Verbose Pption “-v” kann verwendet werden für mehr Informationen Mehrere “-v”s bedeuten mehr Informationen

Page 42: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Referenz – Konvertierung von Formaten

Kyrtool benötigt das “PEM” Format (Text basiert - BASE64 encoded DER format) In vielen Fällen verwendet die CA binäre Formate (z.B. Microsoft CA)

OpenSSL hilft bei der Konvertierung Aber der Syntax ist nicht immer naheliegend

Konvertier PKCS#12 file (.pfx .p12) – Datei mit Keys und Certs openssl pkcs12 -in cert.pfx -out cert.pem -nodes

Konvertiert das binäre DER Zertifikates-File in das (BASE64 kodierte) PEM Format openssl x509 -inform der -in server.cer -outform pem -out server.pem

Konvertiert die binär DER kodierte Zertifikates-Kette in das (BASE64 kodierte) PEM Format openssl pkcs7 -print_certs -inform der -in certificate_chain.p7b -outform pem -out

chain.pem

Page 43: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Aktuelle Anforderungen im Bereich Verschlüsselung

AES 256 durchgängig für alle Verschlüsselung steht ganz oben auf der Wunschliste

Aktuell verfügbar in Notes/Domino 9

Notes.ID Verschlüsselung Notes Mail Verschlüsselung S/MIME Mail Verschlüsselung

Offen

NRPC Port Verschlüsselung Datenbank Verschlüsselung

Page 44: Domino Security Present and Future ConnectED Review - ICS.UG 2016

AES 256 Mail Verschlüsselung

Eigentlich nur möglich FIPS-Einstellungen im Personen-Dokument und wenn die Notes.IDs entsprechend lange RSA Schlüsselstärken verwenden

Für Notes Mail Verschlüsselung kann aber aktuell so maximal AES 128 erreicht werden

Spezielle Notes.ini Parameter auf Client & Server erlauben AES 256 in jedem Fall unabhängig von den Einstellungen im Personen-Dokument und der Schlüssel-Stärke in den Notes.IDs!

Notes Client, Lotus Script, iNotes, Traveler, Verschlüsselung eingehender Mails im Router, …

Wichtig: Hierbei geht es um die symmetrische Verschlüsselung mit AES 256

Der symmetrische Schlüssel wird mit den RSA Schlüsseln des Users ggf. noch mit einem 630 Bit Key verschlüsselt! → Kann nur durch Key-Rollover erhöht werden

Page 45: Domino Security Present and Future ConnectED Review - ICS.UG 2016

AES 256 Verschlüsselung für Mail aktivieren

S/MIME

SMIME_CAPABILITIES_SEND=AES_128:SHA_256 SMIME_FIRST_CHOICE_CONTENT_ENC_ALG=AES_256

Quelle: IBM ConnectED Präsentation 2015

Notes Mail

DEBUG_SEAL2_AES=256

Einzige Quelle: https://www.lotus.com/ldd/dominowiki.nsf/dx/securing-your-notes-id-vault-server

Page 46: Domino Security Present and Future ConnectED Review - ICS.UG 2016

„Domino.Next“ – Orginal IBM ConnectED 2016 Text

Encryption of data at rest with AES (Using a FIPS 140-2 certified cryptographic library)

Notes/Domino 8.0.1 Document encryption, Notes mail encryption, ID file encryption, and Document encryption keys

Notes/Domino 8.5 Notes ID vault encryption

Notes/Domino 9.0 S/MIME and SAML encryption Encryption within the OAuth token store DB

Under consideration for Domino.Next Domino Database Encryption with AES DAOS Encryption with AES

IBM’s statements regarding its plans, directions and intent are subject to change or withdrawal without notice at IBM’s sole discretion.

Page 47: Domino Security Present and Future ConnectED Review - ICS.UG 2016

„Domino.Next“ – Orginal IBM ConnectED 2016 Text

NRPC Network Port Encryption with AES

Planned for Domino.Next Running in the labs today Controlled on the Domino server Enabled by default on clients Uses a FIPS 140-2 certified cryptographic library

Multiple permutations:

Old port encryption with HMAC SHA-256 integrity checking 128 bit AES-CBC with HMAC SHA-256 integrity checking 128 bit AES-GCM for encryption and integrity checking Forward secrecy and 256 bit AES under consideration

IBM’s statements regarding its plans, directions and intent are subject to change or withdrawal without notice at IBM’s sole discretion.

Page 48: Domino Security Present and Future ConnectED Review - ICS.UG 2016

„Domino.Next“

Geplanter Support für Java 1.8

Aktuell verwendet Mac 64bit schon die native Plattform-JVM

JVM 1.8 wird verwendet und separat installiert

Java 1.8 bietet lang erwartete neue Funktionalität für Entwickler & besseren TLS Support

TLS 1.2 mit aktuellen Ciphern z.B. TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 (0xc023) (Forward Secrecy) TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (0xc027) (Forward Secrecy)

Alle Cipher: https://www.ssllabs.com/ssltest/viewClient.html?name=Java&version=8u31

IBM’s statements regarding its plans, directions and intent are subject to change or withdrawal without notice at IBM’s sole discretion.

Page 49: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Session Summary ala Dave Kern

Page 50: Domino Security Present and Future ConnectED Review - ICS.UG 2016

Fragen & Antworten

Offene Fragen?

Jetzt oder später per Mail

Aktuelle Informationen in meinem Blog

Feedback?

Kontakt [email protected] http://blog.nashcom.de


Recommended