PDA

View Full Version : Browser History CSS Leak und wie man es trotz aktiver History verhindert [FF & Opera]



shoulder
03.07.09, 15:39
Was ist das?

Vielleicht habt ihr schon davon gehört, sonst hier mal in Kurzform was das ist.

Wie ihr manchmal sehen könnt unterscheidet der Browser zwischen besuchten und unbesuchten Links, standardmässig werden verschiedene Farben verwendet.
Eben dieses Unterscheiden macht es anderen Seiten möglich eure History nach dem Hit or Miss Prinzip auszulesen, ohne dass ihr es merkt und ohne Javascript.


Wie es funktioniert?

Im Prinzip ganz einfach.
Es wird eine Linkliste mit sehr vielen Links versteckt geladen (hidden iFrame oder ausserhalb des Sichtbereiches).
Es wird eine CSS mitgeliefert die dem Browser "befiehlt" falls einer dieser Links als besucht eingestuft wird einen , pro geladenem Link individuellen, Background zu laden. (Background - Image)
Dieser liegt auf dem selben Server von dem der Angriff ausgeführt wird oder einem anderen Server auf welchen der Angreifer Zugriff hat und ist keine wirkliche Bilddatei sondern ein Script welches die Aufrufe speichert und verarbeitet.

Beispiel:
www.a.de (www.myserver.de/a.jpg)
www.b.de (www.myserver.de/b.jpg)
Neue Internetprsenz. (http://www.c.de) (www.myserver.de/c.jpg)

Wird ein Link als besucht eingestuft wird der jeweilige vermeintliche Background (oben in Klammern gezeigt) geladen und das Script schlägt zu.

Heisst das Script loggt den Aufruf von a.jpg und c.jpg, daraus kann man schliessen der attackierte User war auf www.a.de und Neue Internetprsenz. (http://www.c.de), hat aber www.b.de nie besucht.

Wie man sieht und wie gesagt bassiert das auf einem Hit or Miss Prinzip, heisst es kann nicht direkt die History ausgelesen aber auf spezielle Links überprüft werden.


Die Gefahr an der ganzen Sache?

Tracker könnten dieses System benutzen um User von SB-I, SM, ... zu "erwischen", was sicherlich bei vielen allein schon ein Banngrund ist.


Kann man das ganze verhindern?

Firefox

Ja, für den Firefox zeig ich euch wie.

Im App Folder eures Firefox gibt es einen Ordner namens chrome, in diesem eine userContent.css, falls nicht, erstellen. (Achtet auf die Endung (Dateityp), nicht userContent.css.txt sondern wirklich userContent.css)
In diese kommt die folgende Zeile.

a:visited { background-image: none !important; }
Diese Zeile deaktiviert das Laden von Backgrounds für besuchte Links global.
Da sie userdefiniert ist und den !important Parameter aufweißt überschreibt sie jegliche websitedefinierte CSS.


Funktioniert das?

Ja, ich habe es getestet.
Die unten angegebene Seite scannt eure History und gibt die Treffer in dem Fenster auf der Linke Seite aus.
Wird auch nur eine angezeigt, ist die Attacke bei euch möglich.

Stealing your history... (http://www.making-the-web.com/misc/sites-you-visit/nojs/)


Opera (http://www.sb-innovation.de/138961-post67.html)
[English]


English (http://www.sb-innovation.de/f59/css-history-leak-how-prevent-even-enabled-history-firefox-13725/#post110944)

Renk
03.07.09, 19:21
Very interesting, although somewath difficult to understand due to german language. In my opinion, this deserves to be placed in the international section too.

anon
03.07.09, 19:22
There's an english version, look at the end of the tut. :wink:

Renk
03.07.09, 19:31
There's an english version, look at the end of the tut. :wink:


Ok, I know now I need glasses.
:thumbsup:

Kongan
11.07.09, 02:33
Danke für den Hinweis. Werde das sofort umsetzen.
Nur eine Anmerkung habe ich. Müsste es statt App Folder nicht Profile Ordner heissen?

kazuya
11.07.09, 12:03
Nice, but it's more simple just to disable browsing history.:tongue:

Tools->Options->Privacy->keep my history for at least /40/days = must be unchecked

shoulder
11.07.09, 12:39
Of course, but this is for users who want to keep the history activated. :wink2:

Reichsadler
15.07.09, 10:42
Of course, but this is for users who want to keep the history activated. :wink2:

Wenn ich meine privaten Daten vor einem Tracker Besuch lösche, ist das nicht nötig oder?
Wird einem ja eh geraten das zu tun. Finde aus der ganzen Sache wird mehr gemacht, als es eigentlich ist. Private Daten löschen sollte Standard sein. mach ich aus Sicherheitsgründen eh so oder so. Genauso wie man ab und zu mal die ganzen Temp Ordner von verschiedenen Progs und Windowsanwendungen geleert werden sollten. Hat jetzt aber nix mit trackern zu tun.:wink:

shoulder
15.07.09, 16:32
Ja, wenn du jedes mal deine Privaten Daten löscht ist das kein Problem.
Aber du musst es dann wirklich immer machen und auch nicht SB-I und Tracker mit dem selben Browser parallel besuchen.