Ist es akzeptabel, von einem http-Formular über https zu senden? Es scheint sicher zu sein, aber es erlaubt einen Mann im mittleren Angriff ( hier ist eine gute Diskussion ). Es gibt Websites wie mint.com , auf denen Sie sich von einer http-Seite aus anmelden können , aber einen https-Beitrag verfassen . Auf meiner Website besteht die Anforderung darin, eine http-Landingpage zu haben, sich jedoch sicher anmelden zu können. Lohnt sich das mögliche Sicherheitsrisiko nicht und sollte ich alle Benutzer dazu bringen, sich auf einer sicheren Seite anzumelden (oder die Zielseite sicher zu machen)?
73
Antworten:
Gibt es einen Grund nicht HTTPS für die gesamte Transaktion zu benutzen? Wenn Sie keinen sehr guten finden können, verwenden Sie ihn!
Es ist wohl einfacher als das Wechseln von Protokollen.
Das MITM-Risiko ist real.
Wenn Sie Ihrem Link folgen, weist der Benutzer "Helios" darauf hin, dass die Verwendung von 100% HTTPS für den Benutzer weitaus weniger verwirrend ist.
quelle
Durch das Posten eines Formulars von einer http-Seite auf eine https-Seite werden die Daten im Formular verschlüsselt, wenn sie auf einfachste Weise übertragen werden. Wenn es einen Man-in-the-Middle-Angriff gibt, werden Sie vom Browser gewarnt.
Wenn jedoch das ursprüngliche http-Formular Man-in-the-Middle unterzogen wurde und die https-Post-Back-Adresse vom Angreifer geändert wurde, wird keine Warnung angezeigt. Die Daten werden weiterhin tatsächlich verschlüsselt, aber der Man-in-the-Middle-Angreifer kann sie entschlüsseln (da er Ihnen den Schlüssel zuerst gesendet hat) und die Daten lesen.
Wenn das Formular Dinge auf andere Weise zurücksendet (Skriptverbindungen), besteht möglicherweise die Möglichkeit, dass unverschlüsselte Daten über das Kabel gesendet werden, bevor das Formular veröffentlicht wird (obwohl eine gute Website dies niemals mit sensiblen Daten tun würde). .
quelle
Diese Art von Dingen taucht überall im Internet auf, insbesondere auf Websites, für die die Anmeldung optional ist. Es ist jedoch aus subtilen Gründen von Natur aus unsicher und gibt dem Benutzer ein falsches Sicherheitsgefühl. Ich denke, es gab kürzlich einen Artikel darüber auf codinghorror.com .
Die Gefahr besteht darin, dass die Seite, auf der dieser Verweis vorkommt , während Sie Ihre Seite mit dem Post-Ziel " https: // xxx " gesendet haben, nicht sicher ist. Daher kann sie während der Übertragung von einem Angreifer so geändert werden, dass sie auf eine beliebige URL des Angreifers verweist wünscht sich. Wenn ich Ihre Website besuche, muss ich die Quelle anzeigen, um zu überprüfen, ob meine Anmeldeinformationen an eine sichere Adresse gesendet werden. Diese Überprüfung ist nur für diese bestimmte Übermittlung relevant . Wenn ich morgen zurückkehre, muss ich die Quelle erneut anzeigen, da diese bestimmte Übermittlung der Seite möglicherweise angegriffen und das Post-Ziel unterlaufen wurde. Wenn ich nicht jedes Mal überprüfe, bis ich weiß, dass das Post-Ziel unterwandert wurde, ist dies der Fall zu spät - Ich habe meine Anmeldeinformationen bereits an die URL des Angreifers gesendet.
Sie sollten nur einen Link zur Anmeldeseite bereitstellen. und die Anmeldeseite und alles danach sollte HTTPS sein, solange Sie angemeldet sind. Und es gibt wirklich keinen Grund, dies nicht zu tun. Die Last von SSL liegt bei den ersten Verhandlungen. Die nachfolgenden Verbindungen verwenden SSL-Sitzungs-Caching, und die für die Verbindungsdaten verwendete symmetrische Krypto ist tatsächlich äußerst kostengünstig.
quelle
IE Blog erklärt: Kritischer Fehler Nr. 1: Nicht-HTTPS-Anmeldeseiten (auch wenn sie an eine HTTPS-Seite gesendet werden)
quelle
Jay und Kiwi haben Recht mit dem MITM-Angriff. Es ist jedoch wichtig zu beachten, dass der Angreifer das Formular nicht brechen und eine Fehlermeldung geben muss. Der Angreifer kann stattdessen JavaScript einfügen, um die Formulardaten zweimal zu senden, einmal an ihn und einmal an Sie.
Aber ehrlich gesagt müssen Sie sich fragen, wie groß die Chance ist, dass ein Angreifer Ihre Anmeldeseite abfängt und sie im Flug ändert. Wie ist es im Vergleich zu dem Risiko, (a) eine MITM-Angriffsstraße in der SSL-Sitzung durchzuführen und zu hoffen, dass der Benutzer "OK" drückt, um fortzufahren; (b) Führen Sie das MITM bei Ihrer ersten Weiterleitung zu SSL (z. B. von http://example.com zu https://example.com ) durch und leiten Sie stattdessen zu https://doma1n.com um , das unter der Kontrolle des Angreifers steht ;; (c) Sie haben irgendwo auf Ihrer Site einen XSS-, XSRF- oder SQL-Injection-Fehler.
Ja, ich würde vorschlagen, das Anmeldeformular unter SSL auszuführen. Es gibt keinen Grund, dies nicht zu tun. Aber ich würde mir nicht viel Sorgen machen, wenn es nicht so wäre, es gibt wahrscheinlich viel niedriger hängende Früchte.
Aktualisieren
Die obige Antwort stammt aus dem Jahr 2008. Seitdem sind viele zusätzliche Bedrohungen erkennbar geworden. Greifen Sie beispielsweise über zufällige, nicht vertrauenswürdige Netzwerke wie WLAN-Hotspots auf Websites zu (an denen möglicherweise jeder in der Nähe diesen Angriff ausführen kann). Jetzt würde ich ja sagen, Sie sollten auf jeden Fall Ihre Anmeldeseite verschlüsseln und Ihre gesamte Website weiterentwickeln. Außerdem gibt es jetzt Lösungen für das anfängliche Umleitungsproblem (HTTP Strict Transport Security). Das Open Web Application Security Project stellt verschiedene Best Practices-Anleitungen zur Verfügung.
quelle
Dieser Beitrag ist der Schlüssel. Ja, wenn die Daten des Benutzers an Sie gesendet werden, sind sie an einem sicheren Ort angekommen. Es gibt jedoch keinen Grund zu der Annahme, dass irgendwo Ihre Website sein wird. Der Angreifer kann an dieser Stelle nicht nur die Daten abhören, die sich in jede Richtung bewegen. Er ist das andere Ende der Sitzung des Benutzers. Ihre Website wird nur denken, dass der Benutzer sich nie die Mühe gemacht hat, das Formular einzureichen.
quelle
Für mich (als Endbenutzer) besteht der Wert einer HTTPS-Sitzung nicht nur darin, dass die Daten verschlüsselt sind, sondern dass ich überprüft habe, ob die Seite, auf der ich meine Supergeheimnisse eingebe, von der gewünschten Stelle stammt zu.
Wenn Sie das Formular in einer Nicht-HTTPS-Sitzung haben, wird diese Sicherheit zunichte gemacht.
(Ich weiß - dies ist nur eine andere Art zu sagen, dass das Formular einem MITM-Angriff ausgesetzt ist).
quelle
Nein, es ist nicht sicher, von HTTP zu HTTPS zu wechseln. Die Ursprungs- und Ergebnispunkte der Anforderung müssen HTTPS sein, damit der sichere Kanal eingerichtet und verwendet werden kann.
quelle
Jeder, der vorschlägt, nur einen Link zur Anmeldeseite bereitzustellen, scheint zu vergessen, dass der Link mithilfe eines MITM-Angriffs leicht geändert werden kann.
quelle
Eines der größten Dinge, die in all dem übersehen wurden, ist, dass es einen allgemeinen Trend gibt, ein Login auf einer Homepage zu platzieren (großer Trend bei User Experience-Trends).
Das große Problem dabei ist, dass Google nicht gerne aus gutem Grund nach sicheren Seiten sucht. Alle Entwickler, die sich fragen, warum sie nicht alles sicher machen, sollten alles sichern, wenn Sie möchten, dass Ihre Seite für Google unsichtbar ist. Andernfalls ist die zweitbeste Option, um von http auf https zu posten, das geringere von zwei Übeln an dieser Stelle?
quelle
Ich denke, die Hauptüberlegung dieser Frage hat mit der URL zu tun, die Benutzer kennen, und dem Protokollschema (http :), das Browser standardmäßig ersetzen.
In diesem Fall besteht das normale Verhalten einer Site, die einen verschlüsselten Kanal sicherstellen möchte, darin, dass die http: // Homepage auf die https: // Homepage umgeleitet wird . Es gibt immer noch eine Spoofing / MitM-Möglichkeit, aber wenn es sich um eine DNS-Vergiftung handelt, ist das Risiko nicht höher als wenn man mit der https: URL beginnt. Wenn ein anderer Domainname zurückkommt, müssen Sie sich dann Sorgen machen.
Dies ist wahrscheinlich sicher genug. Wenn Sie einem gezielten MitM unterliegen, können Sie sich auch Gedanken über Tastaturprotokollierer, Ihre lokale HOSTS-Datei und viele andere Möglichkeiten machen, um Informationen über Ihre sicheren Transaktionen zu erhalten, an denen Ihr System bereits beteiligt ist.
quelle