
Was passiert, wenn Sie auf einen Link klicken? Er färbt sich violett!
Seit den frühen Tagen des Internets nutzen Websites den CSS-Selektor :visited
, um Links, die ein Nutzer bereits angeklickt hat, optisch hervorzuheben. Dadurch lässt sich die Benutzerfreundlichkeit verbessern – User sehen auf einen Blick, welche Seiten sie schon besucht haben, was die Orientierung im Web erleichtert.
Doch diese nützliche Funktion hat auch eine Kehrseite: Mit der Möglichkeit, besuchte Links individuell zu gestalten, stieg auch die Zahl von Angriffen, bei denen Webseiten unbemerkt auslesen konnten, welche Links ein Nutzer zuvor angeklickt hatte. Diese Art von sogenannten Verlaufserkennungs-Angriffen ist seit über 20 Jahren bekannt. Zwar haben Browserhersteller diverse Schutzmechanismen eingeführt, doch vollständig verhindern konnten sie das Problem bisher nicht – bestenfalls wurde es erschwert.
Mit Version 136 bringt Google Chrome nun eine echte Lösung: Als erster großer Browser macht Chrome derartige Angriffe praktisch unmöglich – durch die sogenannte :visited-Link-Partitionierung.
Was bedeutet Link-Partitionierung?
Damit ein Browser anzeigen kann, welche Links bereits besucht wurden, muss er diese Informationen speichern – das nennt man den :visited
-Verlauf. Mithilfe des CSS-Selektors :visited
lassen sich besuchte Links optisch anders darstellen als noch nicht besuchte. Mit der neuen Partitionierung wird dieser Verlauf nun isoliert – je nach Website –, sodass Dritte nicht mehr erkennen können, welche Seiten ein Nutzer zuvor aufgerufen hat.
Historisch gesehen :visited
war der Verlauf nicht unterteilt. Das bedeutete, dass es keine Einschränkungen gab, wo :visited
-Verlauf mit dem :visited
-Selektor angezeigt werden konnte. Wenn Sie auf einen Link klickten, wurde er auf jeder Website, die diesen Link anzeigte, als :visited angezeigt. Dies war der zentrale Designfehler, der es Angreifern ermöglichte, Informationen über den Browserverlauf des Benutzers offenzulegen.
Nehmen wir folgendes Beispiel: Sie surfen auf Website A und klicken auf einen Link, um zu Website B zu gelangen. In diesem Szenario würde Website B zu Ihrem :visited
-Verlauf hinzugefügt werden. Später könnten Sie die Website Evil besuchen, die ebenfalls einen Link zu Website B erstellt. Ohne Partitionierung würde die Website Evil diesen Link zu Website B als „besucht“
anzeigen– obwohl Sie den Link auf der Website Evil nicht angeklickt haben. Dann könnte die Website Evil eine Sicherheitslücke ausnutzen, um zu erfahren, ob der Link als „besucht“
gestaltet war, und so erfahren, dass Sie Website B in der Vergangenheit besucht haben – wodurch Informationen über Ihren Browserverlauf durchsickern.
Vor der Partitionierung, wenn Sie auf einen Link geklickt haben:
Es würde auf jeder Seite, die diesen Link anzeigt, als „besucht“ angezeigt werden!
Durch die Partitionierung wird Ihr Browserverlauf geschützt, indem ein Link nur dann als besucht angezeigt wird, wenn Sie zuvor von dieser Website aus auf diesen Link geklickt haben. Wenn Sie zuvor noch nicht mit dieser Website interagiert haben, werden die Links nicht als :visited
formatiert.
Betrachten Sie das vorherige Beispiel, aber mit aktivierter Partitionierung. Sie surfen auf Website A und klicken auf einen Link, um zu Website B zu gelangen. Die Kombination aus „Website A + Website B“ wird in Ihrem :visited-Verlauf gespeichert. Wenn Sie also die Website „Böse“ besuchen, wird der Link zu Website B nicht als :visited
angezeigt, da er nicht mit beiden Teilen unseres Eintrags „Website A + Website B“ übereinstimmt (dem Kontext, in dem Sie ursprünglich auf den Link geklickt haben). Da auf der Website „Böse“ kein Browserverlauf angezeigt wird, können keine Exploits ausgenutzt werden. Ihr Browserverlauf ist also sicher!
Wenn Sie nach der Partitionierung auf einen Link klicken:
Es wird nur als :visited
angezeigt, wenn Sie zuvor darauf geklickt haben!
Kurz gesagt bedeutet Partitionierung, dass Ihre Links mit zusätzlichen Informationen darüber gespeichert werden, wo sie angeklickt wurden. In Chrome sind dies: Link-URL, übergeordnete Website und Frame-Ursprung. Wenn die Partitionierung aktiviert ist, ist Ihr :visited
-Verlauf keine globale Liste mehr, die von jeder Website abgefragt werden kann. Stattdessen wird Ihr :visited
-Verlauf nach dem Kontext „partitioniert“ oder getrennt, in dem Sie den Link ursprünglich besucht haben.
Was ist mit Links zu anderen Seiten auf derselben Website?
Wenn Sie im Internet surfen, kann es sein, dass Sie auf viele Links klicken, die alle auf verschiedene Unterseiten derselben Website verweisen. Wenn Sie beispielsweise verschiedene Metallarten recherchieren, besuchen Sie möglicherweise die Site.Wiki
-Seiten für „Chrom“ und „Messing“.
Bei einer starren Umsetzung der Partitionierung würden Benutzern auf der Site.Wiki
-Seite für Gold die Links zu den Seiten für Chrom und Messing nicht als :visited
angezeigt werden. Dies liegt daran, dass der Benutzer auf jede dieser Seiten von einer Website der obersten Ebene aus geklickt hat, die nicht mit der Site.Wiki
-Seite für Gold übereinstimmt.
Um die Benutzererfahrung in diesem Szenario zu verbessern und gleichzeitig den Datenschutz und die Sicherheit der Partitionierung zu gewährleisten, haben wir eine Ausnahmeregelung für Self-Links eingeführt. Kurz gesagt kann eine Website ihre eigenen Unterseiten als :visited
anzeigen, auch wenn diese Links in diesem Kontext zuvor nicht angeklickt wurden. Da Websites über andere Methoden verfügen, um zu verfolgen, ob ein Benutzer ihre Unterseiten besucht hat, werden diesen Websites mit der Einführung von Self-Links keine neuen Informationen zur Verfügung gestellt. Die Partitionierung schützt weiterhin vor der Verfolgung über mehrere Websites hinweg und setzt die Same-Origin-Richtlinie durch. Es ist jedoch wichtig zu beachten, dass dies nur für Links zu Unterseiten einer Website gilt. Links zu Websites Dritter oder in iFrames Dritter fallen nicht unter diese Ausnahme.
Nach der Ausnahmeregelung für „Self-Links“:
Status der Implementierung
Diese Verbesserungen in Bezug auf:visited
Security und Datenschutz sind ab Chrome-Version 136 verfügbar. Chrome ist der erste Browser, der diese Schutzmaßnahmen für Benutzer implementiert.
Quelle: Chrome for Developers Blog
Bild/Quelle: https://depositphotos.com/de/home.html
Fachartikel

Zehn Dinge, die Sie gestern hätten tun müssen, um die NIS2-Vorschriften einzuhalten

Pentera API-Sicherheitsautomatisierung: Erweiterte Anwendungsfälle für Cybersicherheit

Rückblick auf CH4TTER: Erkenntnisse ein Jahr nach der Veröffentlichung des SAP Threat Landscape Reports

Sicherung von SAP BTP – Bedrohungsüberwachung: Erkennung unbefugter Änderungen und Anzeichen für Kompromittierung

Was ist Active Directory-Sicherheit?
Studien

DefTech-Startups: Deutschland kann sich derzeit kaum verteidigen

Gartner-Umfrage: 85 % der CEOs geben an, dass Cybersicherheit für das Unternehmenswachstum entscheidend ist

Studie: Mehrheit der beliebten Chrome-Erweiterungen mit riskanten Berechtigungen

Kubernetes etabliert sich in der Wirtschaft – Neue Studie liefert überraschende Details

Studie zu Cyberangriffen auf Versorgungsunternehmen
Whitepaper

FBI: USA verlieren 2024 Rekordbetrag von 16,6 Milliarden US-Dollar durch Cyberkriminalität

EMEA-Region im Fokus: Systemangriffe laut Verizon-Report 2025 verdoppelt

IBM X-Force Threat Index 2025: Groß angelegter Diebstahl von Zugangsdaten eskaliert, Angreifer wenden sich heimtückischeren Taktiken zu

Kuppinger-Cole-Analyse zeigt: CIAM als Schlüsselelement der digitalen Transformation

Smart Security: IT- und Sicherheitsteams kommen langfristig nicht mehr ohne KI aus
Hamsterrad-Rebell

Cybersicherheit im Mittelstand: Kostenfreie Hilfe für Unternehmen

Anmeldeinformationen und credential-basierte Angriffe

Vermeiden Sie, dass unbekannte Apps unnötige Gefahren für Ihre Organisation verursachen

Data Security Posture Management – Warum ist DSPM wichtig?
