Kryptografische Protokolle sind entscheidende Elemente von Kommunikationsnetzen, da sie es Maschinen ermöglichen, privat zu kommunizieren, indem sie sichere Verbindungen herstellen. Die Protokolle Secure Sockets Layer (SSL) und Transport Layer Security (TLS) werden heute zur Verschlüsselung von Netzwerkverbindungen verwendet und ermöglichen den Datenschutz und die Integrität von Daten, indem sie sicherstellen, dass die Daten während der Übertragung nur schwer lesbar sind. Wie jede andere Technologie haben jedoch auch diese Protokolle ihre Schwachstellen und Sicherheitslücken.
Die Fehlkonfiguration der SSL-Sicherheit ist einer der am häufigsten ausgenutzten Aspekte eines Tech-Stacks. Dies führte dazu, dass die früheren Versionen von SSL veraltet waren, da es bekannte Schwachstellen in der Sicherheitskonfiguration gab, die zu Zielen für Bedrohungsvektoren werden konnten.
In ähnlicher Weise gibt es bekannte Schwachstellen in breiteren Versionen von TLS-Protokollen, die von böswilligen Angreifern ausgenutzt werden können.
Dieser Artikel befasst sich mit der Kritikalität von SSL- und TLS-Sicherheitsfehlkonfigurationen, gängigen Angriffsmethoden und den wichtigsten Schritten zu ihrer Entschärfung.
TLS- und SSL-Sicherheitsfehlkonfigurationen
Die meisten TLS- und SSL-Sicherheitsfehlkonfigurationen sind auf das Fehlen von Best Practices bei der Einrichtung von Sicherheitsmaßnahmen für Anwendungsserver zurückzuführen. Dies ermöglicht es Hackern, Schwachstellen zu erkennen und sich Zugang zu Systemdaten zu verschaffen oder Kernkomponenten des Tech-Stacks anzugreifen.
Hinzu kommt, dass die zunehmende Komplexität der Anwendungen und Fehlkonfigurationen im Bereich der Sicherheit immer schwieriger zu erkennen sind, so dass Hacker ihre Angriffe ausweiten können, ohne aufgespürt zu werden.
Dieser Abschnitt befasst sich mit einigen der allgemein bekannten Fehlkonfigurationen, ihren häufigen Ursachen und Ansätzen zur Vermeidung solcher Risiken.

Häufige Fehler, die zu Sicherheitsfehlkonfigurationen führen
TLS/SSL-Fehlkonfigurationen sind ein typisches Ziel für Hacker, da sie bekannt sind und leicht entdeckt werden können. Da die Sicherheitsteams Zeit benötigen, um Vektoren in komplexen Kommunikationssystemen aufzuspüren, haben die Angreifer oft die nötige Zeit, um solche Schwachstellen durch Privilegienerweiterung auszunutzen.
Solche Fehlkonfigurationen werden meist durch unbeabsichtigte Fehler bei der Konfiguration eines Tech-Stacks verursacht. Einige dieser Fehler sind:
Beibehaltung von Standardkonten und -kennwörtern
Jedes Softwareprogramm oder Gerät wird mit einer Reihe von Standardanmeldeinformationen für den Erstzugang geliefert, die eine Authentifizierung erfordern. Angreifer verwenden viele Methoden, darunter Brute-Force-Angriffe, um mit ungeschützten Zugangsdaten auf solche Programme/Geräte zuzugreifen und dann ihre Rechte zu erweitern, um weiter in den Tech-Stack einzudringen.
Im Rahmen einer regelmäßigen Sicherheitsüberprüfung wird empfohlen, diese Anmeldedaten sofort nach dem ersten Zugriff zu ändern, nach längerer Nichtbenutzung zu löschen und häufig zu ändern, um Missbrauch zu vermeiden.
Zu viele Informationen in Fehlermeldungen preisgeben
Einige Webserver haben Standardkonfigurationen, die ausführliche Fehlermeldungen enthalten, die sensible Systemdaten offenlegen. Diese Informationen, wie z. B. detaillierte Stack Traces, können von Angreifern ausgenutzt werden, die auf der Suche nach einem Root-Level-Systemzugang sind.
Hacker suchen auch nach spezifischen Schwachstellen auf der Grundlage von Komponentenversionen und Softwareabhängigkeiten, die eine vertikale und horizontale Eskalation ermöglichen, um unbefugten Zugriff auf ein ganzes Anwendungssystem zu erhalten.
Unnötige Funktionen aktiv halten
Unnötige Komponenten, Funktionen und Code-Muster aktiv zu halten, ermöglicht Anwendungsschwachstellen. Einige Funktionen, die bei der Bewertung von Schwachstellen überprüft werden müssen, sind:
- Unnötige offene Ports
- Ungenutzte, aber laufende Dienste
- Zugängliche übrig gebliebene Seiten
- Ungenutzte Konten
Debugging in Produktionsumgebungen aktivieren
Threat vectors take advantage of these mistakes to target system security vulnerabilities. In the section to follow, we discuss some of the well-known TLS/SSL security misconfigurations and their prevention strategies.
Die meisten Softwareteams isolieren ihre Produktions- und Entwicklungsumgebung(en), damit die Entwickler Funktionen testen können, bevor sie in Betrieb gehen. Produktionsinstanzen, die Debugging zulassen, sind anfällig für Angriffe, die dazu führen könnten, dass ein Angreifer Zugang zu sensiblen Informationen, einschließlich Quellcode oder sensiblen Kundendaten, erhält.
Als Best Practice sollte das Debugging nur in den Entwicklungsclustern aktiviert werden, um die Software durch die Analyse hilfreicher Erkenntnisse auf der Grundlage von Nutzung und Datenverkehr zu verfeinern.
Andere häufige Fehler, auf die Softwareunternehmen achten sollten, sind unter anderem:
- Zugängliche, ungeschützte Dateien und Verzeichnisse
- Unsachgemäße Konfiguration von Cloud-Systemen
- Alte oder überholte Softwareversionen
Hacker nutzen diese Fehler aus, um gezielt Sicherheitslücken im System auszunutzen. Im folgenden Abschnitt werden einige der bekannten TLS/SSL-Sicherheitsfehlkonfigurationen und ihre Vermeidungsstrategien erläutert.
Leitfaden
Erfahren Sie, wie Sie verschiedene Arten von SSL/TLS-Schwachstellen erkennen und verhindern können.
Häufige TLS/SSL-Fehlkonfigurationsangriffe und ihre Verhinderung
POODLE
Der Angriff Padding Oracle On Downgraded Legacy Encryption (POODLE) nutzt Server aus, die noch SSL 3.0-Verschlüsselung verwenden. Dieses Protokoll ermöglicht die Kompatibilität mit älteren Systemen und setzt das System einer Schwachstelle im Zusammenhang mit Block-Padding aus.
Angreifer nutzen diese Schwachstelle, um einen Man-in-the-Middle-Angriff zu starten, indem sie vorgeben, ein Webserver zu sein, bis der Client zustimmt, eine SSL 3.0-Verschlüsselung zu verwenden, um sich mit ihnen zu verbinden. Der Angreifer ruft dann die gewünschten Informationen mithilfe automatisierter Tools ab, die die Auffüllungsblöcke ändern und auf die Antwort des Servers warten.
Einige Praktiken zur Verhinderung von POODLE-Angriffen sind:
- Vollständige Deaktivierung von SSL 3.0
- Aufrüstung des Clients auf die neueste Version
- Aktivieren von TLS_FALLBACK_SCSV
BEAST
Der Angriff Browser Exploit Against TLS/SSL (BEAST) ermöglicht es Hackern, sichere Daten zu entschlüsseln, indem sie eine Schwachstelle im Cipher Block Chaining-Modus in TLS 1.0 ausnutzen. Ein Angriff orchestriert einen Man-in-the-Middle-Angriff, um Pakete in den SSL-Stream zu injizieren, und vergleicht dann diese Nachricht mit der verschlüsselten Nachricht, um einen Initialisierungsvektor zu erraten.
BEAST-Angriffe können durch die Verwendung von TLS-Versionen 1.1 und höher verhindert werden.
CRIME
Angreifer können den Angriff Compression Ratio Info-Leak Made Easy (CRIME) verwenden, um Cookie-Werte mithilfe von Rückmeldungen des Webservers zu rekonstruieren und so verschlüsselte Nachrichten abzufangen. Dies wird durch das Ersetzen von Byte-Sequenzen in einem Kompressionsalgorithmus erreicht. CRIME-Angriffe können durch die Verwendung der neuesten Browser-Versionen verhindert werden.
BREACH
Hacker verwenden häufig Browser Reconnaissance and Exfiltration via Adaptive Compression of Hypertext (BREACH-Angriff), um die HTTP-Kompression anzugreifen. Dabei nutzt der Angreifer einen Man-in-the-Middle-Angriff, um den Browser des Kunden mit einer Drittanbieter-Website mit aktiviertem TLS zu verbinden. Auf diese Weise können sie den Datenverkehr zwischen dem Webserver und den Client-Browsern kontinuierlich überwachen. Einige Möglichkeiten, BREACH-Angriffe zu verhindern, sind:
- Deaktivierung der HTTP-Komprimierung
- Erzwingen von HTTP Strict Transport Security (HSTS)
- Aktivieren von sicheren Kanälen für TLS (DNSSEC)
- Trennung von Benutzereingaben und Geheimnissen
Heartbleed
Die OpenSSL-Bibliothek bietet eine Heartbeat-Erweiterung, um eine Verbindung so lange aufrechtzuerhalten, wie die kommunizierenden Parteien existieren.
Heartbleed ist eine Fehlkonfiguration dieser Erweiterung, durch die unverschlüsselte Daten aus dem Speicher des Servers entweichen können. Angreifer können dies erreichen, indem sie eine falsche Datenlänge über den Client senden, und der Server antwortet, indem er die vom Client empfangenen Daten oder einige zufällige Daten aus seinem Speicher sendet, die der vom Client angegebenen Länge entsprechen.
Heartbleed-Angriffe können durch die Verwendung einer aktualisierten Version von OpenSSL verhindert werden.
SSL/TLS-Neuverhandlung
Die Neuverhandlung (Renegotiation) ermöglicht es zwei Parteien, innerhalb einer bestehenden Verhandlung einen neuen Handshake zu beginnen, um neue kryptografische Schlüssel oder Cipher Suites anzufordern. Hacker können den Renegotiation-Prozess nutzen, um Distributed Denial of Service (DDoS)-Angriffe zu initiieren, indem sie zahlreiche gleichzeitige Handshakes anfordern. Dies führt zu einem Denial of Service auf der Schnittstelle des Anwendungsservers. Die Neuverhandlung kann verhindert werden, indem die neueste TLS-Version verwendet und eine sichere Neuverhandlung gewährleistet wird.
Weitere häufige Fehlkonfigurationen, die ausgenutzt werden können, sind:
CCS-Injektionen – Angreifer verwenden böswillige Hosts, um gesicherte Daten abzufangen und zu entschlüsseln, indem sie den Client zwingen, schwache SSL-Schlüssel zu verwenden
Ticketbleed – Der TLS-Stack macht die Verschlüsselung ungültig, indem er verschiedene Bytes der Anfrage für den Angreifer offenlegt.
SSL Drown – Angreifer nutzen die geschwächte Verschlüsselung, um Sitzungsschlüssel für aufgezeichnete Handshakes preiszugeben
SSL Robot – Ermöglicht Angreifern, die Vertraulichkeit der Verschlüsselung zu brechen, indem sie in bestimmte Implementierungen von Cipher Suites eindringen
Scannen Sie hier nach Schwachstellen in der SSL/TLS-Fehlkonfiguration, wie z. B. Sicherheitsheader, TLS-Schlüsselgröße und mehr, sowie nach Abhilfemaßnahmen.
Präventionsguide
Präventionsguide für Schwachstellen durch Sicherheitsfehlkonfigurationen
Erfahren Sie, wie Sie Schwachstellen, die durch Sicherheitsfehlkonfigurationen entstehen, vermeiden können.
Wie man Sicherheitsfehlkonfigurationen vermeidet
Angriffe, die auf eine falsche Sicherheitskonfiguration zurückzuführen sind, können sowohl allgemeine Wissenslücken als auch menschliches Versagen ausnutzen. Wenn Softwareunternehmen die häufigsten Fehler und Schwachstellen kennen, die Angreifer nutzen, können sie auch Maßnahmen zur Vermeidung und Vorbeugung ergreifen.
Nachfolgend finden Sie einige bewährte Praktiken und spezifische Abhilfemaßnahmen zur Vermeidung von häufigen TLS- und SSL-Fehlkonfigurationen:
Best Practices zur Vermeidung von Sicherheitsfehlkonfigurationen
- Entfernen Sie ungenutzte Funktionen – Ungenutzte Funktionen verlangsamen nicht nur das System, sondern machen eine Anwendung auch anfällig für Angriffe. Am besten ist es, Funktionen nur bei Bedarf zu aktivieren.
- Regelmäßige Updates durchführen – Die Verwendung der aktuellsten Softwareversion hilft, Geräte und Anwendungen vor Malware zu schützen, die das Sicherheitsteam möglicherweise noch nicht erkannt hat.
- Automatisiertes Scannen auf Schwachstellen – Nutzen Sie Automatisierungstools und Software, um nach unnötigen Funktionen, nicht verwendeten Standardkonten und Fehlkonfigurationen zu suchen.
- Deaktivieren Sie das Debugging in Produktionsumgebungen – Die Konfiguration aller Debugging-Funktionen auf Prod-Instanzen sollte deaktiviert werden, sofern sie nicht unter außergewöhnlichen Umständen benötigt werden
- Deaktivieren Sie die Auflistung von Verzeichnissen – Stellen Sie sicher, dass alle Dateien und Ordner die richtigen Berechtigungen haben, und schränken Sie dann den Zugriff ein, damit Benutzer nur die Dateien anzeigen können, für die sie die Berechtigungen haben.
- Konten mit Verwaltungsrechten einschränken – Die Verwaltungsrechte sollten standardmäßig für alle Benutzer deaktiviert und nur bei Bedarf geändert werden. Diese Richtlinie sollte regelmäßig überprüft werden, wobei die geringsten Privilegien berücksichtigt werden sollten.
Einige der häufigsten Wege, wie Server kompromittiert werden, sind:
- Verwendung selbstsignierter Zertifikate
- Keine Überprüfung der Gültigkeit von Zertifikaten
- Verwendung veralteter Versionen von OpenSSL
- Verwendung von Standardeinstellungen
- Einrichten falscher Vertrauensketten
- Falsch konfigurierte TLS/SSL-Konfiguration
Spezifische Abhilfemaßnahmen für Fehlkonfigurationen
Fehlkonfigurationen sind zwar leicht zu erkennen und auszunutzen, aber die meisten sind auch gut bekannt und im Repository der standardbasierten Schwachstellenmanagementdaten dokumentiert. Die Datenbank enthält auch Abhilfemaßnahmen für verschiedene Fehlkonfigurationsangriffe. Dazu gehören unter anderem:
- Härtung der TLS-Sitzungswiederaufnahme
- Aktivieren von Perfect Forward Secrecy
- Konfigurieren der SSL-Verschlüsselungsreihenfolge
- Verwendung von Certificate Revocation Lists (CRLs) und des Online Certificate Status Protocol (OCSP)
Aktivieren von fehlenden SSL-Zertifizierungsstellen-Autorisierungsdatensätzen (CAA)
Wie kann ich feststellen, ob meine Anwendung diese Schwachstellen aufweist?
Um sicherzustellen, dass Ihre Anwendung diese Schwachstellen nicht enthält, können Sie Schwachstellen-Scans wie diesen SSL/TLS-Scanner durchführen. Crashtest Security Suite beispielsweise bietet eine automatisierte Lösung zum Scannen auf Sicherheitslücken, die auf anfällige Einstiegspunkte und falsch konfigurierte Protokolle innerhalb eines Anwendungsworkflows prüft.
Es ist wichtig zu verstehen, dass Unternehmen durch den pragmatischen Einsatz verschiedener Best Practices und Tools in der Lage sind, Angriffe zur Ausweitung von Berechtigungen vorzubereiten und zu verhindern.
Zusammenfassung
Fehlkonfigurationen ermöglichen Angreifern den Zugriff auf persönliche Daten, wobei über 70 % der kompromittierten Cloud-Daten im Jahr 2017 auf offene Sicherheitslücken zurückzuführen sind. Darüber hinaus prognostiziert Gartner, dass bis zum Jahr 2025 99 % der Cloud-Sicherheitsausfälle auf das Konto des Kunden gehen werden. Dies verdeutlicht, wie kritisch eine falsch konfigurierte SSL/TLS-Sicherheit ist und dass die meisten Sicherheitsangriffe vermeidbar sind.
Durch den pragmatischen Einsatz verschiedener Best Practices und Tools können sich Unternehmen auf Angriffe zur Eskalation von Berechtigungen vorbereiten und diese verhindern. Die Crashtest Security Suite bietet beispielsweise eine automatisierte Lösung zum Scannen von Schwachstellen, die auf anfällige Einstiegspunkte und falsch konfigurierte Protokolle innerhalb eines Anwendungsworkflows prüft.
Wenn Sie mehr darüber erfahren möchten, wie Crashtest Security einen umfassenden Scan durchführen und Ihren Tech-Stack vor bösartigen Angriffen schützen kann, melden Sie sich einfach an und testen Sie die Software. Die 14-tägige Testversion ist bei vollem Funktionsumfang kostenlos, und es ist keine Kreditkarte erforderlich.