Pudel: Ist das Deaktivieren von SSL V3 auf dem Server wirklich eine Lösung?

39

Ich habe den ganzen Tag über die Pudel-Sicherheitslücke gelesen und bin jetzt ein bisschen verwirrt über Sicherheit und Ertrag.

Wenn ich SSL V3 auf dem Server deaktiviere (SSL V2 und V3 werden beide für Apache deaktiviert), können Clients (Browser), die kein Protokoll unterstützen, SSL V3 jedoch kein HTTPS mit dem Server verbinden.

Es ist also eine Situation, in der sowohl Client als auch Server mit TLS 1.1, 1.2 usw. kommunizieren müssen

Wenn einer von ihnen SSL V3 verwendet und der andere niedrigere Versionen nicht unterstützt, was passiert dann? Keine Verbindung zu SSL.

Ich habe nur wenige Updates für Firefox gesehen. Vielleicht haben sie SSL V3 deaktiviert, so wie wir es normalerweise in den Optionen tun müssen. Dadurch wird die gesamte Verbindung zu niedrigeren Versionen und TLS erzwungen

Aber ist das Deaktivieren von SSL V3 wirklich eine Lösung für dieses Problem?

sandeep.s85
quelle
4
Was meinst du mit "Dies wird alle Verbindungen zu niedrigeren Versionen und TLS erzwingen"? SSLv1 und SSLv2 wurden lange Zeit deaktiviert, da sie fehlerhaft waren. SSLv3 wurde verpönt, war jedoch in vielen Fällen weiterhin in der Lage, ältere Software zu unterstützen. Was ist die niedrigere Version, auf die Sie sich beziehen? TLSv1.0, v1.1, v1.2, ... sind spätere Standards und können als "höhere SSL-Version" betrachtet werden, nur die Versionsnummern wurden mit der Namensänderung zurückgesetzt.
Håkan Lindqvist
Hallo, bisher habe ich Folgendes verstanden: Wenn ich SSL V3 und V2 auf dem Server deaktiviere, wie von Red Hat empfohlen, erfolgt die sichere Verbindung über das TLS-Protokoll. Und wenn die Browser TLS mit dem Server anrufen, gibt es kein Problem mit sicheren Verbindungen.
Ich

Antworten:

52

Lassen Sie uns zunächst einige Dinge klären:

  • TLS hat SSL abgelöst. TLS 1.0 kam nach und ist ein Update auf SSL 3.0.

    TLS 1.2> TLS 1.1> TLS 1.0> SSL 3.0> SSL 2.0> SSL 1.0

  • SSL-Versionen vor 3.0 hatten seit einiger Zeit schwerwiegende Sicherheitslücken und werden von modernen Clients und Servern deaktiviert / nicht unterstützt. SSL 3.0 wird wahrscheinlich bald den gleichen Weg gehen.

  • Von den derzeit verwendeten Protokollen hat "Poodle" die schwerwiegendste Auswirkung auf SSL 3.0, bei dem es keine Möglichkeit gibt, Abhilfe zu schaffen. Es gibt einen ähnlichen Angriff gegen einige TLS 1.0- und 1.1- Implementierungen , den die Spezifikation zulässt - stellen Sie sicher, dass Ihre Software auf dem neuesten Stand ist.


Der Grund, warum "Pudel" auch bei modernen Clients und Servern ein Risiko darstellt, ist die Implementierung eines Fallback-Mechanismus durch die Clients. Nicht alle Server unterstützen die neuesten Versionen. Daher versuchen die Clients jede Version in der Reihenfolge der neuesten Versionen (TLS 1.2, TLS 1.1, TLS 1.0, SSL 3.0), bis sie eine vom Server unterstützte Version finden. Dies geschieht, bevor die verschlüsselte Kommunikation beginnt, sodass ein Man-in-the-Middle-Angreifer (MITM) den Browser zwingen kann, auf eine ältere Version zurückzugreifen, selbst wenn der Server eine höhere Version unterstützt. Dies wird als Protokoll-Downgrade-Angriff bezeichnet.

Insbesondere im Fall von "Pudel" kann ein MITM-Angreifer die Verwendung dieses Protokolls erzwingen, solange sowohl der Client als auch der Server SSL 3.0 unterstützen.

Wenn Sie also SSL 3.0 deaktivieren, hat dies zwei Auswirkungen:

  • Clients, die höhere Versionen unterstützen, können nicht dazu verleitet werden, auf die verwundbare Version zurückzugreifen ( TLS Fallback SCSV ist ein neuer vorgeschlagener Mechanismus zur Verhinderung eines Protokoll-Downgrade-Angriffs, der jedoch noch nicht von allen Clients und Servern unterstützt wird). Aus diesem Grund möchten Sie SSL 3.0 deaktivieren. Die überwiegende Mehrheit Ihrer Kunden fällt wahrscheinlich in diese Kategorie, und dies ist von Vorteil.

  • Clients, die TLS überhaupt nicht unterstützen (wie bereits erwähnt, ist IE6 unter XP so ziemlich das einzige, das noch für HTTPS verwendet wird), können überhaupt keine Verbindung über eine verschlüsselte Verbindung herstellen. Dies ist wahrscheinlich ein kleiner Teil Ihrer Nutzerbasis, und es lohnt sich nicht, die Sicherheit der Mehrheit zu opfern, die auf dem neuesten Stand ist, um dieser Minderheit gerecht zu werden.

Bob
quelle
8
Hallo Bob, das ist Alice hier. Wie Ihre Erklärung, wie Mallet Pudel verwenden kann.
BatteryBackupUnit
+1 Wusste nichts über den Protokoll-Downgrade-Angriff.
Developerwjk
1
UPDATE: "...everything less than TLS 1.2 with an AEAD cipher suite is cryptographically broken, including many implementations which conform to current specifications." zdnet.com/article/poodle-not-fixed-some-tls-systems-vulnerable
BlueCacti
@GroundZero > Es stellt sich jedoch heraus, dass einige TLS-Implementierungen die Füllbytes trotz der Möglichkeit dazu immer noch nicht überprüft haben. => Obwohl TLS 1.0- und 1.1- Implementierungen möglicherweise fehlerhaft sind (und die Spezifikation es ihnen ermöglicht , auf diese Weise fehlerhaft zu sein, was nicht gut ist), ist dies nicht so schlimm wie SSL 3.0, bei dem die Spezifikation selbst fehlerhaft war und es keine gab Weg für eine konforme Implementierung, um es zu umgehen. Darüber hinaus ist das Deaktivieren der TLS 1.0- und 1.1-Unterstützung auf dem Server ein weitaus schwierigeres Problem als das Deaktivieren von SSL 3.0 - ein weitaus größerer Teil Ihrer Benutzer ist betroffen.
Bob
Anscheinend sind in erster Linie die serverseitigen Implementierungen anfällig (?). Korrigieren Sie Ihre TLS-Implementierung auf dem Server, und es sollte Ihnen nichts ausmachen (?). [Ich habe nicht ausreichend nachgesehen, um zu bestätigen, dass Browser und andere Clients nicht betroffen sind , aber der Wortlaut in Ihrem verlinkten Artikel und dessen Quelle legen nahe, dass].
Bob
27

Ihre Einschätzung ist richtig. Clients müssen neuere Protokolle verwenden, um eine Verbindung zu Ihrem Server herzustellen, sobald Sie SSL 3 deaktivieren. Das SSL 3-Protokoll ist fehlerhaft, und es gibt keinen "Patch". Die Deaktivierung von SSL 3 ist die einzige Lösung.

An diesem Punkt haben so viele Websites SSL 3 deaktiviert, dass ein Upgrade für Benutzer älterer Browser praktisch unumgänglich ist. Angenommen, Sie protokollieren Zeichenfolgen von Benutzeragenten, können Sie Ihre Protokolle überprüfen und eine fundierte Entscheidung über die Deaktivierung von SSL 3 treffen. Ich halte es für wahrscheinlich, dass nur ein kleiner Prozentsatz der Besucher Ihrer Website Browser verwenden, die die neueren Protokolle nicht verarbeiten können.

[fwiw - cloudflare meldet, dass 1,12% der Benutzer IE6 XP-Benutzer sind, abhängig von SSLv3]

Evan Anderson
quelle
1
Zwar ist SSLv3 fehlerhaft und die einzige echte Lösung besteht darin, SSLv3 zu deaktivieren. Es gibt auch eine Minderung für den Pudelangriff, bei dem SSLv3 nicht deaktiviert werden muss, wenn Sie die RC4-Verschlüsselung für TLS 1.0-Clients akzeptieren können, da Pudel nur CBC-Modus-Verschlüsselungen (AES) betrifft. Ich habe es hier beschrieben: serverfault.com/q/637848/249649
cypres
2
TLS_FALLBACK_SCSVmindert den Angriff jedoch nicht für ältere Clients. Ältere Clients können weiterhin das fehlerhafte Protokoll verwenden, während unerwünschte Protokollversions-Downgrades für neuere Clients verhindert werden. Wenn SSLv3 für Clients aktiviert bleibt, ist der Datenverkehr potenziell Angreifern ausgesetzt.
Evan Anderson
RC4 mildert diesen Angriff für ältere Clients, nicht für SCSV. Wir verwenden jedoch lieber kein RC4, weshalb ich auch empfehle, SSLv3 zu deaktivieren, wenn dies überhaupt möglich ist.
cypres
1
@cypres - Ja - 'TLS_FALLBACK_SCSV' hilft älteren Clients nicht. Ich würde argumentieren, dass es auch nicht hilfreich ist, eine Chiffre zu verwenden, die nachweislich schwerwiegende Schwächen aufweist. Wir müssen dies zu einem "Flaggentag" machen, der SSL 3.0 aus dem Netz entfernt. Sicher - Wenn Sie ältere Appliances, eingebettete Geräte usw. haben, die TLS in Ihrem Unternehmen nicht unterstützen, können Sie SSL 3.0 ausführen. Ich denke, es ist unverantwortlich, jemanden zu ermutigen, weiterhin SSL 3.0 im öffentlichen Internet zu verwenden.
Evan Anderson
Heute habe ich SSLv3 in Firefox deaktiviert und nur TLS zugelassen. Beim Surfen auf Websites im Internet werden ziemlich viele SSL-Verbindungsprobleme angezeigt. Ich unterstütze Hunderte von Linux-Servern, auf denen sslv3 aktiviert ist. Ich kann mich irren, aber die ultimative Lösung für diese Situation ist, bis die Betriebssystemhersteller einen Patch veröffentlichen, damit auf Client-Seite nichts unternommen werden sollte. Das Problem ist, dass Sie die Auswirkungen nicht vorhersagen können.
sandeep.s85
20

Ja, durch Deaktivieren von SSL3 können Benutzer, die TLS nicht unterstützen, nicht auf Ihre Website zugreifen.

Schauen Sie sich jedoch aus praktischer Sicht an, welche Browser in diese Kategorie fallen. Chrome und Firefox unterstützen beide TLS und werden aufgrund dieses Fehlers sogar die SSL3-Unterstützung vollständig einstellen. IE hat es seit IE7 unterstützt. Der einzige Browser, der keine Unterstützung bietet, aber dennoch global verwendet wird, ist der IE6. Der einzige Grund, der noch verwendet wird, sind zwei Gründe:

  1. Jeder mit einer geknackten Version von XP und keiner Möglichkeit, Chrome oder Firefox zu verwenden;
  2. Jeder, der eine Unternehmens- oder Regierungsrichtlinie mit Einschränkungen hinsichtlich der Auswahl des Browsers einhält.

In beiden Fällen wird IE6 verwendet, da dies der Standard-Windows XP-Browser ist, der mit der ursprünglichen Installation geliefert wird. Darüber hinaus ist der einzige Grund, warum IE6 immer noch einen (kleinen) globalen Marktanteil hat, auf die vielen Benutzer in China zurückzuführen.

Also, lange Rede kurzer Sinn: Hier sind 3 Fragen:

  1. Haben Sie eine bedeutende chinesische Nutzerbasis?
  2. Unterstützt Ihre Website IE6, obwohl es veraltet und kaputt ist?
  3. Handelt es sich bei Ihrer Website um ein Produkt, das von einer Regierung oder einem Unternehmen mit Browser-Auswahlbeschränkungen verwendet wird?

Wenn eine dieser drei Aussagen zutrifft, müssen Sie eine alternative Lösung finden. Wenn alle 3 falsch sind, einfach deaktivieren und fertig. Und wenn Sie die alternative Lösung benötigen, können Sie den kleinen Teil Ihrer Nutzerbasis, der immer noch IE6 verwendet, verdammt schwer davon überzeugen, von einem 13 Jahre alten Browser wegzuschalten.

Nzall
quelle
7

Sie erwähnen " Apache " und " Browser " in Ihrer Frage, aber der Titel ist allgemeiner.

Wie Evan und andere betonen, ist das Problem für HTTPS so gut wie gelöst. Es gibt jedoch eine Reihe anderer Protokolle, die ein Server möglicherweise verschlüsselt, und die TLS-Unterstützung auf diesem Client ist viel schlechter (wie ich heute Morgen herausgefunden habe, als auf einem IMAP / S-Server "kein SSL3" vorgeschrieben war).

Ich fürchte, die Antwort lautet: " Es hängt davon ab, welche Dienste Sie verschlüsseln und welche Kunden TLS unterstützen ."

Edit : ja, das war mein Punkt, obwohl ich froh bin, dass du damit einverstanden bist. Das Deaktivieren von sslv3 erfolgt auf Service-by-Service-Basis. Zum Beispiel ist der Weg, um es auf Taubenschlag auszuschalten, zu setzen

ssl_cipher_list = ALL:!LOW:!SSLv2:!SSLv3:!EXP:!aNULL

in dovecot.conf. Das größere Problem ist, dass, während die meisten Browser den Verlust von sslv3 tolerieren, Clients anderer Dienste viel weniger tolerant zu sein scheinen. Ich habe heute Morgen ungefähr die Hälfte meiner Benutzer getrennt, als ich das bei Dovecot abgestellt habe. Android-Telefone mit K-9 Mail und Outlook unter Win7 sind zwei, die ich sicher kenne, aber ich kann anhand meiner Protokolle feststellen, dass es mehr gibt.

Das Deaktivieren von SSLv3 ist nicht nur eine gültige, sondern auch die einzige Lösung. aber es wird weh tun.

Edit 2 : danke an dave_thompson_085 für den Hinweis, dass das Deaktivieren von SSLv3-Verschlüsselungen in dovecot nicht nur das SSLv3-Protokoll, sondern auch TLSv1.0 und TLSv1.1 deaktiviert, da sie keine Verschlüsselungen haben, die das frühere Protokoll nicht hat. Dovecot (zumindest frühere Versionen, einschließlich der von mir ausgeführten) scheint nicht in der Lage zu sein, Protokolle anstatt Chiffriersprachen zu konfigurieren. Dies erklärt wahrscheinlich, warum es so viele Kunden kaputt gemacht hat.

MadHatter unterstützt Monica
quelle
1
Ich habe jetzt auch gelesen, dass dies nicht nur die Webserver betrifft, sondern auch alle Dienste, die auf dem Server ausgeführt werden und SSL verwenden, dh Webserver, LDAP-Server, SSH-Dämonen, POP3-Server, SMTP-Server. Für Webserver haben wir also die Konfiguration in Apache mod_ssl Konfigurationsdatei als SSLProtocol All -SSLv2 -SSLv3 Wir müssen uns auch mit anderen Diensten befassen, wie wir verhindern, dass Client / Server SSLv3 verwenden
sandeep.s85
Der eigentliche POODLE-Angriff basiert, wie im Sicherheitshinweis beschrieben , auf einer angemessenen Anzahl von Anfragen, die vom Angreifer kontrolliert werden können. Im Kontext von HTTPS und Browsern ist dies dank Skripten möglich, aber im Kontext von z. B. IMAPS bin ich nicht davon überzeugt, dass dies eine praktische Sache ist. SSLv3 auf breiter Front loszuwerden ist natürlich ideal, aber ich bin mir nicht sicher, ob POODLE für einige dieser anderen Fälle relevant ist.
Håkan Lindqvist
Håkan, mit der Zeit stimme ich Ihnen immer mehr zu.
MadHatter unterstützt Monica
3
Das Deaktivieren von Chiffren !SSLv3 in openssl deaktiviert tatsächlich alle Protokolle mit Ausnahme von TLSv1.2, was für Ihre Kollegen möglicherweise nicht gut ist. Aus diesem Grund ist das Deaktivieren des Protokolls besser, AFAICS jedoch nur in Dovecot 2.1+. Siehe security.stackexchange.com/questions/71872/… .
Dave_thompson_085
@ Dave_Thompson_085: Wenn Sie " Deaktivieren ... in Openssl " sagen, meinen Sie " Deaktivieren ... in Dovecot "? Wenn ja, stimme ich Ihnen zu, und ich werde meine Antwort im Lichte dieser Informationen ändern, wenn Sie dies wie gewünscht klären können.
MadHatter unterstützt Monica
6

SSLv3 zu deaktivieren ist die beste Lösung, aber ich bin nicht der Meinung, dass dies die einzige Lösung ist. Wie in CloudFlare beschrieben, ist die Verwendung von SSLv3 sehr gering , sodass die meisten Administratoren keine Probleme haben sollten, es zu deaktivieren.

Wenn Sie eine spezielle Anforderung für SSLv3 haben, müssen Sie möglicherweise IE6 unter Windows XP unterstützen, oder Sie müssen sehr alte Software unterstützen.

Die Möglichkeit, dies zu verringern und SSLv3 beizubehalten, besteht darin, RC4 zu verwenden und TLS Fallback SCSV zu unterstützen, das von OpenSSL 1.0.1j bereitgestellt wird. RC4 ist im qualys-Beitrag über Pudel die "bestimmte unsichere Stream-Chiffre, deren Namen niemand erwähnen will".

Dies ist, was Google auf mail.google.com tut, und sie beschreiben es auch in ihrem Blogeintrag: http://googleonlinesecurity.blogspot.se/2014/10/this-poodle-bites-exploiting-ssl-30.html

cypres
quelle
2
Ich bin mir wirklich nicht sicher, was schlimmer ist, das System für Pudel offen zu lassen oder auf RC4 herunterzuschalten ...
Brian Knoblauch
Clients, die TLS 1.1+ unterstützen, schalten nicht auf RC4 herunter. Ich bin kein Experte, aber ich glaube, Pudel ist schlimmer.
Cypres
Steht RC4 nicht im Wesentlichen für Raw Cleartext?
Hagen von Eitzen
1
Sicher scherzen Sie, aber erheben Sie einen gültigen Punkt. Es ist nicht so schlimm kaputt, das ist eine wirklich gute Antwort auf diese
Frage unter
2

Ein Detail fehlt im Gespräch, basierend auf der ursprünglichen Frage ist es möglicherweise eine gute Idee, es zu notieren. TLS 1.0 wird auch als SSL 3.1 bezeichnet. Daher sollten Sie sich das Original-Poster in Ihrer Konfiguration ansehen, wenn Sie Version 3.0 oder Version 3.1 ausführen

Cybersecchimesin
quelle
-3

Wie bei den meisten Dingen lautet die Antwort "es kommt darauf an". Der einzige Browser in irgendeiner Art von "allgemeiner" Verwendung, der TLS nicht unterstützt, ist IE6. Leider geht aus verschiedenen Berichten hervor, dass IE6 bis zu einigen Prozent der globalen HTTP-Anforderungen ausmacht (siehe: http://news.netcraft.com/archives/2014/10/15/googles-poodle-affects-oodles.html ). . Die gute Nachricht in Nordamerika ist, dass es in den USA relativ ungewöhnlich ist. Um sicherzugehen, sollten Sie sich die Statistik der Benutzeragenten in Ihren WWW-Protokollen ansehen. In meinem Fall gab es so wenige IE6 ua-Fingerabdrücke, dass ich davon ausging, dass sie alle von Testwerkzeugen stammten.

Sie können Ihre Website (s) mit dem Tester von ssllab testen, um zu sehen, wie verschiedene Agenten reagieren.

https://www.ssllabs.com/ssltest/

TL; DR - SSLv3 ist tot; Es lebe TLS.

Joshua Hoblitt
quelle
15
IE6 ist nicht die letzte mit XP kompatible Version, sondern die Version, mit der XP ausgeliefert wurde. IE8 ist die letzte mit XP kompatible Version.
Håkan Lindqvist
6
-1 aufgrund von sachlicher Unrichtigkeit zeigt an, dass IE6 die neueste Version auf XP ist.
TomTom
may be as much as a few percent of global HTTP requests. Ich hätte gerne eine Quelle dafür. CloudFlare sagt dies über die Verwendung: In other words, even on an out-of-date operating system, 98.88% Windows XP users connected using TLSv1.0+( blog.cloudflare.com/… ). Welches ist weit weniger als "ein paar Prozent" weltweit.
Fälscher
1
Ich vermute, dass Cloudflares-Kunden hauptsächlich große nordamerikanische Unternehmen sind. Die Statistik, die ich zitiert habe, stammt von netcraft: news.netcraft.com/archives/2014/10/15/… "Trotz seines Alters und des Endes der Microsoft-Unterstützung für Windows XP ist IE6 nach wie vor beliebt und macht weltweit mehr als 3,8% der Webbesuche aus und 12,5% in China. Diese Sicherheitsanfälligkeit könnte für IE6 und Windows XP den Ausschlag geben. "
Joshua Hoblitt