- Url-Hijacking
-
URL-Hijacking ist die Entführung einer Domain aus dem Index verschiedener Suchmaschinen. Dieses Problem basiert auf einem Missverständnis zwischen einer Website und einer Suchmaschine hinsichtlich (insbesondere dynamisch generierter) Weiterleitungen. Die Folgen für die gehijackte Seite sind fatal: Sie taucht in den Suchergebnissen nicht mehr auf und bekommt keine Besucher mehr über entsprechende Suchmaschinen.
Inhaltsverzeichnis
Technischer Hintergrund
Problematik der permanenten und temporären Weiterleitungen
Im Internet gibt es verschiedene Möglichkeiten, Anfragen an eine bestimmte Adresse an eine andere Adresse weiterzuleiten. Ein Beispiel: Ruft man http://de.wikipedia.org/ auf, so wird man auf http://de.wikipedia.org/wiki/Wikipedia:Hauptseite weitergeleitet. Solche Weiterleitungen verfolgen unterschiedlichste Ziele, beispielsweise seien genannt:
- Dauerhafte Weiterleitung auf die korrekte Adresse der Hauptseite (wie im genannten Beispiel)
- Dauerhafte Weiterleitung auf die korrekte Domain bei Tippfehlern (Beispiel: googel.de → google.de) oder nach einem Domainwechsel/Umzug (siehe auch Domainweiterleitung)
- Dauerhafte Weiterleitung wenn Inhalte einen neuen Dateinamen bekommen haben (Beispiel: /startseite.html heißt ab jetzt /index.html)
- Vorübergehende Weiterleitung wenn Inhalte zunächst unter einer anderen Adresse, in Zukunft aber wieder unter der aufgerufenen oder möglicherweise einer ganz anderen Adresse zu finden sind
Für die beiden Haupttypen solcher Weiterleitungen (dauerhaft, „permanent“ genannt und vorübergehend, „temporär“ genannt) wurden in HTTP 1.0 zwei HTTP-Statuscodes definiert: 301 (Moved Permanently) für permanente Weiterleitungen und 302 (Found) für temporäre Weiterleitungen. Eine dritte Möglichkeit stellt die Weiterleitung über einen so genannten Meta-Refresh dar, aus dem nicht ersichtlich ist, ob es sich um eine permanente oder temporäre Weiterleitung handelt.
Suchmaschinen halten sich meist genau an die Definitionen des HTTP-Standards. Verweist Adresse A also mittels einer permanenten Weiterleitung auf Adresse B, so geht die Suchmaschine davon aus, dass die Inhalte in Zukunft immer unter Adresse B zu finden sind. Folglich wird Adresse B in den Index der Suchmaschine aufgenommen, während Adresse A aus diesem gelöscht (bzw. nicht aufgenommen) wird. In aller Regel ist dies auch der gewünschte Effekt. Problematisch hinsichtlich URL-Hijacking ist die zweite Variante. Verweist Adresse A mittels einer temporären Weiterleitung auf Adresse B, so gehen die Suchmaschinen davon aus, dass die Inhalte momentan unter Adresse B zu finden sind, in Zukunft aber (wieder) unter Adresse A. Folglich wird Adresse A in den Index der Suchmaschine aufgenommen, Adresse B wird gelöscht oder gar nicht erst aufgenommen. Dieser Effekt ist gewünscht wenn die Inhalte tatsächlich nur vorübergehend eine andere Adresse haben (siehe Punkt 4 in der Liste oben), jedoch unerwünscht wenn Adresse B die eigentlich korrekte ist.
Technik des URL-Hijacking
Temporäre Weiterleitungen stellen in dem Moment ein Problem dar, in welchem dieser „vorübergehende Adresswechsel“ nicht den Tatsachen entspricht. Verweist Adresse A mit einer temporären Weiterleitung auf Adresse B, obwohl beide Adressen nichts miteinander zu tun haben (beispielsweise gehört Adresse A zu einem Webverzeichnis, Adresse B ist eine dort eingetragene Website), so nehmen Suchmaschinen an, dass Seite B irgendwann wieder unter Adresse A erreichbar sein wird, denn Suchmaschinen können weder erkennen um welchen Typ von Website es sich handelt (ein Verzeichnis), noch, dass hier eine falsche Art der Weiterleitung verwendet wurde.
Beispiel
Das folgende Beispiel erläutert aus Sicht der Suchmaschine, warum eine gehijackte Adresse aus dem Index entfernt wird.
- Die Suchmaschine indiziert Website A
- Sie stößt auf einen Link zur Seite A-1
- Sie ruft A-1 auf und erhält die Antwort, dass es sich um eine temporäre Weiterleitung auf Seite B-1 handelt
- Sie wird die Adresse von A-1 speichern, da dies die vermeintlich korrekte Adresse ist
- Sie wird B-1 aus ihrem Index entfernen, da die Seite dort vermeintlich nur vorübergehend erreichbar ist
Fehler oder Standard-Konformität?
Dass URL-Hijacking überhaupt möglich ist wird oft als Programmfehler in den Suchmaschinen bezeichnet. RFC 2616, Section 10.3.3 schreibt jedoch vor:
Since the redirection might be altered on occasion, the client SHOULD continue to use the Request-URI for future requests. This response is only cacheable if indicated by a Cache-Control or Expires header field.
Da die Weiterleitung gelegentlich geändert werden kann, sollte der Client [hier: die Suchmaschine] für zukünftige Anfragen weiterhin den Request-URI [also die ursprüngliche Adresse] verwenden. Diese Antwort [also die neue Adresse] kann nur zwischengespeichert werden, falls dies durch einen Cache-Control- oder Expires-Header-Feld angegeben ist.
Folglich handeln Suchmaschinen eigentlich Standard-konform, da sie davon ausgehen müssen, dass es sich bei der aufgerufenen Adresse tatsächlich um eine veraltete Adresse handelt. Trotzdem handelt es sich um eine Sicherheitslücke in der Suchmaschine, da Webmaster Einfluss auf fremde Websites nehmen könnten.
Auslöser
Es gibt verschiedene Gründe, warum Webmaster Weiterleitungen auf fremde Inhalte erstellen statt direkt zu verlinken. Das Weiterleitungs-Programm (der Dereferrer) kann verschiedene Aufgaben übernehmen, zum Beispiel die Klicks auf den entsprechenden Link zählen oder sicherheitsrelevante Informationen wie Sitzungs-ID der aktuellen Website verschleiern.
Gefährlich sind insbesondere dynamische Links, die man zumeist an einem „?“ in der URL erkennen kann (z. B. http://www.example.com/?id=12345) und die aus entsprechenden Datenbanken generiert werden. Die populäre Skriptsprache PHP verwendet, sofern der Programmierer nicht explizit einen Statuscode angibt, standardmäßig 302-Weiterleitungen.[1] Von der Suchmaschine Yahoo ist bekannt, dass sie einen Meta-Refresh als 301-Weiterleitung wertet wenn die Weiterleitungsverzögerung nur sehr kurz ist, bei längeren Verzögerungen wird 302 angenommen.[2][3]
Vielen Webmastern ist nicht bewusst, dass sie selbst solche Weiterleitungen verwenden und somit anderen Seiten elementaren Schaden zufügen können.
Ein Hijacking ist umso wahrscheinlicher, je höher der PageRank der linkenden Website im Vergleich zur „Opferseite“ ist. Ein hoher PageRank erhöht die Vertrauenswürdigkeit der linkenden Website, sodass Suchmaschinen davon ausgehen, dass die Standards richtig angewandt wurden und es sich tatsächlich um eine vorübergehende Adressänderung handelt. Weiterhin wird die Website mit dem höheren PageRank als relevanter angesehen und bleibt daher ohnehin im Index.
Lösungsansätze
- In HTTP 1.1 wurde der zusätzliche Statuscode 307 (Temporary Redirect) eingeführt. Dieser ist mit dem Statuscode 302 (Found) zwar identisch, jedoch nicht so verbreitet, zumal die für Websites wahrscheinlich gebräuchlichste Skriptsprache, PHP, standardmäßig 302-(Found)-Weiterleitungen erstellt. Auf dieser Basis können versehentliche temporäre Weiterleitungen von gewünschten temporären Weiterleitungen unterschieden werden.
- Webmaster, die selbst Weiterleitungen verwenden, sollten − sofern sie auf Fremdinhalte weiterleiten und es wirklich nötig ist, überhaupt eine Weiterleitung zu benutzen − immer mittels des Statuscodes 301 Moved Permanently weiterleiten, um versehentliches URL-Hijacking zu vermeiden. Weiterleitungen, die durch ein Content-Management-System (CMS) automatisch generiert werden, sollten mittels eines Dienstes wie Web-Sniffer entsprechend geprüft werden. Ist eine Weiterleitung nicht zwingend notwendig, so ist ein gewöhnlicher Link in der Regel die bessere Wahl.
- Betroffene Webmaster sollten den hijackenden Webmaster kontaktieren und ihn auf den Fehler hinweisen.
- Gegebenenfalls kann der betroffene Webmaster die Betreiber der Suchmaschine kontaktieren und um Wiederaufnahme bitten.[3]
Quellen
- ↑ http://php.net/header
- ↑ Wie behandelt der Yahoo! Web Crawler Redirects?
- ↑ a b Thomas Bindl Blog: Hijacking Hilfe
Weblinks
- AntiHijacker - Kostenloses Werkzeug um Weiterleitungen auf die eigenen Seite zu finden
- Affiliate und Recht
- heise.de
Wikimedia Foundation.