Im Jahr 2022 ist beinahe der gesamte Traffic im Internet verschlüsselt. Das geschieht primär mit TLS. Da wir Webserver, Loadbalancer und sonstige Komponenten, die Verbindungen entgegennehmen, konfigurieren, liegt auch die TLS Konfiguration dieser Endpunkte in unserer Hand. Deswegen ist es entscheidend, ein gutes Verständnis davon zu haben, wie die Verschlüsselung des Traffics funktioniert.
Ziele
- Du verstehst den Unterschied zwischen Symmetrischer und Asymmetrischer Verschlüsselung
- Du weißt, für was Hashing eingesetzt wird und wo es bei Verschlüsselung zum Tragen kommt.
- Du weißt, was eine Certificate Authority (CA) ist.
- Du verstehst Certificate Trust Chains
- Warum ist eine Chain of Trust notwendig?
- Wo und wie beginnt die "Wurzel" bei der Chain of Trust?
- Wie schützt uns Public Key Infrastructure for "Man In The Middle" Angriffen?
- Wie validieren CAs, ob ein
Certificate Signing Request
signiert werden darf?- Welche Probleme können auftreten, wenn die Validierung ausgetrickst werden kann?
- Du weißt, welches Verfahren eingesetzt wird, um zu überprüfen, ob ein Zertifikat wirklich von einer CA signiert ist.
- Du weißt, wie du auf der CLI überprüfen kannst, ob ein Zertifikat zu einem Private Key gehört.
- Du verstehst, wie ein Server Inhalte verschlüsseln kann, die dann ein Client entschlüsseln kann.
- Du weißt wie ein Client seinen Schlüssel sicher zu einem Server übertragen kann
- Du weißt, für was das Feld "Common Name" in einem SSL/TLS Zertifikat da ist.
- Du weißt, für was das Feld "Subject Alternative Names" in einem SSL/TLS Zertifikat da ist.
- Du kannst den TLS Handshake beschreiben.
- Du verstehst Perfect Forward Secrecy (PFS) und kannst den Unterschied zum "normalen" Schlüsselaustausch erklären
- Du kennst "Replay Attacks" und weißt was man tun kann, um diese zu verhindern.
- Was sind die Unterschiede zwischen TLSv1.2 und TLSv1.3?
- Du verstehst, was eine Cipher Suite ist, aus welchen Elementen sie besteht und warum das in der Praxis relevant ist.
- Du kannst mit dem Namen
Diffie-Hellmann
etwas anfangen und weißt, warum das für die heutige Verschlüsselung entscheidend ist. - Du weißt, was
Diffie-Hellmann
mit PFS zu tun hat. - Du kennst TLS Session Resumption mit Session Tickets und weißt um die Vorteile und die Sicherheitsprobleme, die damit auftreten können.
- Wie ist das mit TLSv1.3 gelöst?
- Du weißt, wie du eine Webseite auf die Sicherheit der SSL Konfiguration testen kannst.
- Du kennst
Certificate Transparency logs
und weißt wofür das gut ist. - Du weißt, was SNI ist und warum es lange Zeit gedauert hat, bis es häufig konfiguriert wurde.
Inhalte
- Secure Web Browsing Show archive.org snapshot
- Public Key Cryptography Show archive.org snapshot
- Certificate Signing Request Show archive.org snapshot
- How LetsEncrypt works Show archive.org snapshot
- Hashing Algorithms and Security Show archive.org snapshot
- Transport Layer Security (TLS) Show archive.org snapshot
- What are Digital Signatures? Show archive.org snapshot
- What are SSL/TLS Certificates? Why do we Need them? and How do they Work? Show archive.org snapshot
- Man in the Middle Attacks & Superfish Show archive.org snapshot
- Secret Key Exchange (Diffie-Hellman) Show archive.org snapshot
- Perfect Forward Secrecy Show archive.org snapshot
- TLS Handshake Explained Show archive.org snapshot
- TLS Session Resumption: Full-speed and Secure Show archive.org snapshot
- TLS Session Resumption may break Perfect Forward Secrecy (this card is not public)
- Server Name Indication (SNI) Show archive.org snapshot
Aufgaben
- Gehe auf www.makandra.de und finde heraus, wie du dir in deinem Webbrowser das SSL-Zertifikat anzeigen lassen kannst.
- Zeichne eine Beispielgrafik wie die Chain of Trust beim makandra SSL Zertifikat funktioniert. Finde heraus, wie du die Informationen zu dem Zertifikat von https://www.makandra.de erhalten kannst.
- Basierend auf der vorherigen Aufgabe: Welcher Schlüssel signiert was? Welcher Public Key, welcher Private Key und von welcher Stelle signiert was?
- Schau dir crt.sh Show archive.org snapshot an. Was kannst du hier herausfinden? Wie ist es möglich, dass die Informationen dort vorliegen?
- Teste makandra.de auf SSL Labs Show archive.org snapshot . Schau dir das Testergebnis an und verstehe welche Ergebnisse dir angezeigt werden. Schau dir zum vergleich zz_api.abus-server.com an. Sprich mit deinem Mentor über die Testergebnisse
- Schau dir Security/Server Side TLS Show archive.org snapshot an und erkläre deinem Mentor was dieser Wiki Artikel beinhaltet und welche Abwägungen man beim Betrieb eines Webservers treffen muss.
Posted by Claus-Theodor Riegg to DevOps Curriculum (2022-11-08 13:43)