NFC Locker open met verschillende tokens.

Pagina: 1
Acties:

Onderwerpen

Vraag


Acties:
  • 0 Henk 'm!

  • GLeenders
  • Registratie: September 2017
  • Laatst online: 03-09 16:44
Bij mij op de studie staan in alle gebouwen lockers die te sluiten zijn met NFC, nu gebruik ik daar mijn OV kaart of studentenpas voor. Een van deze lockers gebruiken mijn medestudenten en ik om koffie/bestek/eten/boeken/etc. in te leggen zodat we deze niet mee naar huis hoeven te nemen.

Het probleem: we gebruiken met drie personen de locker, slechts een persoon kan de locker openen. We willen eigenlijk alle drie een token hebben zodat we altijd bij onze spullen kunnen.

Mijn vraag:
Welke informatie van een NFC tag gebruikt de locker om te verifiëren dat de juiste tag voor de sensor gehouden wordt?

Relevante software en hardware die ik gebruik:
Arduino IDE
Mifare Classic Tool - Android app
RC522 NFC Module (Link)
NFC Token - Mifare Classic 1K 4 byte UID - Rewritable UID (Link)
NFC Lockers (Link)

Wat ik al gevonden of geprobeerd heb:
Ik heb een aantal herschrijfbare NFC tags gekocht met het doel deze te klonen, een simpele oplossing dacht ik. Dit blijkt niet te werken. Het enige verschil dat ik zie is het UID (Block 0 Sector 0 van de NFC chip). Met de bovengenoemde android app heb ik geen toegang om het UID te wijzigen, waarschijnlijk omdat de access conditions van block 0 daar niet goed voor zijn ingesteld.

Vervolgens een NFC reader/writer voor de arduino gekocht in de hoop dat ik daar meer mee kan bereiken. De arduino library die bij de NFC module hoort bevat enkele voorbeelden die ook prima werken met de gekochte NFC token, zo kan ik de UIDs en de data op de tokens uitlezen. Wat echter nog steeds niet lukt is het UID veranderen.

Het eerste wat mij nu te binnen schiet is dat het UID van de tags helemaal niet herschrijfbaar is, ookal staat dit wel aangegeven(Het blijft natuurlijk AliExpress). Dit staat ook in een van de reviews onder het product, maar omdat het slechts 1 review is kan dit ook fout zijn.

Ten tweede vraag ik mij af welke data deze lockers gebruiken om te kijken of dezelfde NFC tag er voor wordt gehouden. Met andere woorden, moet het UID van de drie tags wel gelijk zijn?

EDIT: Gewoon tags kopen waarvan je het UID wel kan wijzigen was de oplossing. Bedankt voor de input allemaal.

Beste antwoord (via GLeenders op 21-11-2019 20:35)


  • amauer
  • Registratie: Juni 2005
  • Laatst online: 18:31
Je hebt op AliExpress Chinese clone mifare classic cards waarbij je met je telefoon block 0 kan overschrijven. Vaak staat er bij de omschrijving dan iets van NFC of android. Bij de kaarten zonder vermelding nfc kun je block 0 alleen overschrijven met een speciaal commando.

€ 2,04 36%OFF | 5 stks/partij CUID Android App MCT Wijzigen UID Verwisselbare NFC 1 k s50 13.56 MHz keyfob Blok 0 Beschrijfbare 14443A
https://s.click.aliexpress.com/e/pQCoaIGz5

€ 0,30 21%OFF | 1 stks/partij CUID Android App MCT Wijzigen UID Verwisselbare NFC 1k s50 13.56MHz kaart Blok 0 Beschrijfbare HF 14443A
https://s.click.aliexpress.com/e/0uI7YVi8j

In de mifare classic tool op Android heb ik kopieën opgeslagen van al mijn RFID kaarten (afvalpas, lockerpas, parkeerpas etc). Wanneer ik een nodig heb schrijf ik deze op een pas of sleutelhanger en gaan met die banaan! ;)

De lockers waar je hebt over hebt zijn waarschijnlijk vecos lockers? Die slaan alleen de uid van de kaart op. Met bovenstaande kaarten is de kans erg groot dat het gaat lukken. Ik gebruik deze zelf ook :)

[ Voor 29% gewijzigd door amauer op 03-11-2019 18:26 ]

Alle reacties


Acties:
  • 0 Henk 'm!

  • BasilFX
  • Registratie: Mei 2004
  • Laatst online: 08:28

BasilFX

BasilFX

Ik weet van die writable block 0 NFC-kaarten, er eerst een undocumented command moet gebruikt worden om block 0 te unlocken. Ik heb in het verleden dit gebruikt met een PN532 break-out board i.c.m. libnfc onder Ubuntu. Break-out board was aan te sluiten via UART met de computer.

http://www.basilfx.net


Acties:
  • 0 Henk 'm!

  • jeroen3
  • Registratie: Mei 2010
  • Laatst online: 18:03
Kun je hier misschien iets met Host-based card emulation?

Acties:
  • 0 Henk 'm!

  • Resistor
  • Registratie: April 2001
  • Niet online

Resistor

Niet meggeren!

Zoiets?

Geen ervaring mee.

What will end humanity? Artificial intelligence or natural stupidity?


Acties:
  • 0 Henk 'm!

  • Tadango
  • Registratie: April 2000
  • Laatst online: 08-08 18:19
Zou niet simpelweg het serie nummer worden gebruikt? Of zou er bij het locken een "sleutel" op de kaart worden gezet? Niet alle tokens zijn schrijfbaar dus ik vermoed simpelweg het serie nummer. Deze kan je alleen niet wijzigen, of zijn er tokens waarbij je het serie nummer kan schrijven? Daar heb ik zelf ook belang bij.

Acties:
  • 0 Henk 'm!

  • GLeenders
  • Registratie: September 2017
  • Laatst online: 03-09 16:44
BasilFX schreef op donderdag 31 oktober 2019 @ 12:00:
Ik weet van die writable block 0 NFC-kaarten, er eerst een undocumented command moet gebruikt worden om block 0 te unlocken. Ik heb in het verleden dit gebruikt met een PN532 break-out board i.c.m. libnfc onder Ubuntu. Break-out board was aan te sluiten via UART met de computer.
Dat je de schrijftoegang van block 0 aan moet passen met een command had ik al meer gelezen. Tot nu toe heb ik niet kunnen vinden wat dat commando mag zijn. Bedankt voor links in ieder geval! Ik ga eens kijken of ik het commando in de library kan vinden en als ik daar niet verder mee kom de Adafruit module aanschaffen.
De NFC van je telefoon gebruiken is inderdaad ook een optie. Een probleempje met deze aanpak is dat ik de locker op slot kan doen maar vervolgens niet meer kan unlocken. Dit is ook de reden dat ik twijfel of de autorisatie wel op basis van het UID van de NFC chip is. Ik zal eens proberen hem te locken met een NFC token en vervolgens de token naar mijn telefoon te clonen.
Wat leuk dat ze er een speciaal appaat voor ontwikkeld hebben, die had ik nog niet gevonden. Zelf denk ik dat het een kwestie is van de juiste commando's naar de chip sturen ipv welke reader/writer je gebruikt.
Tadango schreef op donderdag 31 oktober 2019 @ 12:48:
Zou niet simpelweg het serie nummer worden gebruikt? Of zou er bij het locken een "sleutel" op de kaart worden gezet? Niet alle tokens zijn schrijfbaar dus ik vermoed simpelweg het serie nummer. Deze kan je alleen niet wijzigen, of zijn er tokens waarbij je het serie nummer kan schrijven? Daar heb ik zelf ook belang bij.
Dit zijn inderdaad de twee opties die ik zelf kan bedenken. Het UID van een NFC chip is de "unique identifier" maar het lukt me dus niet dat aan te passen (wat volgens de documentatie wel mogelijk moet zijn). Ik lees wel op de website van NXP dat er naast het UID ook een serienummer is, al is het voor mij onduidelijk of deze uit te lezen is van de chip. Er bestaan wel NFC chips waarvan je de UIC kan aanpassen.
I zal ook eens testen of de locker iets aanpast op de NFC chip zodra de locker dicht gaat, die optie is er ook nog.

Acties:
  • 0 Henk 'm!

  • Tadango
  • Registratie: April 2000
  • Laatst online: 08-08 18:19
Het serienummer is vaak een 4 byte (van de standaard tags) nummer en kan je altijd uitlezen. Deze is van de meeste passen altijd hetzelfde maar van mijn telefoon en rijbewijs bv niet! Wellicht kan je daarom je telefoon ook niet gebruiken aangezien deze elke keer een ander serie nummer terug geeft?

Via de Adafruit PN532 library lees ik het serienummer uit via readPassiveTargetID

Btw, over een UID:

NFC UID
Every NFC chip has a globally unique, manufacturer supplied, read-only identifier that can be read by most NFC devices. In most NFC chips, this UID is 7 byte in length. An NFC tag’s UID can not be changed or erased; it is stored in special memory in the NFC chip which does not allow the bits to be changed.

https://help.gototags.com/article/nfc-uid/

EDIT: https://timdows.com/proje...e-to-clone-a-mifare-card/

[ Voor 38% gewijzigd door Tadango op 31-10-2019 13:26 ]


Acties:
  • 0 Henk 'm!

  • GLeenders
  • Registratie: September 2017
  • Laatst online: 03-09 16:44
Tadango schreef op donderdag 31 oktober 2019 @ 13:20:
Het serienummer is vaak een 4 byte (van de standaard tags) nummer en kan je altijd uitlezen. Deze is van de meeste passen altijd hetzelfde maar van mijn telefoon en rijbewijs bv niet!
Is het nou net zo dat als je de locker sluit met je rijbewijs dat je hem ook niet meer op krijgt. Waarschijnlijk is het UID dus de sleutel voor het openen. Kun je mij vertellen waarom het UID van je telefoon/rijbewijs veranderd? Dit heb ik nog niet kunnen vinden.
Tadango schreef op donderdag 31 oktober 2019 @ 13:20:
Btw, over een UID:

NFC UID
Every NFC chip has a globally unique, manufacturer supplied, read-only identifier that can be read by most NFC devices. In most NFC chips, this UID is 7 byte in length. An NFC tag’s UID can not be changed or erased; it is stored in special memory in the NFC chip which does not allow the bits to be changed.
Dit ben ik ook tegengekomen, maar als ik het goed begrijp geldt dit voor "echte" NFC chips. Er zijn Chinese varianten waarbij het wel mogelijk is om het UID te veranderen. Vandaar ook dat het een standaard functie is in een aantal NFC libraries voor Arduino of de Linux(zoals BasilFX eerder aangaf.)

Acties:
  • 0 Henk 'm!

  • Tadango
  • Registratie: April 2000
  • Laatst online: 08-08 18:19
GLeenders schreef op donderdag 31 oktober 2019 @ 13:27:
[...]


Is het nou net zo dat als je de locker sluit met je rijbewijs dat je hem ook niet meer op krijgt. Waarschijnlijk is het UID dus de sleutel voor het openen. Kun je mij vertellen waarom het UID van je telefoon/rijbewijs veranderd? Dit heb ik nog niet kunnen vinden.


[...]


Dit ben ik ook tegengekomen, maar als ik het goed begrijp geldt dit voor "echte" NFC chips. Er zijn Chinese varianten waarbij het wel mogelijk is om het UID te veranderen. Vandaar ook dat het een standaard functie is in een aantal NFC libraries voor Arduino of de Linux(zoals BasilFX eerder aangaf.)
Wisselend ID kan ivm security / tracking zijn.

Zie mijn Edit link: Bij Chinese kaarten kan je block 0 ook schrijven inderdaad, dus ook het serie nummer. Nu heb ik 2 van die thuis..... dus eens kijken of ik het serie nummer van mijn werk token ook kan toevoegen :)

Voor jouw oplossing zou het voldoende zijn als je 3 kaarten met dezelfde data in block 0 schrijft, dan worden ze alle 3 als gelijk gezien en heb je de oplossing.

Acties:
  • 0 Henk 'm!

  • Rowwan
  • Registratie: November 2000
  • Laatst online: 17:57
Geen idee welke vendor de orginele tags vandaan komen, maar NXP heeft ook nog zoiets als een "originallity check" die checkt of de tags wel genuine NXP tags zijn, geen idee hoe makkelijk je dit kunt omzeilen

Acties:
  • 0 Henk 'm!

  • _ferry_
  • Registratie: Januari 2002
  • Niet online

_ferry_

Moderator Tweaking

Nipple Tweaker

Interessant, want ik heb een NFC afvalpas, die ik wel kan klonen, maar doordat block 0 anders is doet hij hem toch niet accepteren.

Acties:
  • 0 Henk 'm!

  • Lennyz
  • Registratie: Januari 2010
  • Laatst online: 29-08 20:08
Gebruik je deze library? Hiermee kan je namelijk simpel de UID wijzigen van die NFC kaarten van Aliexpress.

https://github.com/miguelbalboa/rfid

Acties:
  • Beste antwoord
  • 0 Henk 'm!

  • amauer
  • Registratie: Juni 2005
  • Laatst online: 18:31
Je hebt op AliExpress Chinese clone mifare classic cards waarbij je met je telefoon block 0 kan overschrijven. Vaak staat er bij de omschrijving dan iets van NFC of android. Bij de kaarten zonder vermelding nfc kun je block 0 alleen overschrijven met een speciaal commando.

€ 2,04 36%OFF | 5 stks/partij CUID Android App MCT Wijzigen UID Verwisselbare NFC 1 k s50 13.56 MHz keyfob Blok 0 Beschrijfbare 14443A
https://s.click.aliexpress.com/e/pQCoaIGz5

€ 0,30 21%OFF | 1 stks/partij CUID Android App MCT Wijzigen UID Verwisselbare NFC 1k s50 13.56MHz kaart Blok 0 Beschrijfbare HF 14443A
https://s.click.aliexpress.com/e/0uI7YVi8j

In de mifare classic tool op Android heb ik kopieën opgeslagen van al mijn RFID kaarten (afvalpas, lockerpas, parkeerpas etc). Wanneer ik een nodig heb schrijf ik deze op een pas of sleutelhanger en gaan met die banaan! ;)

De lockers waar je hebt over hebt zijn waarschijnlijk vecos lockers? Die slaan alleen de uid van de kaart op. Met bovenstaande kaarten is de kans erg groot dat het gaat lukken. Ik gebruik deze zelf ook :)

[ Voor 29% gewijzigd door amauer op 03-11-2019 18:26 ]


Acties:
  • 0 Henk 'm!

  • Rukapul
  • Registratie: Februari 2000
  • Laatst online: 16:56
De mifare classic tool app en een paar mifare compatible kaarten die je block 0 laten schrijven is alles wat je nodig hebt. Hoef je alleen maar ergens een vinkje voor te zetten in de app als ik me goed herinner.

[ Voor 6% gewijzigd door Rukapul op 03-11-2019 18:29 ]


Acties:
  • 0 Henk 'm!

  • johnkeates
  • Registratie: Februari 2008
  • Laatst online: 04-07 16:30
Hangt er van af wat er gebruikt wordt en hoe het gebruikt wordt zoals al gepost is. Als je er achter kan komen welke checks er zijn kan je daarna gewon een random card cloner gebruiken.

Acties:
  • 0 Henk 'm!

  • GLeenders
  • Registratie: September 2017
  • Laatst online: 03-09 16:44
Lennyz schreef op zaterdag 2 november 2019 @ 21:13:
Gebruik je deze library? Hiermee kan je namelijk simpel de UID wijzigen van die NFC kaarten van Aliexpress.

https://github.com/miguelbalboa/rfid
Yes, deze library gebruikt ik.
Rukapul schreef op zondag 3 november 2019 @ 18:28:
De mifare classic tool app en een paar mifare compatible kaarten die je block 0 laten schrijven is alles wat je nodig hebt. Hoef je alleen maar ergens een vinkje voor te zetten in de app als ik me goed herinner.
Hier heb ik het ook mee geprobeerd.

Zowel via de Arduino als in de app krijg ik een write error/connection error als ik de ingebouwde functies voor het veranderen of clonen van het UID gebruik. De data, keys en ACs van de andere sectoren kan ik wel gewoon aanpassen. Het lijkt er op dat ik Chinese tags gekocht heb waar het UID niet van te veranderen is.
amauer schreef op zondag 3 november 2019 @ 18:21:
Je hebt op AliExpress Chinese clone mifare classic cards waarbij je met je telefoon block 0 kan overschrijven. Vaak staat er bij de omschrijving dan iets van NFC of android. Bij de kaarten zonder vermelding nfc kun je block 0 alleen overschrijven met een speciaal commando.

€ 2,04 36%OFF | 5 stks/partij CUID Android App MCT Wijzigen UID Verwisselbare NFC 1 k s50 13.56 MHz keyfob Blok 0 Beschrijfbare 14443A
https://s.click.aliexpress.com/e/pQCoaIGz5
Ik heb een aantal van deze NFC besteld, hopelijk kan ik van deze tags wel het UID veranderen. Aangezien jij hier goede ervaring mee hebt denk ik wel dat het gaat lukken. Ook staat er in de description een key wat een goed teken is.
amauer schreef op zondag 3 november 2019 @ 18:21:
De lockers waar je hebt over hebt zijn waarschijnlijk vecos lockers? Die slaan alleen de uid van de kaart op.
Niet van Vecos maar van Mauer, de link naar de lockers staat in de eerst post. Ik heb geprobeerd om de lockers te sluite/openen met twee tags die identiek zijn op het UID na, dit werkte niet. Deze lockers slaan dus ook alleen het UID op.
Pagina: 1