Mehr Fehler mit QR-Codes, auch bei OnePlus – Google bietet Pixel-Update

Seite 2: Google ließ Bugs bewusst bestehen

Inhaltsverzeichnis

Auf den heise-security-Bericht über die sicherheitsrelevanten Link-Fehler beim Auslesen von QR-Bugs hat Google also sehr schnell reagiert. Doch stellt sich heraus, dass Google von den Problemen spätestens seit Frühjahr 2021 wusste. Damals meldete der kanadische Sicherheitsberater Louis Dion-Marcil, im Brotberuf bei Mandiant tätig, das Problem an Google. Er hatte es mit Pixel 4 und 5 unter Android 11 entdeckt.

Doch am 11. Juni 2021 änderte der Datenkonzern den Status der Meldung auf "Won't Fix (Intended Behavior)" (etwa: Das korrigieren wir nicht, weil es absichtlich so gemacht ist). Diese Einstufung ist absurd und wohl einer beschränkten Auswahl an Statuseinstellungen geschuldet. "Wir haben beschlossen, dass das von Ihnen gemeldete Problem nicht schwerwiegend genug ist, um es als Sicherheitsproblem zu verfolgen", schrieb das Google Bug Hunter Team damals an Dion-Marcil, ohne das Google Security Team auf den Bug hinzuweisen.

Die erstaunliche Begründung: Es stelle keinen Sicherheitsgewinn dar, würden Google-Handys ihre Nutzer nicht mehr auf falsche Webseiten leiten. Eine unter der falschen Adresse lauernde Phishing- oder Betrugsseite sei Social Engineering, gegen das Google nach eigenen Richtlinien wenig unternimmt. Geheimnis des Sachbearbeiters bleibt, warum er den doch so harmlosen Bug in der Datenbank nicht öffentlich einsehbar hält.

Googles Algorithmen löschen unter Umständen nicht bloß ein paar Zeichen am Ende einer Top-Level-Domain (TLD) und sehr kurze Linktexte rechts davon. Abhängig von der TLD kommt es vor, dass Google die gesamte Top Level Domain des http(s)-Links und weitere Zeichen des Second-Level-Teils löscht, wenn der Second Level drei bis fünf Zeichen aufweist und der Third Level relativ lang ist (neun Zeichen bei https-Links, zehn Zeichen bei http-Links).

So rufen die betroffenen Handys statt https://dasisttoll.mega.tt einfach https://dasisttoll.me auf; aus https://dogbetter.cats.co wird https://dogbetter.ca. Die Liste betroffener TLD ist sehr lang. Alleine unter den mit a beginnenden Ländercodes (ccTLD) konnten wir den Bug bei .ac, .ae, .af, .ag, .al, .ao, .aq, .as, .aw und .az nachstellen. Die Liste der betroffenen Second Level Domains ist extrem lang – entscheidend ist, dass die ersten zwei bis drei Stellen einer bekannten TLD entsprechen. Beispielsweise würde aus https://yellowribbon.mila.sx ein Hyperlink zur US-Militär-Seite https://yellowribbon.mil.

Der Originallink muss nicht unbedingt auf eine zweistellige ccTLD enden – beispielsweise mit .bio, .icu, .tel, .wtf und .xxx tritt Googles Software ebenfalls fehl. Folgt rechts der TLD noch kurzer Linktext, tritt der Bug manchmal nicht auf, manchmal schon. Wer seine Camera-App noch nicht upgedatet und Lust hat, selbst mit TLD zu experimentieren, mag sich von der öffentlichen Suffix-Liste inspirieren lassen.

Sicherheitsforscher Adrian Dabrowski von der University of California Irvine hatte entdeckt, dass Googles Camera-App bei http(s)-Links in QR Codes einen Punkt vor jede Ziffer stellt, die nach der Zeichenfolge www steht. So wird https://www1.nyc.gov zu https://www.1.nyc.gov. Bei weiteren Versuchsreihen hat heise security nun festgestellt, dass dies nicht nur Ziffern betrifft, sondern bei allen möglichen Zeichenfolgen nach "www".

Hier macht Googles Algorithmus in der Camaer-App (vor dem Update) aus https://www-foo.de den technisch unmöglichen Link "-foo.de". Domainnamen dürfen gar nicht mit "-" beginnen.

(Bild: Daniel AJ Sokolov)

Weil das keineswegs nur Subdomains (wie das "www1" bei www1.nyc.gov) betrifft, stellt diese erweiterte Fehlergruppe ein kleines Sicherheitsrisiko dar. Denn es gibt auch registrierte Domainnamen, die mit www beginnen. Beispielsweise hat heise medien neben heise.de auch wwwheise.de registriert, was von Googles Camera-App zu www.heise.de umgewandelt wird.

In dem Fall tut das nicht weh. In anderen Fällen muss der Inhaber von bar.foo aber nicht derselbe sein, wie jener von wwwbar.foo. Wieder könnten Nutzer fehlgeleitet werden. Das Sicherheitsrisiko ist bescheiden, doch wirklich unnötig: Da QR-Codes starke Fehlerkorrektur eingebaut haben, ist ein Algorithmus, der das Leseergebnis zu korrigieren sucht, keine schlaue Idee.

Immerhin: Während "www" als Subdomain extrem verbreitet ist, sind Domainnamen, die direkt mit der Zeichenfolge www beginnen, selten. Nach Auskunft der österreichischen Registry nic.at sind bei ihr 273 Domains registriert, die mit www beginnen – das sind knapp 0,2 Promille der .at-Domains. Die kanadische CIRA hat heise online verraten, 527 solche Registrierungen zu haben – ebenfalls rund 0,2 Promille.

Bei .xyz, der vielleicht größten TLD jüngerer Generation, konnten wir selbst das gesamte Zone-File analysieren. Wie sich zeigt, beginnen etwa 3900 Domains mit der Zeichenfolge www. Das liegt in der Größenordnung von einem Promille aller .xyz-Domains.

Bei all der Verschlimmbesserung haben Googles Algorithmen nicht realisiert, dass Domainnamen nicht mit "-" beginnen dürfen. Die App findet nichts dabei, den real möglichen Link https://www-foo.de zum unmöglichen https://-foo.de zu verstümmeln. Immerhin ist das nicht einmal ein kleines Sicherheitsrisiko: Der Aufruf der Seite schlägt dann nämlich fehl.

(ds)