Url-Hijacking

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:

  1. Dauerhafte Weiterleitung auf die korrekte Adresse der Hauptseite (wie im genannten Beispiel)
  2. Dauerhafte Weiterleitung auf die korrekte Domain bei Tippfehlern (Beispiel: googel.de → google.de) oder nach einem Domainwechsel/Umzug (siehe auch Domainweiterleitung)
  3. Dauerhafte Weiterleitung wenn Inhalte einen neuen Dateinamen bekommen haben (Beispiel: /startseite.html heißt ab jetzt /index.html)
  4. 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.

  1. Die Suchmaschine indiziert Website A
  2. Sie stößt auf einen Link zur Seite A-1
  3. Sie ruft A-1 auf und erhält die Antwort, dass es sich um eine temporäre Weiterleitung auf Seite B-1 handelt
  4. Sie wird die Adresse von A-1 speichern, da dies die vermeintlich korrekte Adresse ist
  5. 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

  1. http://php.net/header
  2. Wie behandelt der Yahoo! Web Crawler Redirects?
  3. a b Thomas Bindl Blog: Hijacking Hilfe

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем написать реферат

Schlagen Sie auch in anderen Wörterbüchern nach:

  • 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… …   Deutsch Wikipedia

  • Hijacking — Dt. Entführung . Verschiedene Formen der Entführung sind im Rahmen der weniger seriösen Suchmaschinenoptimierung (siehe Black Hat SEO) zu beobachten Häufige Formen sind die Entführung der URL, von Domains, von Content und von PageRank. Das ULR… …   SEO Wörterbuch

  • Hijacking — (engl. für Entführung, Diebstahl, gewaltsame Übernahme) bezeichnet im Sprachgebrauch des Internets im Allgemeinen den Versuch einer Übernahme einer Internetdomäne bzw. der Inhalte einer Domäne oder eines Benutzerkontos (z. B. Mail, Ebay, Amazon,… …   Deutsch Wikipedia

  • URL cache poisoning — L URL cache poisoning ou « empoisonnement de cache URL » est une technique d attaque dérivée des failles cross site scripting pouvant être utilisée comme payload à l intérieur d un attribut d une balise HTML dans le but d usurper l url… …   Wikipédia en Français

  • URL redirection — For URL redirection on Wikipedia, see Wikipedia:Redirect. URL redirection, also called URL forwarding and the very similar technique domain redirection also called domain forwarding, are techniques on the World Wide Web for making a web page… …   Wikipedia

  • Aircraft hijacking — Hijacking (also known as skyjacking and aircraft piracy) is the take over of an aircraft, by a person or group, usually armed. In most cases the pilot is forced to fly according to the orders of the hijackers. However, in the September 11, 2001… …   Wikipedia

  • DNS hijacking — or DNS redirection is the practice of redirecting the resolution of Domain Name System (DNS) names to other DNS servers. This is done for malicious purposes such as phishing; for self serving purposes by Internet service providers (ISPs) to… …   Wikipedia

  • Page hijacking — is a form of search engine index spamming. It is achieved by creating a rogue copy of a popular website which shows contents similar to the original to a web crawler, but redirects web surfers to unrelated or malicious websites. Spammers can use… …   Wikipedia

  • Session hijacking — The term session hijacking refers to the exploitation of a valid computer session sometimes also called a session key to gain unauthorized access to information or services in a computer system. In particular, it is used to refer to the theft of… …   Wikipedia

  • HTTP-Fehlercode — Jede HTTP Anfrage wird vom Server mit einem HTTP Statuscode beantwortet. Er gibt Informationen darüber, ob die Anfrage erfolgreich bearbeitet wurde oder teilt dem Client im Fehlerfall mit, wo (z. B. Umleitung) bzw. wie (z. B. mit… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”