Aus- & Weiterbildung

CAS Information Security & Risk Management 2017: SSL & TSL

5. Dezember 2017
Back-to-School: Aus dem Klassenzimmer des CAS Information Security & Risk Management. Basis für diesen Lehrgang ist das BSI-Grundschutzhandbuch, und die Teilnehmenden bereiten sich begleitend auf die CISSP-Prüfung vor. Somit ist es ein Teil des 15-tägigen Lehrgangs, ein CISSP- oder BSI-Fachthema als Blogpost aufzubereiten:

Information Security: SSL & TSL

Ein SSL-Zertifikat ist auf der Serverseite installiert, die visuellen Hinweise werden über den Browser dargestellt und somit sind die Benutzer darüber informiert, dass sie durch SSL geschützt sind. Wenn SSL auf der Website vorhanden ist, werden die Benutzer zuerst https:// am Anfang der Webadresse sehen und nicht http:// (das zusätzliche «s» steht für secure = sicher). Je nachdem, welcher Validierungsgrad im Zertifikat dem Unternehmen gegeben wird, kann eine sichere Verbindung durch ein Vorhängeschloss-Symbol oder ein grünes Adressensignal angezeigt werden. Transport Layer Security (TLS) ist das Nachfolgeprotokoll zu SSL. TLS ist eine verbesserte Version von SSL. Es funktioniert ähnlich wie SSL und schützt die Übertragung von Daten und Informationen durch Verschlüsselung. Die beiden Begriffe werden in der Industrie häufig austauschbar verwendet, obwohl SSL immer noch weit verbreitet ist. Wenn ein SSL-Zertifikat von einer Certification Authority (CA) / Zertifizierungsstelle erstellt worden ist, könnte man selbstverständlich sowohl die mit SSL- als auch die mit TLS-Protokollen verschlüsselte verwenden. Die letzte Version des SSL-Protokolls war 3.0 und danach wurde es unter dem neuen Namen TLS, beginnend mit Version 1.0, eingeführt. Diese wurde weiterentwickelt und standardisiert. TLS hat sich im Laufe der Zeit weiterentwickelt, um mit immer komplexeren Sicherheitsanforderungen Schritt zu halten und kryptografische Fehler zu beheben. Der folgende Abschnitt zeigt eine Zeitleiste der Variationen der TLS-Versionen:
  • TLS 1.0 – Veröffentlicht 1999 und veröffentlicht als RFC 2246. Diese Version von TLS war SSL 3.0 sehr ähnlich
  • TLS 1.1 – Veröffentlicht in 2006 und veröffentlicht als RFC 4346.
  • TLS 1.2 – Veröffentlicht in 2008 und veröffentlicht als RFC 5246.
  • TLS 1.3 – Ab Januar 2016 ist diese Version von TLS im Entwurf
TLS v1.3 ist immer noch ein funktionstüchtiger Entwurf und wird von Websites und Tools noch nicht gut unterstützt. OpenSSL wird TLS 1.3 in der Version 1.1.1 unterstützen, dieses wird nach der Fertigstellung des TLS 1.3-Standards veröffentlicht. Obwohl TLS 1.2 einige sehr gute Sicherheitsverbesserungen gegenüber seinem Vorgänger bietet, zielt TLS 1.3 darauf ab, das Sicherheitsprotokoll weiter zu verbessern. Diese Version des Protokolls befindet sich immer noch im Entwurfstatus (Stand September 2017). Einige der Hauptunterschiede (unvollständig) gegenüber TLS 1.2 bestehen aus: Quelle (https://en.wikipedia.org/wiki/Transport_Layer_Security#TLS_1.3_.28draft.29)
  • Unterstützung für schwache und weniger verbreitete Elliptische Kurven
  • Die Unterstützung für MD5 und SHA-224 kryptographische Hash-Funktionen wurden entfernen
  • Digitale Signaturen sind auch bei Verwendung einer vorherigen Konfiguration erforderlich
  • Integration von HKDF und dem semi-ephemeren DH-Vorschlag
  • Wiederaufnahme durch PSK und Tickets ersetzen
  • Unterstützung von 1-RTT Handshakes und initialer Support für 0-RTT (siehe Verzögerungszeit für Roundtrip)
  • Unterstützung für viele unsichere oder veraltete Funktionen wie Komprimierung, Neuverhandlung, Nicht-AEAD-Chiffrierung, statischer RSA- und statischer DH-Schlüsselaustausch, benutzerdefinierte DHE-Gruppen, Punktformatverhandlung, Change Cipher Spec-Protokoll, Hallo-Nachricht UNIX-Zeit und das Längenfeld AD-Input zu AEAD-Chiffren entfällt.
  • Verbot der SSL- oder RC4-Verhandlung für Abwärtskompatibilität
  • Verwendung von Session-Hash integrieren
  • Veraltete Verwendung der Datensatz-Layer-Versionsnummer und Einfrieren der Nummer für verbesserte Rückwärtskompatibilität
  • Verschieben einiger sicherheitsrelevanter Algorithmusdetails aus einem Anhang zur Spezifikation und Verweisen von ClientKeyShare auf einen Anhang
  • Hinzufügung der ChaCha20-Stream-Chiffre mit dem Poly1305 Message Authentication Code
  • Hinzufügung der digitalen Signaturalgorithmen Ed25519 und Ed448
  • Hinzufügen der Schlüsselaustauschprotokolle x25519 und x448
Fazit: Sind TLS und SSL sicher? Ja, man kann SSL/TLS als sicher ansehen. Sind die Protokolle sicher genug? An SSL ist das CA-Modell (Certification Authority) der entscheidende Knackpunkt. Nahezu alle beschriebenen Schwachstellen hängen sich daran auf. Sehr häufig haben Sicherheitsprobleme bei SSL/TLS mit dem CA-Modell zu tun. Dabei ist es wichtig zu verstehen, dass nicht SSL defekt ist, sondern das Vertrauensmodell auf dessen Basis die Authentisierung erfolgt bzw. die Authentizität der Gegenstelle sichergestellt wird. Nur wenn dieser Vorgang wasserdicht ist, kann auch die Verschlüsselung wirksam sein. Da die Authentizität der Gegenstelle bei SSL/TLS nicht zweifelsfrei sichergestellt werden kann, weil die CAs, die Zertifizierung und die Validierung manipulierbar sind, ist jede noch so starke SSL/TLS-Verschlüsselung als unsicher anzusehen. Jedem Anwender, der SSL/TLS nutzt, und das tut jeder, der im Internet Verschlüsselung nutzt, muss klar sein, dass er mit einer gewissen Unsicherheit leben muss.  
Blogpost wurde erstellt im Rahmen vom CAS Information Security & Risk Management. Dozenten in diesem sehr praxisorientierten Lehrgang sind: Lukas Fässler (FSDZ Rechtsanwälte & Notariat AG) Rainer Kessler (Governance Concept GmbH), Andreas Wisler (goSecurity GmbH) Beim nächsten CAS live dabei sein? Hier der Link zur Ausschreibung CAS Information Security & Risk Management Persönliche Beratung für den Lehrgang gewünscht? Einfach Prof. Martina Dalla Vecchia ein E-Mail schreiben und einen Termin vorschlagen.

Schlagworte: Information Security, Risk Management, Weiterbildung

zurück zu allen Beiträgen

Kommentare

Keine Kommentare erfasst zu CAS Information Security & Risk Management 2017: SSL & TSL

Neuer Kommentar

×