Loading theme
·6 min čtení

Únos přesměrování QR kódu: Neviditelný prostředník

Když váš QR kód funguje, prostředník je neviditelný. Když se rozbije, je už pozdě. Pochopení modelu přesměrování je prvním krokem, jak se mu vyhnout.


Každý dynamický QR kód, který jste kdy naskenovali, zahrnoval třetí stranu, kterou jste si nikdy nevybrali. Mezi kamerou telefonu a cílovým webem přesměrovací server vlastněný poskytovatelem QR tiše předával požadavek. Většina uživatelů si toho nikdy nevšimne. To je ten smysl.

Tento článek vysvětluje, jak únos přesměrování vypadá v praxi, co prostředník skutečně dělá, a co je v sázce.

Sekvence přesměrování

Když naskenujete statický QR pro https://shop.example.com:

  1. Kamera načte QR kód
  2. OS jej rozpozná jako URL
  3. Prohlížeč otevře https://shop.example.com

Tři kroky. Žádné třetí strany.

Když naskenujete dynamický QR pro stejný cíl:

  1. Kamera načte QR kód, který kóduje něco jako https://qr-provider.com/r/x7n2
  2. OS otevře tuto URL
  3. qr-provider.com přijímá požadavek, loguje jej, vyhledává x7n2 ve své databázi
  4. qr-provider.com vydává přesměrování 301 nebo 302 na https://shop.example.com
  5. Prohlížeč následuje přesměrování a dorazí na skutečný cíl

Pět kroků. Třetí strana navíc v kroku 3 — taková, kterou jste nikdy neschválili, nikdy nezaplatili a nemůžete ji vidět.

Co získává prostředník

Každý jednotlivý scan produkuje záznam v serverovém logu obsahující:

  • Časovou značku skenu
  • IP adresu čtečky
  • Řetězec user-agent (zařízení, OS, prohlížeč)
  • Hlavičku referrer (odkud čtečka přišla, pokud platí)
  • Hlavičku Accept-Language (preference jazyka)

Z toho může poskytovatel odvodit: přibližnou geografickou polohu, typ zařízení, verzi operačního systému a v souhrnu vzorce skenování v čase. To je marketováno zákazníkům jako „analytika". Je to také, stejnou měrou, dohled nad lidmi, kteří skenují vaše kódy — kteří nikdy nesouhlasili.

Co může prostředník dělat

Změnit cíl

Cíl přesměrování žije v databázi poskytovatele. Majitel QR ho obvykle může upravit prostřednictvím dashboardu. To je prodáváno jako funkce a pro některé případy použití to skutečně je. Ale znamená to, že QR kód už není tím, čím se zdá. Fyzický artefakt říká „naskenujte pro návštěvu našich stránek". Skutečné chování je to, co dnes říká databáze poskytovatele.

Deaktivovat přesměrování

Pokud vyprší předplatné majitele nebo je uzavřen účet nebo jsou porušeny ToS poskytovatele, přesměrování může být odstraněno. Každá vytištěná kopie QR kódu okamžitě přestane fungovat. Uživatelé skenují a vidí obecnou chybovou stránku nebo 404.

Vložit mezilehlou stránku

Někteří poskytovatelé směrují skeny dynamických QR přes značkovou mezilehlou stránku před finálním přesměrováním — zobrazují reklamy, žádají o souhlas, sbírají e-mailové adresy. Majitel QR se obvykle pro toto nezaregistroval. Přidává se to později, jak poskytovatel agresivněji monetizuje.

Prodat nebo ztratit data o skenování

Logy skenů jsou cenné. Byly prodány analytickým brokerům, použity k trénování modelů cílení reklamy a — v alespoň několika zdokumentovaných únicích — unikly, když byli poskytovatelé kompromitováni. Vaši zákazníci naskenovali menu; nyní otisk jejich zařízení žije v datovém souboru úniku.

Proč si uživatelé nikdy nevšimnou

Moderní prohlížeče automaticky následují přesměrování. Pokud nemáte otevřené vývojářské nástroje, mezilehlý skok nevidíte. Scan působí okamžitě, protože přesměrování je rychlé (když funguje). Z pohledu uživatele se dynamický QR chová identicky se statickým.

Až do chvíle, kdy přesměrovací server selže. Pak se zkušenost ostře rozchází — ale v té době je QR kód už vytištěn na tisících povrchů.

Bezpečnostní důsledky

Přesměrovací server je jedním bodem selhání pro každý QR kód, který na něm závisí. Tři útočné plochy stojí za úvahu:

  • Převzetí účtu. Pokud útočník získá přístup k účtu poskytovatele majitele QR, může přesměrovat každý QR na phishingovou stránku. Zákazníci skenují fyzický kód v očekávání menu restaurace; přistanou na klonu přihlašovací stránky restaurace, který sbírá přihlašovací údaje.
  • Kompromitace poskytovatele. Pokud je kompromitován samotný poskytovatel QR, každý dynamický QR v oběhu je potenciálně přesměrován na obsah kontrolovaný útočníkem. Toto není teoretické — zveřejnění úniků existují pro více poskytovatelů QR-as-a-service.
  • Selhání DNS nebo TLS u poskytovatele. Pokud přesměrovací doména přestane resolvovat nebo vyprší TLS certifikát, každý QR, který na něm závisí, selže. Ne zlomyslný aktér — jen obyčejné provozní riziko, které majitel QR nekontroluje.

Statické QR kódy nemají žádný z těchto režimů selhání, protože mezi scanem a cílem není server třetí strany.

Jak zkontrolovat, zda skenujete přesměrování

Použijte QR čtečku, která zobrazuje dekódovaný obsah před tím, než ho následuje — naše webová čtečka to dělá. Naskenujte QR kód a zkontrolujte dekódovanou URL. Pokud je to váš skutečný cíl, QR je statický. Pokud je to něco jako qrco.de/xyz nebo krátká doména, kterou neznáte, je to přesměrování — a uprostřed sedí třetí strana.

Alternativa

Generujte QR kódy, které kódují váš cíl přímo. Žádné servery třetích stran, žádné logy přesměrování, žádné předplatné. Viz statické vs dynamické QR kódy pro úplné srovnání a pravda o podvodech s QR kódy, proč model prostředníka dominuje průmyslu.

Nebo prostě vygenerujte statický QR kód a přestaňte si dělat starosti.


Připraveni na statický QR kód?

Vygenerujte si ho ve svém prohlížeči — bez účtu, bez sledování, bez předplatného. Co vytvoříte, patří vám.