Eine Seite enthält gemischte Inhalte, wenn ihr erster HTML-Code über eine sichere HTTPS-Verbindung geladen wird, andere Ressourcen wie Bilder, Videos, Stylesheets und Skripts aber über eine unsichere HTTP-Verbindung geladen werden. Der Name bezieht sich auf die Mischung aus HTTP- und HTTPS-Inhalten auf einer einzelnen Seite.
Das Anfordern von Unterressourcen mit dem unsicheren HTTP-Protokoll beeinträchtigt die Sicherheit der Seite, da diese Anfragen anfällig für On-Path-Angriffe sind, bei denen ein Angreifer eine Netzwerkverbindung abhört und die Kommunikation zwischen zwei Parteien ansieht oder ändert. Mithilfe dieser Ressourcen können Angreifer Nutzer nachverfolgen und Inhalte auf einer Website ersetzen. Bei aktivem gemischten Inhalt können sie dann die vollständige Kontrolle über die Seite übernehmen, nicht nur über die unsicheren Ressourcen.
Obwohl viele Browser dem Nutzer Warnungen zu gemischten Inhalten melden, ist die Meldung oft zu spät: Die unsicheren Anfragen wurden bereits ausgeführt und die Sicherheit der Seite ist gefährdet.
Die meisten Browser blockieren mittlerweile gemischte Inhalte aus Sicherheitsgründen. Ändern Sie Anfragen für unsichere Inhalte in sichere Inhalte, damit Ihre Seite weiterhin korrekt geladen wird.
Die zwei Arten von gemischtem Content
Es gibt zwei Arten von gemischten Inhalten: aktive und passive.
Passive gemischte Inhalte wie Bilder, Video und Audio interagieren nicht mit dem Rest der Seite. Daher sind bei einem Man-in-the-Middle-Angriff die möglichen Aktionen eingeschränkt, wenn er diese Inhalte abfängt oder ändert.
Aktive gemischte Inhalte interagieren mit der Seite als Ganzes. Dazu gehören Skripts, Stylesheets, iFrames und jeder andere Code, der vom Browser heruntergeladen und ausgeführt werden kann. Bei Angriffen auf aktive gemischte Inhalte kann ein Angreifer so gut wie alles an der Seite tun.
Passive gemischte Inhalte
Passive gemischte Inhalte stellen ein geringeres Risiko als aktive gemischte Inhalte dar, aber dieses Risiko besteht weiterhin. Ein Angreifer kann beispielsweise:
- HTTP-Anfragen für Bilder auf Ihrer Website abfangen und diese Bilder austauschen oder ersetzen
- Ersetzen Sie die Bilder auf Schaltflächen so, dass Nutzer sie verwirren, und löschen Sie beispielsweise Inhalte, die Sie speichern möchten.
- Schützen Sie Ihre Website, indem Sie Bilder durch pornografische Inhalte ersetzen.
- Ersetzen Sie Ihre Produktbilder durch Anzeigen für etwas anderes.
Selbst wenn der Angreifer den Inhalt Ihrer Website nicht ändert, kann er Nutzer über Anfragen für gemischte Inhalte nachverfolgen. Außerdem können sie anhand von Bildern oder anderen Ressourcen, die der Browser lädt, erkennen, welche Seiten ein Nutzer besucht und welche Produkte er sich ansieht.
Wenn passive gemischte Inhalte vorhanden sind, geben die meisten Browser in der Adressleiste an, dass die Seite nicht sicher ist, auch wenn sie über HTTPS geladen wird. Ein Beispiel zum Verhalten finden Sie in dieser Demo.
Bis vor Kurzem wurden passive gemischte Inhalte in allen Browsern geladen, da durch das Blockieren viele Websites beschädigt worden wären. Dies beginnt jetzt, sich zu ändern. Daher ist es wichtig, alle Instanzen von gemischten Inhalten auf Ihrer Website zu aktualisieren.
In einigen Fällen führt Chrome automatisch ein Upgrade für passive gemischte Inhalte durch. Wenn also ein Asset als HTTP hartcodiert ist, aber über HTTPS verfügbar ist, lädt der Browser die HTTPS-Version. Wenn keine sichere Version vorhanden ist, wird das Asset nicht geladen.
Wenn Chrome gemischte Inhalte erkennt oder passive gemischte Inhalte automatisch aktualisiert, werden in den Entwicklertools auf dem Tab Probleme detaillierte Meldungen protokolliert, die dir Hinweise zur Behebung des jeweiligen Problems geben.
Aktive gemischte Inhalte
Aktive gemischte Inhalte stellen eine größere Bedrohung dar als passive gemischte Inhalte. Angreifer können aktive Inhalte abfangen und umschreiben, um die volle Kontrolle über Ihre Seite oder sogar Ihre gesamte Website zu übernehmen. Dadurch können sie jeden Aspekt der Seite ändern, einschließlich der Darstellung von anderen Inhalten, dem Diebstahl von Nutzerpasswörtern oder anderen Anmeldedaten, dem Diebstahl von Nutzersitzungs-Cookies oder der vollständigen Weiterleitung des Nutzers auf eine andere Website.
Da die Risiken für aktive gemischte Inhalte so hoch sind, blockieren die meisten Browser diese Art von Inhalten zum Schutz der Nutzer bereits standardmäßig. Das Verhalten variiert jedoch je nach Browseranbieter und Version.
In dieser Demo sehen Sie Beispiele für aktive gemischte Inhalte. Laden Sie das Beispiel über HTTP, um den Inhalt zu sehen, der blockiert wird, wenn Sie das Beispiel über HTTPS laden. Blockierte Inhalte werden auch in den Entwicklertools auf dem Tab Probleme aufgeführt.
Spezifikation für gemischte Inhalte
Browser folgen der Spezifikation für gemischte Inhalte, in der die Kategorien optional blockierbarer Inhalte und blockierbarer Inhalte definiert werden.
Eine Ressource gilt als optional blockierbarer Inhalt, wenn das Risiko der Verwendung als gemischte Inhalte durch das Risiko größerer Teile des Webs überwiegt wird. Dies ist ein Teilbereich der passiven gemischten Inhalte.
Alle gemischten Inhalte, die nicht optional blockierbar sind, werden als blockierbar eingestuft und sollten vom Browser blockiert werden.
In den letzten Jahren ist die Nutzung von HTTPS drastisch gestiegen und hat sich zum klaren Standard im Web entwickelt. Dadurch können Browser jetzt alle gemischten Inhalte blockieren, auch die Unterressourcentypen, die in der Spezifikation für gemischte Inhalte als optional blockierbar sind.
Ältere Browser
Einige Besucher verwenden möglicherweise ältere Browser. Verschiedene Browserversionen verschiedener Anbieter behandeln gemischte Inhalte unterschiedlich. Im schlimmsten Fall blockieren ältere Browser und Versionen keine gemischten Inhalte, was für den Nutzer unsicher ist.
Wenn Sie alle Ressourcen sicher laden und die Probleme mit gemischten Inhalten beheben, sorgen Sie dafür, dass Ihre Inhalte sichtbar sind, und schützen Nutzer vor gefährlichen Inhalten, die von älteren Browsern möglicherweise nicht blockiert werden.