Tips, Tricks
& Treats

Chromes Verlauf wird nicht zuverlässig gelöscht

Verlaufsdaten können das Löschen der Browserdaten überleben.

(19.5.2015) Man sollte erwarten, dass der Menübefehl "Browserdaten löschen" auch genau das macht: Wenn der Verlauf mit ausgewählt ist, sollte er rückstandslos verschwinden. Das klappt aber nicht immer. macconfig hat kürzlich einen Bug in Chromes Löschfunktion entdeckt, der dafür sorgt, dass manche URLs für immer erhalten bleiben. Das ist zwar keine Riesen-Sicherheitslücke, kann aber für Anwender, die ihren Rechner mit jemand anderem teilen, ein Problem sein. Spätestens wenn der Rechner gestohlen wird oder unauthorisierte Personen Zugriff erlangen, kann es unangenehm werden.

Dummerweise tauchen diese Überbleibsel nicht direkt im Verlauf der Chrome-Anwendung auf. Sie sind in einer Datenbank versteckt, die Chrome nutzt, um den Verlauf zu sichern. Diese Datenbank lässt sich leicht von der Kommandozeile manipulieren. Typischerweise sehen die Einträge so aus:

Der Verlauf vor dem Löschen.

Um Deine eigenen Verlaufseinträge - so wie sie in Chromes Verlaufsdatenbank hinterlegt sind - zu sehen, tippst Du im Terminal folgenden Befehl ein:

sqlite3 ~/Library/Application\ Support/Google/Chrome/Default/History 'select * from "urls"'

Das Ergebnis sollte ähnlich wie oben im Bild sein. Beachte die vierte Spalte (eine Spalte ist durch | getrennter Text oder Zahlen): Das ist der so genannte Visit Count, der Besuchszähler. Er gibt an, wie oft eine Seite aufgerufen wurde (wie genau das gezählt wird, ist von Browser zu Browser unterschiedlich). Dieser Zähler sollte größer Null sein, da man die Seite ja bereits besucht hat - sonst wäre sie schließlich nicht im Verlauf. Und da liegt das Problem: Wir wissen zwar noch nicht warum, aber Chrome setzt diesen Besuchszähler manchmal auf Null. Eigentlich wäre das nicht so wichtig. Wenn man aber den Befehl "Browserdaten löschen" aus dem Chrome-Menü aufruft, werden genau diese Einträge nicht gelöscht!

Löscht man den Verlauf via "Browserdaten löschen",
werden unter Umständen nicht alle Einträge gelöscht.

Solche Einträge verbleiben also im Verlauf. Man findet sie allerdings nicht direkt im Browser, denn dort zeigt Chrome richtigerweise keine Einträge, bei denen der Besuchszähler gleich Null ist. Aber in der Verlaufsdatenbank tauchen sie trotzdem auf. Um das zu überprüfen, kannst Du denselben Befehl wie oben verwenden:

Einträge, bei denen der Besuchszähler gleich Null ist, verbleiben im Verlauf.

Solche Einträge lassen sich nur über die Befehlszeile endgültig entfernen:

sqlite3 ~/Library/Application\ Support/Google/Chrome/Default/History 'delete from "urls"'

Damit sind alle Einträge verschwunden. Ganz sicher.

Achtung: Der Fehler zeigt einmal mehr, dass man den Datenschutz-Bemühungen der Browserhersteller nicht naiv vertrauen sollte - siehe auch Safaris Favicon-Bug im Privat-Modus (beseitigt in Safari 8.0.5). Den von uns entdeckten Verlaufsfehler konnten wir zwar nicht auf allen Rechnern und mit allen Accounts nachstellen, aber wir haben ihn mehrfach vorgefunden. Uns fiel dabei kein Zusammenhang mit den Chrome-Einstellungen auf. Allerdings scheint der Besuchszähler nicht der einzige Auslöser zu sein, denn will man den Fehler reproduzieren, genügt es nicht, diesen bei bestehenden Einträgen auf 0 zu setzen oder neue Einträge mit beispielsweise sqlite3 ~/Library/Application\ Support/Google/Chrome/Default/History 'INSERT INTO "urls" VALUES (33, "www.mydomain.com", "MyDomain.com", 0, 0, 0, 0, 0)' anzulegen - solche verschwinden ganz normal, wenn man die Löschfunktion nutzt. Wenn Ihr herausfindet, was für diesen Bug verantwortlich ist, lasst es uns wissen! (MacConfig)

Ad