Mann in der Mitte mit HTTPs Downgrade auf HTTP
Im Allgemeinen versuchen Browser, wenn möglich, eine HTTPs-Verbindung herzustellen. Wie würden Sie einen Browser zwingen, auf HTTP zurückzugreifen, wenn jemand asdf.xyz in die Suchleiste seines Browsers eingibt, ohne ein Protokoll anzugeben?
Deshalb: sslstrip ist wahrscheinlich nicht hilfreich, da es keine Links zu "fake" gibt. Darüber hinaus wird davon ausgegangen, dass die Site kein HSTS verwendet.
Angenommen, man kann MITM ausführen - wie würde das Routing mit iptables durchgeführt / welche Befehle würden Sie benötigen, um den Browser glauben zu lassen, dass HTTPs nicht verfügbar sind, und um auf HTTP zurückzugreifen?
Antworten
Ich denke, Sie haben möglicherweise ein leichtes Missverständnis in der Prämisse Ihrer Frage. Wenn die Site kein HSTS verwendet und der Benutzer example.comin die Adressleiste seines Browsers eingibt , verwendet der Browser standardmäßig http://example.comnicht https://example.com.
Weitere Informationen zu diesem Verhalten finden Sie in den folgenden Fragen unter security.stackexchange.com und an anderer Stelle auf stackexchange.com:
Warum verwenden Browser standardmäßig http: und nicht https: für eingegebene URLs?
Warum ist HTTPS nicht das Standardprotokoll?
https://superuser.com/questions/799464/how-does-a-web-browser-know-if-destination-is-http-or-https
Genau deshalb haben wir jetzt HSTS . HTTPS Everywhere ist ein weiterer Versuch, dieses Problem zu lösen.