De Vuilniskaart

U las misschien https://www.deorkaan.nl/hvc-niet-blij-met-extra-afvalpas/ en u vroeg zich af: hoe doet ‘ie dat dan? (Tip: voor wie het allemaal te veel technische informatie vindt: onderaan het artikel staat een link naar een simpele app die het ook kan, gewoon vanaf je telefoon).

Wat voor kaart?

Eerst maar even over de pas zelf. Daar zit een veelgebruikte NFC-chip in, uit de Mifare-familie; een Mifare-classic met 1K (1024 bytes) opslagruimte. Die opslagruimte kun je beveiligen. Je kunt (als ik me goed herinner) twee verschillende wachtwoorden op de kaart zetten – zonder wachtwoord kun je de data op de kaart dan, in theorie tenminste, niet uitlezen of wijzigen.

In de praktijk is dat inmiddels een beetje anders. De beveiliging van de kaart is niet goed genoeg. Het hekje is te laag. Er zijn allerlei trucs om de data op die kaart tóch uit te lezen, ondanks een ingewikkeld wachtwoord. Maar: het zijn en blijven wel trucs. Je moet iets doen, een kraak-programma starten, je computer is er even mee bezig. En wie een truc gebruikt om – een of andere manier van – beveiliging te omzeilen, overtreedt de Wet Computercriminaliteit. Het maakt daarbij niet uit hoe simpel de beveiliging was. Hacken is hacken. En dat mag niet.

Is het dus wel slim om een vuilnispas te kopiëren? Of ben je dan zwaar illegaal bezig?

Dat blijkt nogal mee te vallen. Op de passen van HVC in Zaanstad staat namelijk echt he-le-maal niets. Ze zijn leeg. Alleen maar enen. En zelfs die enen zijn niet beveiligd. Je krijgt van HVC een lege kaart toegezonden.

Het enige wat een vuilnisbak van je wil weten, is het kaartnummer zélf, het kaart-ID. Dat kaart-ID staat digitaal op de kaart, en er is iets mee aan de hand: het kan niet beveiligd worden. Je kunt het altijd uitlezen. Er kan geen wachtwoord op gezet worden. En omdat een vuilnisbak alleen het kaartnummer uitleest – en verder niets – heb je verder niets nodig. De enige veiligheid voor HVC bestaat eruit, dat je in principe het kaartnummer van een kaart niet kunt wijzigen. Het kaart-ID is een vast en uniek gegeven van de kaart. Tenminste: zo was het vroeger.

Slimme chipmakers brachten daar al lang verandering in. Voor een bescheiden bedragje koop je tegenwoordig namaak-Mifare-Classic-kaarten, waarvan je het kaart-ID wél kunt veranderen. En niet alleen kaarten; ook druppels, stickers, sleutelhangers, passen, munten, lederen hoesjes – nu ja, van alles dus.

Daarna is het eigenlijk heel simpel. Lees het kaartnummer van je eigen vuilniskaart. Dat kan gewoon, dat nummer is, per definitie eigenlijk, niet beveiligd. Zet daarna dat kaartnummer op een kaart van jezelf. Dat mag gewoon: die kaart is tenslotte van jezelf.

Dat moet dan wel een kaart zijn die het mogelijk maakt om het ID te herschrijven. Bij “gewone” Mifare-classic-kaarten kan dat niet. Koop je “UID changeable” kaarten, dan kan het nog steeds zijn dat het niet lukt – de leverancier weet soms ook niet precies wat hij verkoopt.

Zelluf doen

Zelf gebruikte ik een ACR122U kaartlezer onder Linux om de kaart te klonen, maar dat is alleen maar omdat dat nu eenmaal mijn werkstation is. Als je dat ook wilt, doe dan het volgende:

sudo apt-get install libnfc-bin libnfc-examples
sudo cat >> /etc/udev/rules.d/10-acr122u.rules <<EOF
ATTRS{idVendor}=="072f", ATTRS{idProduct}=="2200", SUBSYSTEMS=="usb", ACTION=="add", MODE="0666", GROUP="plugdev"
EOF
sudo udevadm control --reload

Daarna plug je de ACR122U in. Linux laadt nu automatisch de standaard-drivers voor de kaartlezer, maar daarmee kun je geen kaart-ID wijzigen. Haal de standaard-drivers dus uit het geheugen:

rmmod pn533_usb
rmmod pn533
rmmod nfc

N.B. de volgende keer dat je de ACR122U inplugt, worden de drivers gewoon weer opnieuw geladen. Als je alléén maar kaart-ID’s schrijft, zou je de pn533 en consorten in de blacklist kunnen zetten (maar hoe dat moet, moet je dan zelf even op internet zoeken). Nu kun je de kaart uitlezen en een clone maken, bijvoorbeeld met nfc-list:

$ nfc-list
nfc-list uses libnfc 1.7.1
NFC device: ACS / ACR122U PICC Interface opened
1 ISO14443A passive target(s) found:
ISO/IEC 14443A (106 kbps) target:
ATQA (SENS_RES): 00 04
UID (NFCID1): 79 b8 fe 38
SAK (SEL_RES): 88

De regel met UID is het kaartnummer waar je naar op zoek bent; met een eenvoudig commando kun je dat kaartnummer kopiëren op een nieuwe pas (of druppel, sticker, sleutelhanger – enz enz). Die pas moet dan wél de mogelijkheid hebben om het UID te veranderen (zie boven).

nfc-mfsetuid 79b8fe38

Simpele app

Maar dan dus nog even de snelle tip: voor wie geen computer heeft, maar wel een Android-telefoon: gebruik de app Mifare Classic Tool, daarmee kun je het kaart-nummer ook heel gemakkelijk kopiëren. Kies in het menu van de app voor “Tools” en kies dan “clone UID”.

Oh ja: lukt het niet: dan heb je misschien niet de goede druppels gekocht. Mijn eerste stapeltje druppels werd ook verkocht als UID changeable – maar schrijven, ho maar.

Veel plezier met vuilstorten!

Naschrift

Oh, tenslotte nog even: wat mag er (denk ik) niet? Dat is: de pas van je buren kopiëren en die dan zelf gaan gebruiken. Dan geef je je uit voor je buren, dat mag niet. Je mag ook niet willekeurige kaartnummers gaan proberen en kijken of de bak per ongeluk open gaat – dan probeer je immers de beveiliging van de vuilnisbak te omzeilen. (Als je dat wel doet, ben je trouwens wel effe bezig: er zijn ongeveer vier miljard verschillende kaartcodes te bedenken). Oh, en als de vuilnisbakpolitie je komt oppakken: niet bij mij komen klagen. Bovenstaand is geen advies, je bent nog steeds zelf verantwoordelijk voor je leven.

p.s. als jullie die handige jongens van dat foldertje in Assendelft zijn: leuk gedaan, succes.

Leave a Reply

Your email address will not be published. Required fields are marked *