Frage:
Wie kann ich die Verschlüsselungsstärke einer SSL-Verbindung ermitteln?
Flash
2011-07-25 06:35:21 UTC
view on stackexchange narkive permalink

Wie kann ich die Verschlüsselungsstärke der Verbindung bestimmen, wenn ich eine Verbindung zu einer https -URL hergestellt habe? Nach meinem Verständnis werden die Informationen nach dem asymmetrischen Handshake mit öffentlichem Schlüssel mit einem symmetrischen Schlüssel mit einer bestimmten Stärke verschlüsselt, aber ich kann diese Zahl (128-Bit usw.) scheinbar nicht finden.

Bitte lassen Sie mich Ich weiß, ob ich mit dem Prozess auch etwas falsch verstehe.

Bearbeiten : Der Grund, den ich frage, ist, dass ich eine Vorlage für einen Sicherheitsausschluss habe, der eine Erklärung Diese Website enthält verwendet XX-Bit-Verschlüsselung und ich möchte diese mit der richtigen Nummer füllen.

Welchen Browser benutzt du?
IE8, aber meine Benutzer verwenden verschiedene Browser und ich möchte auf der Website eine Erklärung zur verwendeten Sicherheit abgeben (siehe Update). Oder ist eine solche Aussage ohne Kenntnis des Browsers nicht möglich?
Fragen Sie nach der Client-Seite im Browser oder wie können Sie diese auf dem Server extrahieren, um sie auf der von Ihnen bereitgestellten Webseite zurückzugeben?
Nur weil Ihre bestimmte Verbindung eine bestimmte Bitlänge verwendet, kann der Webserver (wie Apache) weiterhin so konfiguriert werden, dass unterschiedliche Schlüssellängen verwendet werden. `http: //kb.vmware.com/selfservice/microsites/search.do? language = en_US & cmd = displayKC & externalId = 2009867`
Ich bin nicht sicher, aber [sha2sslchecker.com] (http://www.sha2sslchecker.com) kann Ihnen helfen.
Zehn antworten:
M'vy
2011-07-25 12:55:16 UTC
view on stackexchange narkive permalink

Die symmetrische SSL-Verschlüsselung ist das Ergebnis einer Aushandlung zwischen Client und Server. Es ist möglich, es von der Serverseite aus mithilfe der Konfigurationsdateien einzuschränken. Zum Beispiel enthält die Apache-SSL-Konfiguration eine

  SSLCipherSuite ALL :! ADH: RC4 + RSA: + HIGH: + MEDIUM: + LOW: + SSLv2: + EXP: + eNULL  

Dies kann so eingestellt werden, dass nur die stärksten Verschlüsselungen akzeptiert werden. Beispielsweise möchten Sie möglicherweise nur Folgendes benötigen:

  SSLProtocol all -SSLv3 -SSLv2SSLCipherSuite HIGH : MEDIUM  

Andere Variablen können verwendet werden, um mehr Dinge wie die Clientauthentifizierung auszuführen oder Verschlüsselungen pro Verzeichnis zu erfordern.

Sie können die Aushandlung auch von der Clientseite aus bearbeiten. Ein Beispiel finden Sie unter diesem Link, der ein wenig über die Optimierung der Firefox-SSL-Einstellungen spricht. Ich gehe davon aus, dass auch andere Browser Möglichkeiten haben, dies zu tun.

auf dieser Seite heißt es anscheinend:

Der Server entscheidet über die Liste von Kryptographie- und Komprimierungsalgorithmen, die vom Client gesendet werden, um die Sitzung fortzusetzen oder abzubrechen. In beiden Listen muss mindestens eine Übereinstimmung vorhanden sein, da sonst die Sitzung fehlschlägt. Die Verschlüsselungskombination, die den höchsten Platz in der Kundenliste einnimmt, wird für die zukünftige Kommunikation verwendet.

Ich suche nach dem offiziellen Protokoll.

Ich glaube nicht, dass Sie "SSLProtocol all" wollen ...
@AviD vertraut niemals dem Kopieren / Einfügen: P Ich habe SSLv2 entfernt. Danke.
Das offizielle SSL / TLS-Protokoll ist je nach Version RFC 2246, 4346 oder 5246 (TLS 1.0 bis 1.2). Fazit: Der Client sendet eine geordnete Liste der unterstützten Cipher Suites ("bevorzugte" zuerst), dann wählt der Server eine davon aus. Viele SSL / TLS-Server berücksichtigen die Clienteinstellungen, d. H. Wählen Sie die erste Verschlüsselungssuite aus, die sie ebenfalls unterstützen (abhängig von ihrer Konfiguration), aber das ist nur Tradition.
In der Praxis benötigen Sie nur reguläres 3DES mit RSA-Schlüsselaustausch (unterstützt ab NT4) und AES-Varianten (vorzugsweise mit EDH-Schlüsselaustausch): `DHE-RSA-AES256-SHA: AES128-SHA: DES-CBC3-SHA: EDH- RSA-DES-CBC3-SHA: AES256-SHA ".
@M'vy Neuere Untersuchungen (POODLE-Sicherheitsanfälligkeit) haben ergeben, dass Sie auch SSLv3 entfernen müssen. Am besten ist jetzt SSLProtocol + TLSv1.2 + TLSv1.1 + TLSv1
lew
2011-07-25 06:48:03 UTC
view on stackexchange narkive permalink

SSL Labs verfügen auf ihrer Site über ein SSL Server Test -Tool, mit dem eine SSL-fähige Site getestet und wertvolle Informationen über ihre Sicherheit (z. B. Schlüssellänge) bereitgestellt werden. einschließlich bekannter Sicherheitslücken, die für die Konfiguration spezifisch sind.

+1 für SSL Labs, dies testet jedoch nur auf * Unterstützung * - wie @Justice antwortete, wählt das Protokoll zur Laufzeit eine davon aus, und es ist unmöglich, im Voraus zu sagen, welche Client-Konfiguration verwendet wird.
@AviD, gültiger Punkt. Da es nicht möglich ist zu garantieren, was der Client verwenden wird, könnte das OP möglicherweise seinen Haftungsausschluss mit dem Status "Diese Website / unterstützt / XX-Bit-Verschlüsselung" aktualisieren.
Das ist eine gute Idee. Oder lassen Sie es zur Laufzeit entsprechend der ausgewählten Suite aktualisieren - aber ich bin mir ziemlich sicher, dass dies nicht so einfach ist, wenn es überhaupt möglich ist.
@AviD, Apache2 teilt Ihnen mit, welche Verschlüsselung verwendet wird, daher sollten Sie über die Informationen verfügen.Es ist jedoch möglicherweise nicht so einfach, diese Zeichenfolge in eine Anzahl von Bits umzuwandeln ...
user3645
2011-07-26 05:04:38 UTC
view on stackexchange narkive permalink

Hmm, es gibt eine Reihe von Werkzeugen, die Sie verwenden können. Auf einem Linux-System:

Initiieren Sie eine einzelne SSL-Verbindung zur Website über den Browser usw. ....

Geben Sie den folgenden Befehl ein:

  ssldump -i eth0 -p 80  

Hiermit wird der SSL-Handshake für den Webserver erläutert (indem der SSL-Verkehr auf der spezifischen Schnittstelle ausgegeben wird). Der Speicherauszug zeigt die verwendete Verschlüsselungssuite.

Suchen Sie danach: cipherSuite TLS_RSA_WITH_RC4_128_SHA

Möglicherweise müssen Sie eth0 durch den Namen Ihrer Standard-Ethernet-Schnittstelle ersetzen.

Beachten Sie, dass die Befehlszeilenoption -p nicht der PORT, sondern das PASSWORT ist.Also ist "80" wahrscheinlich nicht korrekt?
yfeldblum
2011-07-25 08:07:17 UTC
view on stackexchange narkive permalink

SSL enthält eine Funktion, die als "Ciphersuite-Aushandlung" bezeichnet wird. Der Client zeigt eine Liste der Verschlüsselungssuiten an, die er verwenden möchte, und der Server wählt seinen Favoriten aus dieser Liste aus. Obwohl Sie Ihre Website möglicherweise mit Ihrer Kopie eines Browsers testen, verwendet möglicherweise eine andere Person einen anderen Browser mit einer anderen Konfiguration, und Ihre Website verwendet möglicherweise eine schwächere Chiffrensuite für diese Person.

Sie sollten die Dokumentation auf überprüfen Ihren Webserver, um zu verstehen, wie Sie Ihren Webserver so konfigurieren, dass nur die Chiffresuiten verwendet werden, die Ihren Anforderungen entsprechen.

Robert David Graham
2011-07-27 21:48:47 UTC
view on stackexchange narkive permalink

Wenn Sie Chrome und möglicherweise Firefox verwenden, können Sie in der URL-Leiste links neben https: // xxx auf Inhalte klicken und diese überprüfen. Hier erfahren Sie, welche Cipher Suite ausgewählt wurde (z. B. RC4 oder AES) und wie groß der verwendete Schlüssel ist.

Ich verwende derzeit Safari (neues MacBook Air) und nicht sofort sehen, wie das geht. Wenn Sie oben rechts auf das Schlosssymbol klicken, wird nur das Zertifikat angezeigt, nicht jedoch die Stärke der aktuellen Verbindung.

Die andere Möglichkeit besteht darin, einen Paket-Sniffer zu verwenden - genau das, was SSL voraussetzt zu schützen gegen. Die ersten Pakete, in denen der Verschlüsselungsalgorithmus und die Stärke ausgehandelt werden, sind unverschlüsselt. Sie können an ihnen erkennen, welche Stärke sie für eine Verbindung ausgewählt haben.

In meiner Antwort wurden explizite Schritte und Details hinzugefügt, um Roberts Antwort zu ergänzen.
john
2011-07-28 16:05:26 UTC
view on stackexchange narkive permalink

Ich wollte nur zu den obigen Antworten hinzufügen, dass der einzige Weg, um das gewünschte Ergebnis zu erzielen, darin besteht, dass der Server keine Verhandlungen führt oder nur einige Chiffren derselben Länge verwendet.

Für In Apache können Sie beispielsweise

  SSLRequire% {SSL_CIPHER_USEKEYSIZE} = 256  

hinzufügen, um nur 256 Schlüsselgrößen zu akzeptieren.

Seien Sie jedoch vorsichtig, da dies wahrscheinlich dazu führen wird, dass Clients keine Verbindung herstellen können, wenn sie keine vom Server zugelassene Verschlüsselungssuite anbieten. Wenn Sie diesen Pfad beschreiten, sollten Sie die SSL-Aushandlungsfehler auf dem Server einige Zeit überwachen, um Schätzungen vorzunehmen.

Tie-fighter
2011-07-29 07:09:51 UTC
view on stackexchange narkive permalink

Kundenseite:

Für Firefox gibt es eine Erweiterung: https://addons.mozilla.org/en-US/firefox/addon/cipherfox/

Klicken Sie mit der rechten Maustaste und wählen Sie "Seiteninformationen anzeigen".

Serverseite:

siehe Wie kann ich die Verschlüsselungsstärke einer SSL-Verbindung bestimmen?

user76905
2015-05-20 18:55:51 UTC
view on stackexchange narkive permalink

In IE-8 können Sie nach dem Aufrufen einer https-Site Datei-> Eigenschaften auswählen. Daraufhin wird die Art der verwendeten Verschlüsselung angezeigt. Klicken Sie für Firefow auf das Schlosssymbol links neben der URL und wählen Sie Weitere Informationen.

JohnC
2016-09-12 21:04:29 UTC
view on stackexchange narkive permalink

So fügen Sie eine Antwort zu @ Robert-David-Graham hinzu:

Wenn Sie in Chrome auf das Schlosssymbol klicken, wird die Registerkarte Entwicklertools> Sicherheit angezeigt. Aktualisieren Sie die Seite, um die Sicherheitsinformationen für die Seitenursprünge abzurufen. Verwenden Sie dann das linke Navigationsgerät, um von der Übersicht zum Hauptursprung (oder einem anderen Ursprung) zu wechseln. Dort sehen Sie das Verbindungsprotokoll, den Schlüsselaustausch und die Cipher Suite.

Sample LinkedIn home page security info

Peter Green
2016-09-12 22:03:38 UTC
view on stackexchange narkive permalink

Die Chiffresuite wird von Client und Server ausgewählt.

Der Client sendet eine Liste akzeptabler Chiffresuiten an den Server, die nach Präferenz sortiert sind. Der Server wählt dann einen aus und informiert den Client. Der Server soll die Client-Einstellungen berücksichtigen, tut dies jedoch möglicherweise nicht (in Apache steuert die Einstellung "SSLHonorCipherOrder" dies).

Die meisten Browser bieten beispielsweise eine Möglichkeit, um festzustellen, welche Verschlüsselungssuite verwendet wird In Firefox klicken Sie auf das Symbol neben der Adressleiste. Klicken Sie dann auf den Pfeil seitwärts und dann auf weitere Informationen. Zum Beispiel von Google, das ich bekomme.

TLS_ECDHE_RSA_WITH_AES128_GCM_SHA256

Diese Zeichenfolge enthält verschiedene Informationen (googeln Sie, wenn Sie eine vollständige Erklärung wünschen), aber das wichtige Bit für diese Frage ist "AES128-GCM" ". Dies zeigt Ihnen, dass der Verschlüsselungsalgorithmus im GCM-Modus AES 128 (also 128-Bit-Verschlüsselung) ist.

Der Grund, den ich frage, ist, dass ich eine Vorlage für einen Sicherheitsausschluss habe, der eine Erklärung dieser Website enthält verwendet XX-Bit-Verschlüsselung und ich möchte diese mit der richtigen Nummer füllen.

Die von Ihnen vorgeschlagene Gefahr besteht darin, dass der ausgewählte Verschlüsselungsalgorithmus vom Client abhängt. Der am wenigsten schlechte Encyrption-Algorithmus, der vom SSL / TLS-Stack in Windows XP unterstützt wird (unter anderem vom IE verwendet), ist 3DES, das eine effektive Sicherheitsstufe von 112 Bit aufweist.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...