QRCode und 2DCode via Shell lesen

Barcodes, Strichcodes und 2Dcodes halte ich für ein unheimlich tolle Erfindung. Aus Automatisierungs-, oder Sicherheitsgründen ist es manchmal nötig sie mit dem Rechner direkt, anstelle mit dem Smartphone auszulesen.

Als Kind der Siebziger des letzten Jahrhunderts kann ich mich noch genau daran erinnern wie Barcodes verteufelt und mit dem dritten Reich oder Satan verglichen wurden. Volkszählung, die Zahlen für jeden um Ihn zu bestimmen, die Verschwörung und von manchen als provokatives Statement in den Nacken tätowiert. Es stellte sich aber heraus, dass nun alles Schlechte, die Welt verändernde, doch nicht mit, oder durch dem Barcode kam. Der Barcode, ob man Ihn nun mag oder nicht, zeigt sich dann eher gutartig. Vor allem wenn ich seine Einsatzorte betrachte. Blutbanken, Bibliotheken, Briefumschläge, das Lieferwesen und deren Lieferwege, Kaufwaren, Geocaching, ich denke die Liste lässt sich sehr einfach von jedem Leser erweitern.

QRCode

Wer sich ein wenig für den QR-Code interessiert findet in der deutschen Wikipedia einen sehr umfangreichen Artikel und auch hier in meinem Blog kann man ein-, zweimal darüber stolpern. Ich habe den 2DCode schon immer benutzt um schnell Daten von meinem Laptop und anderen Trägern in mein Smartphone zu übertragen. Es können via KISS: Mit Parcellite QRCodes generieren komplette Texte an mein Smartphone gesendet und auch im Alltag unterstützt er mich bei 2FA und OTP.

Dies ist kein 2D Qr-code
Fehlender Putz sieh zwar aus wie QR-Code, ist aber kein mir bekannter

 

Schauermeldungen

Damals, in 2011, hatten wir die eine Meldung „Malicious QR Codes Pushing Android Malware“, welche mir nicht mehr aus dem Kopf ging. Gern würde ich mich damit brüsten diesen Crack im Alltag erlebt und gesehen zu haben. Leider ist mir selbst Niemand bekannt, der so eine Art von Angriff unterlegen ist, oder war.  Ich selbst hatte keine Informationen mehr über so eine Art von Angriffe im Nachhinein bekommen, sie aber auch nicht gesucht. Für absolut unvorstellbar halte ich sie aber nicht.

Auf Grund der letzten CVEs von Android, sowie CVEs von iOS kann man vielleicht selbst meinen Gedankengang, auch ohne sich selbst mutwillig bösartige zu fordern, nachvollziehen. Hier sollten selbst einmal die Möglichkeiten im Geiste durchspielen und technisch auslotet werden, in wie weit sie noch vorstellbar für die Geräte und die Nutzer selbst sind und wieder werden. Aber da sich scheinbar QRCodes in der Art wie ich es mir als Informationstransportsystem gewünscht hatte nicht durchsetzen, wird ein „proof of concept“ von Extern scheinbar nicht so so schnell vorgenommen werden. Übrig bleibt hier An Analysis of Jester’s QR Code Attack

 

Sicheres Auslesen auf der Kommandozeile

Nach der Installation der zbar-tools unter Debian, bzw von zbar unter Fedora lassen sich Codes als Bilder ohne Probleme auslesen.

A la Jean Pütz habe ich da mal etwas für den Download vorbereitet
A la Jean Pütz habe ich da mal etwas für den Download vorbereitet

 

cmg@triton:~$ wget https://got-tty.org/wp-content/uploads/2016/10/qrcode_gottty_Artikel.jpeg
cmg@triton:~$ zbarimg qrcode_gottty_Artikel.jpeg


QR-Code:Barcodes, Strichcodes und 2Dcodes halte ich für ein unheimlich tolle Erfindung. Aus Automatisierungs-, oder Sicherheitsgründen ist es manchmal nötig sie mit dem Rechner direkt, anstelle mit dem Smartphone auszulesen.



Als Kind der Siebziger des letzten Jahrhunderts kann ich mich noch genau daran erinnern wie Barcodes verteufelt und mit dem dritten Reich oder Satan verglichen wurden. Volkszählung, die Zahlen für jeden um Ihn zu bestimmen, die Verschwörung und von manchen als provokatives Statement in den Nacken tätowiert. Es stellte sich aber heraus, dass nun alles schlechte die Welt verändernde doch nicht mit, oder durch dem Barcode kam. Der Barcode, ob man nun mag oder nicht, zeigt sich dann eher gutartig. Vor allem wenn ich seine Einsatzorte betrachte. Blutbanken, Bibliotheken, Briefumschläge, das Lieferwesen und deren Lieferwege, Kaufwaren, Geocaching, ich denke die Liste lässt sich sehr einfach von jedem Leser erweitern.


scanned 1 barcode symbols from 1 images in 0.31 seconds

Ich denke mit der Ausgaben kann man leben.  Der Vorgang gilt natürlich für EAN-13/UPC-A, UPC-E, EAN-8, Code 128, Code 39, Interleaved 2 of 5 und QR Code. Hier sind ist dem Scripting keine Grenzen gesetzt und ich habe selbst einem Transportunternehmen mit einem einfach Script, einem Scanner,knotify  und Magie für die Verfolgung der Güter weiterhelfen können.

Eine große Firma aus dem Ausland hatte dafür einen 5stelligen Betrag jährlich ausgeschrieben, natürlich inklusive Scanner, sonst lohnt es sich nicht wirklich, laut Reseller ;)

 

6 Gedanken zu „QRCode und 2DCode via Shell lesen“

  1. „Der Barcode, ob man Ihn nun mag oder nicht, zeigt sich dann eher gutartig.“

    Der Barcode an sich ist weder gut- noch bösartig. Er ist nur ein neutrales Werkzeug. Genau wie ich mit einem Messer mein Brot schmieren kann, oder jemanden mit dem gleichen Messer ernsthaft verletzten kann.

    • Nun, wie ich oben schon sagte, es gab diese Diskussionen in den 80ern und ich habe sie vor 30 Jahren verlassen.
      Diese Diskussion meine ich :D
      Aus dem Grund der Satz, welchen Du zitierst, aber gerne kannst Du dich in eine Zeitmaschine setzen und sie dort nochmals führen.
      Am besten wendest Du dich an die grüne Firmierung, welche sich so richtig in Frankfurt am Main, Bornheim, damals auslebte.
      Natürlich inklusive der Debatte über die Atomkraft, Volkszählung und einen Cohn-Bendit und den Ausläufern der RAF ;)
      Und Du kannst Dir nicht vorstellen was dort alles raus gehauen wurde, somit, ist dies eher, wenn man die Vorsätze beachtet, eine Anekdote zu den Erlebnissen damals und etwas von Zeitzeuge.

      Aber eines Gute hatte die Zeit, den kurzweiligen Abenteuerspielplatz am Mousonturm Frankfurt.
      Siehe hierzu auch http://www.fr-online.de/frankfurt/mousonturm-frankfurt-seifenoper-um-die-mousonfabrik,1472798,26310308.html
      Man hat es damals sehr nett knallen lassen.
      Wenn Du den Ärger der Grünen jetzt verstehen möchtest, dann wäre es Zeit sich hierfür zu interessieren, denn auch die Piraten könnten daraus lernen ;)

  2. Vielen Dank für die Anregungen! Wie Du selbst schon bemerkt hast, erzeugt qrencode anscheinend keinen ECI-Block, um UTF8-Zeichen zu kennzeichnen. Leider ist auch zbarimg etwas eigenwillig, was -q bewirken soll, aber ein

    cat temp.txt | recode utf8..latin1 | qrencode -o temp.png && diff temp.txt <(zbarimg -q temp.png | sed '1{s/^QR-Code://};$d')

    sieht vielversprechend aus. Umlaute (in Latin1 codiert) kommen so richtig an.

    • Ja, lustiger Weise ist das nicht wirklich richtig implementiert worden.
      Dabei ist UTF-8 eigentlich schon lange „Standard“.
      Danke Dir für die Lösung und ich freue mich, dass doch Jemand mit der Idee und dem Tipp noch etwas anfangen konnte.
      Geht ja scheinbar doch eher in die Ecke Spartenprogramme

      • Hab mir sogar gleich clipit (wohl ein Nachfolger von parcellite) installiert und dein Shell-Skript als Aktion eingebaut. Ideal zum Weitergeben kleiner Text oder ganz besonders des ellenlangen WLAN-Keys ;)

        • Ja, ist unheimlich praktisch.
          Stimmt Clipit habe ich unter Fedora, aber parcellite läuft noch unter Debian Jessie bei mir, da musste ich eben selbst nochmal in die .xinitrc schauen-
          Parcellite hatte mich ja einige Zeit begleitet und ist mit Scripting ziemlich mächtig.
          Dann weise ich schnell nochmal auf worker hin, der Dateimanager schlechthin, wenn man Scripting nicht scheut ;)

Kommentare sind geschlossen.