Update vom 19.1.2022
Offensichtlich arbeitet man bei den Safari-Entwicklern bereits an einer Lösung. Wie die Seite Macrumors berichtet , arbeitet das Projekt Webkit laut einem Github-Eintrag bereits an einem Update für Safari, das den beschriebenen Fehler behebt. Die Aktualisierung von Safari wird vermutlich mit einem der nächsten Updates für iPad OS 15, iOS 15 und macOS Monterey erfolgen. Die vom Webkit-Projekt vorab bereitgestellt Beta-Version von Safari-Version Technology Preview wird vermutlich schon deutlich früher aktualisiert werden. Hinweis: Die Vorversionen von Safari unter iOS 14 und Big Sur waren von dem Fehler nicht betroffen.
Ursprünglicher Artikel
Safari 15 hat eine ärgerliche Schwachstelle, die der Firma FingerprintJS aufgefallen ist . Webseiten werden immer komplexer, einige können mithilfe einer Technologie namens Indexed API Daten im Browser hinterlegen. Dazu legt der Browser Safari eine Datenbank an. Durch einen Fehler in diesem System ist es aber einer Webseite möglich, nicht nur die eigene Datenbank zu nutzen, sondern auch die Namen anderer Datenbanken zu lesen. Ruft man eine präparierte Webseite auf (die Entdecker haben eine Demo-Webseite bereitgestellt), kann diese so herausfinden, welche anderen Webseiten gerade geöffnet sind – etwa Macwelt.de, Commerzbank oder Ebay. Schlimmer noch, bei einigen Diensten besteht der Name dieser Datenbank nicht nur aus dem Namen der Webseite, sondern auch einem einzigartigen Nutzer-Code.
Wie FingerprintJS berichtet, wurde Apple bereits am 28. November von dem Fehler informiert. Da die Schwachstelle noch immer nicht korrigiert wurde, haben die Entdecker sie nun veröffentlicht. Betroffen sind alle aktuellen Safari-Versionen auf Mac, iPad und iPhone. Auch andere iOS-Browser wie Brave und Google Chrome sind betroffen, da dies auf WebKit basieren.
Die Schuld liegt bei Apple
Das API IndexedDB ist ein W3C-Standard und wird auch von Chrome, Edge, Firefox und Interne Explorer verwendet. Die Schuld liegt wohl bei Apple, da hier ein Sicherheitsprinzip namens Same Origin zum Tragen kommen sollte – jede Webseite kann nur auf die eigenen Daten zugreifen. Apple macht aber den Fehler, dass eine Webseite die Namen anderer Datenbanken sehen kann. Da diese aber oft mit dem Namen der Domains benannt werden, erfährt die Webseite so die Namen aller in anderen Tabs und Fenster geöffneten Seiten. Bei Youtube, Google Calender und Google Keep erfährt ein Datenspion sogar die Google-User-ID des Nutzers, da diese im Namen genannt wird. Über diese ID könnte man etwa das Profilbild des Nutzers abrufen und etwa per Bildersuche ihn identifizieren.
Wie die Entdecker berichten, ist auch der Privatmodus betroffen. Hier können allerdings nur die Namen anderer offener Seiten im gleichen Tab ausgelesen werden.
Was man dagegen tun kann
Aktuell gibt es wenig Möglichkeiten, bis Apple den Fehler behoben hat. Man kann Javascript deaktivieren, dann sind allerdings zahlreiche Webseiten kaum noch nutzbar. Auf dem Mac empfehlen die Entdecker der Sicherheitslücke, einen alternativen Browser zu verwenden. Unter iOS und iPad gibt es diese Möglichkeit nicht, da so gut wie alle Browser auf Webkit basieren. (Nachtrag: Was wenig bekannt ist: Auch alternative Browser wie Firefox und Chrome basieren unter iOS auf der gleichen Technologie wie Safari. Appel schreibt dies ausdrücklich vor.)
Unsere Meinung
Für Apple, das mit dem Schutz der Privatsphäre wirbt, ist der Fehler ziemlich peinlich und sollte bald behoben werden. Abhilfe ist unter iOS bisher nicht möglich und den Kunden bleibt aktuell keine andere Wahl, als weiter Safari zu nutzen. Die Gefahr ist außerdem beschränkt, so sind Abrufe persönlicher Daten nicht möglich, auch keine Angriffe auf das System. Es könnte aber nach unserer Einschätzung empfehlenswert sein, unter iOS Dienste wie Youtube und Google Mail eher in Form von Apps zu nutzen.