Alte Cipher Suites entfernen

Alte Cipher Suites entfernen

Ich verwalte einige Websites und eine davon erhielt eine schlechte Sicherheitsbewertung (von der SEC Scorecard). Ich habe einen verwalteten Server, also habe ich die IT-Leute um Hilfe gebeten, würde dieses Problem aber auch gerne etwas besser verstehen.

Das Problem ist, dass es alte TLS1.0- und TLS1.1-Chiffre-Suiten gibt, wie:

TLS_RSA_WITH_IDEA_CBC_SHA (0x0007)
TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA
TLS_RSA_WITH_RC4_128_MD5
TLS_RSA_WITH_3DES_EDE_CBC_SHA

Mein erster Gedanke war, dass diese in den OpenSSL-Konfigurationsdateien zu finden sein müssen. Aber nach einigen Tutorials vermute ich, dass es sich auf die Apache-Konfiguration bezieht. Die httpd.conf(und virtuellen Hosts) haben keine explizit festgelegten Cipher Suites. Aber das Eingebundene httpd-ssl.confhat etwas.

SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLHonorCipherOrder on
 SSLCipherSuite  ECDH+AESGCM:ECDH+CHACHA20:ECDH+AES256:!LOW:!MEDIUM:!3DES:!aNULL:!eNULL:!ADH:!DSS!EXP:!MD5:!PSK:!RC4:!SRP

Was ich derzeit nicht verstehe: Ist das hier der richtige Ort? Vielleicht nicht oder warum liest sich das anders.

Ich habe auf ciphersuite.info gelesen, dass die ersten oben IANA-Namen (?) sind und es OpenSSL-Namen gibt. Aber was ist ECDH+AESGCMzum Beispiel?

Ich könnte eine Anleitung brauchen, wo ich als nächstes suchen soll. Ich möchte keine Informationen kopieren und einfügen, aber ich verstehe etwas mehr von diesem Thema. Ich bin jedoch weder der Sicherheits- noch der Haupt-IT-Typ, also lese ich lieber kein 300-seitiges Buch :-/

Antwort1

Dies SSLCipherSuiteist die richtige Anweisung zum Festlegen der zu verwendenden kryptografischen Algorithmen. In TLS 1.2 müssen Sie eine Kombination aus vier Algorithmen festlegen (eine sogenannte Cipher Suite):

  • Ein Schlüsselaustauschalgorithmus, der dazu dient, ein gemeinsames Geheimnis zwischen Client und Server einzurichten. Aus dem Geheimnis können beide Parteien dann einen Schlüssel für die symmetrische Verschlüsselung ableiten.
  • Ein Signaturalgorithmus für den Schlüsselaustausch.
  • Ein symmetrischer Schlüsselalgorithmus zum tatsächlichen Verschlüsseln und Entschlüsseln der zu übertragenden Daten.
  • Ein Hash-Algorithmus, der verwendet wird, um die Integrität von Nachrichten sicherzustellen (durch einen Nachrichtenauthentifizierungscode) oder einen kryptografisch sicheren Pseudozufallszahlengenerator zu erstellen.

Jede Verschlüsselungssammlung verfügt über eine eindeutige Kennungregistriert durch die IANAund beginnt mit TLS_. Beispielsweise gibt es , TLS_DHE_RSA_WITH_AES_128_GCM_SHA256was für Folgendes steht:

  • Der Schlüsselaustauschalgorithmus ist DHE, also Diffie-Hellman-Schlüsselaustausch mit temporären Schlüsseln.
  • Der Signaturalgorithmus ist RSA.
  • Der symmetrische Kryptografiealgorithmus ist AES mit 128-Bit-Schlüsseln im GCM-Modus.
  • Der Hash-Algorithmus ist SHA-256.

OpenSSL als Anbieter einer konkreten TLS-Implementierung ermöglicht Ihnen die Auswahl von IANA-Chiffre-Suiten über einebenutzerdefiniertes Format namens „Chiffreliste“. Dieses Format unterstützt komplexe Auswahlregeln wie , ECDH+AESGCMdie für alle Cipher Suites steht, die sowohl die Algorithmen ECDH(für Schlüsselaustausch) als auch AESGCM(für symmetrische Verschlüsselung) enthalten. Sie können die genauen Cipher Suites, die Sie erhalten, mit dem Befehl überprüfen openssl ciphers "ECDH+AESGCM". In meinem Fall enthält die Liste beispielsweise die Cipher Suite TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384(oder wie OpenSSL sie nennt, ECDHE-ECDSA-AES128-GCM-SHA256).

Die Saite ECDH+AESGCMselbst istnichteine Cipher Suite. Es handelt sich um eine OpenSSL-spezifische Auswahlregel für Cipher Suites.

In der Praxis würde ich eine konkrete Liste sicherer Cipher Suites verwenden, z. B. dieEmpfehlungen von Mozilla. Bei den OpenSSL-Auswahlregeln besteht das Risiko, dass Sie Cipher Suites einschließen, die Sie eigentlich nicht beabsichtigt haben (obwohl Sie das Ergebnis jederzeit mit dem openssl ciphersoben genannten Befehl überprüfen können).

verwandte Informationen