This page has been robot translated, sorry for typos if any. Original content here.

Jede Site kann Informationen darüber erhalten, welche populären Dienste Sie autorisiert haben

Der Entwickler Robin Linus auf seiner Seite auf GitHub-Seiten (ein Besuch auf dem folgenden Link ist nicht sicher und es wird nicht empfohlen, ihn vom Arbeitsplatz aus auszuführen, da die Seite zusätzlich zu dem sichtbaren Teil der Dienste überprüft, ob Sie auf erwachsenen Websites angemeldet sind und dies als Übergangsversuch in den Firewallprotokollen verbleibt ) demonstriert, wie Websites einen "Medien-Fingerabdruck" von Ihnen übernehmen können, dh verfolgen, welche Benutzer beliebiger Dienste auch ohne Autorisierung auf der besuchten Seite angemeldet sind.

Für den Autor der Publikation sieht "media fingerprint" so aus und ist absolut korrekt:

Любой сайт может получить информацию о том, в каких популярных сервисах вы авторизированы

Und es ist sehr unangenehm.

Любой сайт может получить информацию о том, в каких популярных сервисах вы авторизированы

Was ist die Essenz von

Zunächst erläutert der Autor der Notiz, wie die Umleitungsprozedur zum Autorisierungsfenster weitergeht.

Wenn wir im Inkognito-Modus auf den Link https://www.facebook.com/bookmarks/pages klicken, werden wir automatisch zum Anmeldebildschirm umgeleitet:

  https://www.facebook.com/login.php?next=https%3A%2F%2Fwww.facebook.com%2Fbookmarks%2Fpages 

Beachten Sie den zweiten Teil des Links:

  https% 3A% 2F% 2Fwww.facebook.com% 2Fbookmarks% 2Fpages 

Dies ist die URL, an die wir zurück geschickt werden, nachdem wir das Autorisierungsverfahren auf Facebook durchlaufen haben. Wenn wir diese URL jedoch verwenden, um auf die Autorisierungsseite umzuleiten, wenn wir bereits auf der Site autorisiert sind, werden wir sofort zu Lesezeichen / Seiten gelangen .

Noch einmal:

  • Wenn wir nicht angemeldet sind und zu https% 3A% 2F% 2Fwww.facebook.com% 2Fbookmarks% 2Fpages gehen, gehen wir zum Anmeldefenster.
  • Wenn wir eingeloggt sind, werden wir gleich auf https://www.facebook.com/bookmarks/pages zu dem gleichen Link gelangen.

Es scheint, dass alles logisch ist.

Die Politik großer Ressourcen wie Facebook erlaubt es nicht, die Daten der Anfrage selbst zu erhalten, da Die Verbindung erfolgt über HTTPS. Wir können jedoch jedes Bild von der Domain abrufen, wenn Sie in login.php einen Link angeben. Next =. Natürlich können Fotos von FB dies nicht herausholen, denn fast alle Bilder, die das soziale Netzwerk unter der Adresse fbcdn.net speichert, können Sie jedoch auf das Facebook-Logo "klopfen" - favicon.ico:

  https://www.facebook.com/login.php?next=https%3A%2F%2Fwww.facebook.com%2Ffavicon.ico 

Und auf der Website selbst, verkleiden Sie es durch den IMG-Tag als:

  <img src = "https://www.facebook.com/login.php?next=https%3A%2F%2Fwww.facebook.com%2Ffavicon.ico"> 

Es sieht so aus: Любой сайт может получить информацию о том, в каких популярных сервисах вы авторизированы

Wenn Sie dieses Symbol FB gesehen haben ( Любой сайт может получить информацию о том, в каких популярных сервисах вы авторизированы ), herzlichen Glückwunsch, wir haben gerade dafür gesorgt, dass Sie bei Facebook eingeloggt sind (Scheck). Wenn Sie nichts gesehen haben oder das Bild nicht geladen wurde, geben Sie das entsprechende Symbol ( Любой сайт может получить информацию о том, в каких популярных сервисах вы авторизированы ), bzw. auf Facebook sind Sie nicht eingeloggt .

Die endgültige Ausnutzung dieser Sicherheitsanfälligkeit ist wie folgt:

  <img onload = "alert ('Eingeloggt in fb')" onerror = "alert ('Nicht eingeloggt bei fb')" src = "https://www.facebook.com/login.php?next=https% 3A% 2F% 2Fwww.facebook.com% 2Ffavicon.ico "> 

Mit diesen einfachen Manipulationen mit Icons können Sie Informationen darüber sammeln, welche Dienste die Website ohne ihr Wissen nutzt. Dieser Mechanismus funktioniert für fast alle wichtigen Webdienste, da alle ihre Symbole in der Hauptdomain speichern.

Diese Sicherheitsanfälligkeit kann als eine der Stufen anderer Angriffstypen wie ClickJacking oder ProfileJacking verwendet werden .

Service-Antwort

Das Problem des Zugriffs auf Informationen darüber, welche anderen Dienste eine Person verwendet, ist lange bekannt, aber die meisten Unternehmen werden ignoriert. Hier ein paar Antworten aus Robin's Bug Reports von einigen der größten Services und sozialen Plattformen.

Facebook:

Vielen Dank für Ihre Nachricht. Dieses Problem wurde mit der Gruppe, die für die Sicherheit in Facebook verantwortlich ist, besprochen und dieser Fehler kann nicht am Bug-Kopfgeld-Programm teilnehmen. Es gilt nicht für einen bestimmten Facebook-Nutzer. Die Möglichkeit, herauszufinden, wo der an der Site angemeldete Benutzer berechtigt ist, stellt keine Sicherheitsbedrohung dar. Auf jeden Fall haben wir Ihren Bericht geschätzt und freuen uns, von Ihnen andere Fehlermeldungen zu hören.

Twitter:

Vielen Dank für Ihren Bericht. Natürlich sieht das interessant aus, aber ich sehe nicht, wie dieses Problem die Sicherheit von Twitter und seinen Benutzern gefährden kann. Ich befürchte, dass dieses Problem als geschlossen betrachtet werden kann und keinen Anspruch auf Teilnahme am Programm zum Bount-Bounty haben kann. Vielen Dank für Ihre Sorge um die Sicherheit von Twitter.

Yahoo:

Danke, dass Sie uns kontaktiert haben. Dies ist ein bekanntes Problem, das Emery Grossman bereits erwähnt hat . Wir werden darüber nachdenken, wie wir es in Zukunft lösen können.

Platz:

Danke, dass Sie uns kontaktiert haben. Wir kamen zu dem Schluss, dass dieses Problem ein minimales Risiko darstellt und daher keine Änderungen an dem Code vorgenommen werden, um es zu lösen.

Dropbox:

Vielen Dank! Wir werden diese Bedrohung berücksichtigen.

Tatsächlich ist die Position der meisten Dienste klar - wenn die Sicherheitslücke nicht zum Diebstahl persönlicher Daten / Kontodaten führt / keinen Zugriff auf Datenkategorien gibt, ist dies keine Sicherheitslücke.

FIX

In Opera wird die Einstellung zum Blockieren von Cookies von Websites von Drittanbietern beendet : https://imgd.ru/image/uchm , und wenn es ausgeschaltet ist, wird "alles klar".

Via habrahabr.ru/post/312636/