Es ist heutzutage üblich, den HTTP-Verkehr mittels SSL zu schützen. Zwar lässt sich dieser Krypto-Standard schnell und einfach einrichten, aber es wird oft übersehen, dass er nicht sicher ist, wenn man veraltete Versionen oder eine schwache Verschlüsselung nutzt.
Die zahlreichen Attacken der letzten Jahre wie Heartbleed, Poodle oder Freak auf Schwachstellen des Protokolls Secure Sockets Layer, welches unter dem Namen TLS (Transport Layer Security) standardisiert wurde, haben deutlich gemacht, dass Administratoren sich um diesen Aspekt der Security aktiv kümmern müssen.
Best Practices
2015 veröffentlichte das IETF mit RFC 7525 daher konkrete Empfehlungen für den sicheren Einsatz von TLS. Diese besagen, dass unter anderem SSLv2, SSLv3, RC4 und sonstige auf weniger als 112 Bit Schlüssellänge beschränkte Verschlüsselungsalgorithmen nicht verwendet werden dürfen. Vom Einsatz von 3DES zur Verschlüsselung und RSA zum Schlüsselaustausch mit statischen Parametern wird abgeraten.
Das IETF rät konkret unter anderem zu:
- Cipher Suites, die zum Schlüsselaustausch Ephemeral Diffie-Hellman in Kombination mit RSA verwenden (für Forward Secrecy),
- Verschlüsselung mit AES im Galois/Counter Mode mit 128 oder 256 Bit Schlüssellänge,
- Hashfunktion SHA-256 oder SHA-384 für die Pseudozufallsfunktion.
Verbindungssicherheit in CommuniGate Pro korrekt konfigurieren
Administratoren von CommuniGate Pro können mit wenigen Handgriffen diese Empfehlungen umsetzen und deren Wirkung umgehend überprüfen.
Dazu ruft man in der Web-basierten Admin-Konsole den Menüpunkt Einstellungen => Allgemein => Andere auf und nimmt folgende Konfiguration vor:
- "CBC Ciphers for old TLS" abschalten (Default-Einstellung)
- "Weak Ciphers" abschalten (Default-Einstellung)
- Bei "Oldest Accepted" die Option "TLSv1.1" auswählen (hier ist standardmäßig SSLv3 vorgewählt).
Zusätzlich sollte der Administrator die Diffie-Hellman Schlüssellänge auf einen höheren Wert setzen, da die Voreinstellung von CommuniGate Pro hier 1024 ist. Um dies zu ändern, kann man ab Version 6.2 beim Start dafür den Schalter --DHKeySize im Start-Script verwenden. Um etwa eine empfohlene Schlüssellänge von 2240 zu definieren, gibt man "--DHKeySize 2240" an.
Zusätzlich ist seit CommuniGate Pro 6.2c1 für die AES-Kryptosuite der empfohlene Galois Counter Mode fester Bestandteil der TLS-Implementierung.
Sicherheit testen
Verschiedene – zumeist kostenfreie - Online-Tools helfen Administratoren dabei, ihr TLS-Setup schnell und einfach auf Herz und Nieren zu überprüfen. Bewährt hat sich – aufgrund des sehr umfangreichen Tests und des Ratings anhand von Noten – der Service von Qualys.
Mit den oben beschriebenen Einstellungen des CommuniGate Pro Servers sollte hier die Bestnote A erreicht werden. Wird jedoch vom Idealzustand bei der Konfiguration abgewichen, beispielsweise weil SSLv3 oder schwächere Ciphers aus Kompatibilitätsgründen zugelassen werden, dann führt dies umgehend zu einer Abwertung auf die schlechteste Note F.
Wer den Zustand seiner Server nicht einem öffentlichen Tool von Drittanbietern preisgeben will, kann für Prüfungen auf lokal ausführbare Werkzeuge zurückgreifen. Eines davon ist SSLyze, eine Python-Bibliothek mit komfortabler CLI, die auch als Windows-EXE verfügbar ist.
*Dieser Text ist ein bezahlter Beitrag von CommuniGate Systems.
Weitere Beiträge von diesem Anbieter