Loading theme
Really Free QR Code Generator··8 min lezen

QR-code lezen: decodeer eerst, scan daarna veilig

Een QR-code is met het oog niet te lezen, maar de inhoud haal je in seconden eruit. Zo zie je de bestemming voordat je doorgaat — en wat die controle niet bewijst.


Decodeer de afbeelding in plaats van hem te scannen. Een scanner decodeert de tekst en voert er meteen een actie mee uit; een decoder decodeert dezelfde tekst en toont die alleen aan jou. Dat verschil is je volledige veiligheidsmarge. Als de inhoud een URL is op een domein dat je herkent, gaat de code daar rechtstreeks naartoe. Is het een korte link op een onbekend domein, dan zit er een derde partij tussen.

Dit is in twee situaties belangrijk: je staat op het punt een code te scannen die je niet volledig vertrouwt, of je wilt een code afdrukken die ergens anders is gegenereerd. Dezelfde techniek helpt in beide gevallen.

Stap 1 — Lees de inhoud in plaats van hem te openen

Een QR-code bevat tekst. Een scanner decodeert die tekst en voert er meteen een actie mee uit — opent de URL, maakt verbinding met het wifinetwerk of start het gesprek. Een decoder decodeert dezelfde tekst en toont die alleen aan jou. Dat verschil vormt de volledige veiligheidsmarge.

Maak een foto of schermafbeelding van de code en decodeer de afbeelding met onze QR-lezer. Alles gebeurt in je browser: de afbeelding wordt nooit geüpload en er wordt niets geopend. Je krijgt de ruwe inhoud als tekst.

Stap 2 — Bepaal welk soort inhoud het is

QR-inhoud volgt herkenbare indelingen. Aan het voorvoegsel zie je wat een scanner zou hebben gedaan.

Inhoud begint metTypeWat een scanner zou doen
https:// of http://URLDe pagina openen. Dit is het meest voorkomende geval
WIFI:T:WPA;S:…;P:…;;Wifi-inloggegevensAanbieden om verbinding te maken met dat netwerk — controleer de SSID voordat je akkoord gaat
BEGIN:VCARDContactkaartAanbieden om een contact op te slaan
mailto: / tel: / smsto:E-mail, gesprek, smsEen bericht vooraf invullen of een nummer bellen
Platte tekst zonder voorvoegselTekstDe tekst tonen. Onschadelijk
javascript: of een onbekend app-schemaVerdachtNiet openen

Op onze typepagina's leggen we elke indeling uit als je wilt zien hoe een legitieme code is opgebouwd: wifi, vCard, e-mail, telefoon, platte tekst.

Stap 3 — Beoordeel het domein

Bij inhoud met een URL is het domein bepalend — lees het van rechts naar links vanaf de eerste enkele schuine streep. In https://pay.cityparking.gov/meter/44 is het domein cityparking.gov. In https://cityparking.gov.pay-now.click/meter/44 is het pay-now.click, en is het herkenbare deel slechts versiering.

Wat je zietInterpretatie
Een domein dat je herkent en bij de organisatie pastRechtstreeks. De code gaat waar hij naartoe lijkt te gaan
Een generieke QR-verkorter die niet van jou isEr zit een derde partij tussen die de bestemming kan wijzigen of uitschakelen
Een echte merknaam als subdomein van iets andersKlassieke nabootsing. Controleer de labels helemaal rechts
Een onbewerkt IP-adresBijna nooit legitiem op gedrukt materiaal

Eén waarschuwing over verkorters: als je de dienst herkent, weet je nog niet waar de link naartoe gaat. Unit 42 zegt het rechtstreeks — "Zelfs veiligheidsbewuste mensen die het URL-voorbeeld controleren voordat ze scannen, kunnen de uiteindelijke bestemming niet bepalen wanneer ze verkorte links krijgen" — en de drie diensten die zij als meest misbruikt aanmerken zijn gewone QR-generatoromleidingsdomeinen. Een bekende verkorter is geen geruststelling.

Stap 4 — Volg de omleidingsketen

Als de inhoud een korte link is en je wilt weten waar die uiteindelijk uitkomt, los hem dan op zonder de pagina te laden. Gebruik een terminal:

Voer curl -sIL "https://short.example/abc" | grep -i "^location:" uit — hiermee wordt elke stap in de keten getoond via de Location-header, zonder pagina-inhoud uit te voeren. Let op hoeveel stappen je ziet: één stap naar de verwachte bestemming is normaal, terwijl meerdere stappen via ongerelateerde hosts meestal wijzen op analyse- of advertentietussenpersonen, die elk het verzoek kunnen zien. Wat een QR-proxy logt legt uit wat die stappen verzamelen.

Twee kanttekeningen. Een omleiding kan jou de ene bestemming tonen en iemand anders een andere, afhankelijk van IP-adres, user-agent of tijd — een schoon resultaat bewijst dus wat er op dat moment bij jou gebeurde, niet wat een klant in een ander land krijgt. En de bestemming van een dynamische code kan daarna op elk moment worden gewijzigd; juist daarvoor wordt deze functie verkocht.

Hoe controleer je een code die per e-mail binnenkwam?

Behandel dit als een apart en gevaarlijker geval. Het NCSC merkt op dat QR-codes specifiek in phishingmails worden gebruikt omdat niet alle beveiligingstools afbeeldingen scannen. Daardoor kan een code een schadelijke link langs filters loodsen die dezelfde link als tekst wel zouden hebben onderschept — en door te scannen ga je naar een persoonlijke telefoon met zwakkere bescherming dan je werkcomputer.

De controle is eenvoudig. Sla de afbeelding uit de e-mail op in plaats van hem vanaf het scherm te scannen, decodeer het bestand en lees het domein. Doe dit op de computer, niet op de telefoon, zodat je het beschermde apparaat nooit verlaat. Komt het domein niet exact overeen met de organisatie waarvoor de e-mail zich uitgeeft, stop dan — neem contact op met de organisatie via de normale weg, niet via iets uit het bericht.

Let vooral op urgentie in combinatie met een code: een bezorgprobleem, een belastingbericht, een mailbox die vol zit of een account dat vandaag moet worden geverifieerd. Legitieme organisaties vragen je zeer zelden om een gedrukt vierkant te scannen om een dringend accountprobleem op te lossen. Quishing behandelt de aanvalspatronen volledig.

Wat kan een decoder je niet vertellen?

Als je de beperkingen kent, blijft de controle betrouwbaar.

  • Of de bestemming veilig is. Een decoder toont het adres, niet de inhoud. Op een herkenbaar domein kan nog steeds een gehackte pagina staan.
  • Wat andere mensen krijgen. Een omleiding kan verschillende bestemmingen tonen op basis van IP-adres, user-agent of tijdstip. Je schone resultaat beschrijft jouw verzoek op dat moment.
  • Wat er morgen gebeurt. De bestemming van een dynamische code kan op elk moment na je controle worden gewijzigd. Daarvoor wordt deze functie verkocht, en daarom is "Ik heb hem één keer gecontroleerd" geen blijvende uitspraak over een dynamische code.
  • Of de gedrukte versie overeenkomt met het bestand. Stickers die ergens overheen zijn geplakt, betekenen dat het goedgekeurde ontwerp en het object aan de muur kunnen verschillen. Alleen het decoderen van een fysieke versie vertelt je iets over die fysieke versie.

De eerste en laatste beperking verklaren waarom het zakelijke advies in deze blog steeds op hetzelfde punt uitkomt: een statische code op je eigen domein is de enige constructie waarbij een eenmalige controle geldig blijft.

Stap 5 — Controleer je eigen ontwerp voordat het naar de drukker gaat

Dit kost een minuut en voorkomt een hele categorie dure problemen.

  1. Exporteer het definitieve ontwerp precies zoals het wordt afgedrukt.
  2. Decodeer dat bestand — niet het bestand uit de voorbeeldweergave van de generator.
  3. Controleer of de inhoud de URL is die je bedoelde, op een domein dat je bezit.
  4. Is het een korte link op het domein van iemand anders, druk hem dan niet af. Genereer opnieuw een statische code.
  5. Scan de gedrukte proef zodra die binnenkomt en controleer of de code nog steeds op de juiste plek uitkomt.

Als een code al is afgedrukt en deze controle te laat komt, behandelt de gids voor herstel na gijzeling de opties die nog overblijven. Als de code niet meer werkt en je nog niet weet waarom, begin dan bij waarom je QR-code niet meer werkt.

Veelgestelde vragen

Kan ik een beschadigde, vuile of gedeeltelijk afgedekte QR-code decoderen?
Vaak wel. QR-codes gebruiken Reed–Solomon-foutcorrectie. Op het hoogste niveau kan ongeveer 30% van het patroon verloren gaan terwijl de inhoud nog steeds wordt hersteld. Wat niet mag ontbreken, zijn de drie grote vierkanten in de hoeken — dat zijn de positiemarkeringen die een decoder nodig heeft om het raster überhaupt te vinden en te richten. Een code met een afgescheurde hoek werkt meestal niet; een code met een geschuurd midden meestal wel.
Is het veilig om een QR-code alleen te scannen om hem te bekijken?
De meeste telefoonscanners tonen een voorbeeld voordat ze iets openen, wat redelijk veilig is. Het risico zit in automatisch doorklikken. Bij twijfel decodeer je de afbeelding in plaats daarvan — daarmee haal je het risico volledig weg.
Hoe weet ik of een QR-code dynamisch is?
Decodeer hem. Als de inhoud een korte link is op een domein dat niet van jou is en ook niet van de bestemmingssite, is de code dynamisch en loopt hij via die derde partij. Een statische code bevat de URL van de bestemming zelf.
Kan ik zonder internet zien wat een QR-code doet voordat ik hem scan?
Ja. Decoderen is een lokale berekening — een decoder die in de browser werkt, heeft geen netwerk nodig zodra de pagina is geladen, en de inhoud is tekst die je zelf kunt lezen.
Wat moet ik doen als een gedrukte code naar een domein leidt dat ik niet herken?
Scan hem niet en meld hem, als hij op openbare infrastructuur staat, bij de eigenaar van die plek. De FTC en FBI hebben allebei gewaarschuwd voor stickers die over legitieme codes worden geplakt; zie quishing.

Codes die je hier genereert, decoderen altijd precies naar wat je hebt ingevoerd: QR-code voor URL. Meer context vind je in de waarheid over QR-codefraude.


Klaar voor een statische QR-code?

Genereer er een in je browser — geen account, geen tracking, geen abonnement. Wat je maakt is van jou.