iOS: Kamera-App mit QR-Code URL Parser-Bug

Die Kamera-App von iOS kann wohl automatisch QR-Codes über die Kameras eines iPhone oder iPad erfassen. Leider gibt es ein Problem: Beim Scannen und anschließendem Auswerten der im QR-Code enthaltenen URL gibt es einen Bug.


Anzeige

QR-Code direkt in der Kamera-App scannen

Das direkte Scannen von QR-Codes mit der iOS-Kamera-App wird wohl ab iOS 11 unterstützt (so ganz genau bin ich da, mangels aktuellem iOS-Gerät nicht im Bilde). Das Scannen von QR-Codes direkt aus der iOS-Kamera-App ist eigentlich ganz nett, erspart sich der Nutzer doch die Installation separater Apps für diesen Zweck. Nach einem erfolgreichen Scan des QR-Codes mit einer URL auf ein Webseite bekommt der Nutzer sogar eine Benachrichtigung, dass die URL im Safari eingetragen wurde.

Benachrichtigung beim Scan eines QR-Codes
(Quelle: Robert Mueller rm-it.de)

Heißt also: Schnell einen QR-Code mit der Kamera-App aufnehmen und nach der Benachrichtigung die zugehörige Webseite im Browser öffnen. Allerdings sollte das dann auch funktionieren, was es aber wohl nicht tut (mangels aktuellem iOS-Gerät kann ich nichts testen).

Es wird immer die gleiche URL geöffnet

Roman Mueller hat den Fall in seinem Blog beschrieben und in nachfolgendem GIF-Bildchen veranschaulicht. Der QR-Code-Scan mit der App funktioniert ganz gut – er versucht damit die Facebook-Seite zu öffnen. Der QR-Code ist dabei auf einem Mac im Safari auf dem Bildschirm eingeblendet und wird mit einem iOS-Gerät gescannt.

Analyse QR-Code Scan iOS(Quelle: Robert Mueller rm-it.de)

Beim Parsen der URL scheint aber etwas schief zu gehen, denn es wird immer seine eigene Webseite, unabhängig von der URL im QR-Code geöffnet. Es kommt zwar eine Benachrichtigung, dass facebook.com erkannt wurde. Aber es wird dann seine Webseite im Safari geöffnet.

Ein simpler Parser-Fehler der URL

Erst vermutete er eine Umleitung (Redirection) durch Facebook. Aber das ist nicht der Fall, wie er in seiner Analyse zeigt. Beim Scannen des QR-Codes mit der Kamera-App von iOS 11.2.1, wird die im QR-Code hinterlegte URL im Format:

https: // xxx\@facebook.com : 443@infosec.rm-it.de/


Anzeige

geliefert. Die Adresse seiner eigenen Webseite ist da wohl mit integriert, da auf dem iOS-Gerät konfiguriert. Für die Benachrichtigung wird noch der korrekte Teil der URL mit facebook.com herausgezogen. Im geöffneten Safari-Tab verwendet die Browser-App aber wohl den letzten Teil der URL, der auf die konfigurierte Homepage verweist. Die QR-Code-App ist weitgehen nutzlos. Er vermutet, dass die App den Teilstring xxx\ als Nutzernamen interpretiert und den String xxx\@facebook.com : 443 als login-Daten an die in der URL angehängte Webseite schickt.

Apple reagiert nicht

Der Fehler wurde bereits am 23. Dezember 2017 an Apple gemeldet. Bis zum 24. März 2018 ist der Bug noch nicht gefixt. Könnte man achselzuckend zur Kenntnis nehmen – Apple eben. Die Geschichte hat aber einen ernsten Hintergrund, der den Apple-Leuten entgangen zu sein scheint.

Nein ich meine nicht den Effekt, den ich mal als junger Mann bei einer Kollision mit einem TÜV-Prüfer erlebt habe. Der von mir montierte Nebelscheinwerfer an meiner Rostlaube funktionierte nicht. Also ich dem Prüfer mitteilte: 'Ist doch kein Problem, das Teil ist nicht vorgeschrieben und wird nicht gebraucht', meinte dieser: 'Was angeschraubt ist, muss funktionieren, sonst gibt es die Plakette nicht'. Also habe ich auf der Prüfstelle die Scheinwerfer schnell abgebaut, während der Prüfer unter dem Wagen werkelte – und erhielt, da sonst keine Mängel gefunden wurden, die Plakette. Ist mir im Gedächtnis hängen geblieben, weil 'meine Theorien' damals so gar nicht mit den Vorstellungen dieses Prüfers kompatibel waren.

Die Episode ist mir in den letzten Jahren häufig im Bereich Software-Entwicklung ins Auge gesprungen. Gut, es gibt keinen verpflichtenden Software-TÜV. Aber die SW-Entwickler scheinen häufig auf dem Pfad 'Die Funktion xyz geht nicht, kein Problem, ist ja eh kein Kernfeature, ist zwar dabei, brauchen wird aber nicht und wird auch nicht gefixt' unterwegs zu sein.

Die im QR-Code versteckte URL der Art

https: // xxx\@facebook.com : 443 @ infosec.rm-it.de/

bietet natürlich jede Menge Potential für Missbrauch. Cyber-Kriminelle könnten URLs in QR-Code verstecken, der die Leute im hinteren Teil der URL auf bösartige Webseiten umleitet (diese Fälle gab es ja schon – Plakate wurden mit gefälschten QR-Codes, die auf Malwareseiten verwiesen, überklebt).

Ich denke aber, dass sich da jetzt was bewegt, da die größeren US-Medien darüber berichten. Frage: Jemand von euch, der den Bug nachvollziehen kann?


Cookies blockieren entzieht uns die Finanzierung: Cookie-Einstellungen

Dieser Beitrag wurde unter App, iOS, Sicherheit abgelegt und mit , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Eine Antwort zu iOS: Kamera-App mit QR-Code URL Parser-Bug

  1. TimHil sagt:

    Ich kann das Problem sowohl unter iOS 11.2.6, als auch unter der iOS 11.3 beta 6 nachvollziehen. Es scheint aber auch andere Barcodescanner Apps zu betreffen, zumindest die Apps "Barcoo" und "QR code" scheinen mit dem QR code unter iOS 11 so ihre Schwierigkeiten zu haben.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Hinweis: Bitte beachtet die Regeln zum Kommentieren im Blog (Erstkommentare und Verlinktes landet in der Moderation, gebe ich alle paar Stunden frei, SEO-Posts/SPAM lösche ich rigoros). Kommentare abseits des Themas bitte unter Diskussion.