Pentesting RFID

Reading time: 8 minutes

tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks

Introduction

Radio Frequency Identification (RFID) is die mees gewilde kortafstand radio-oplossing. Dit word gewoonlik gebruik om inligting te stoor en oor te dra wat 'n entiteit identifiseer.

'n RFID-etiket kan staatmaak op sy eie kragbron (aktief), soos 'n ingebedde battery, of sy krag ontvang van die leesantenna deur die huidige geĆÆnduseer deur die ontvangde radiogolwe (passief).

Classes

EPCglobal verdeel RFID-etikette in ses kategorieƫ. 'n Etiket in elke kategorie het al die vermoƫns wat in die vorige kategorie gelys is, wat dit agterwaarts versoenbaar maak.

  • Klas 0 etikette is passiewe etikette wat in UHF bande werk. Die verskaffer programmeer hulle vooraf by die produksiefabriek. As gevolg hiervan, kan jy nie verander die inligting wat in hul geheue gestoor is nie.
  • Klas 1 etikette kan ook in HF bande werk. Daarbenewens kan hulle slegs een keer geskryf word na produksie. Baie Klas 1 etikette kan ook sikliese redundanskontroles (CRC's) van die opdragte wat hulle ontvang, verwerk. CRC's is 'n paar ekstra bytes aan die einde van die opdragte vir foutdetectie.
  • Klas 2 etikette kan meermale geskryf word.
  • Klas 3 etikette kan ingebedde sensors bevat wat omgewingsparameters kan opneem, soos die huidige temperatuur of die beweging van die etiket. Hierdie etikette is semi-passief, omdat hulle 'n ingebedde kragbron het, soos 'n geĆÆntegreerde batterij, maar hulle kan nie inisieer draadlose kommunikasie met ander etikette of lesers nie.
  • Klas 4 etikette kan kommunikasie inisieer met ander etikette van dieselfde klas, wat hulle aktiewe etikette maak.
  • Klas 5 etikette kan krag aan ander etikette verskaf en kommunikeer met al die vorige etiket klasse. Klas 5 etikette kan as RFID-lesers optree.

Information Stored in RFID Tags

'n RFID-etiket se geheue stoor gewoonlik vier soorte data: die identifikasiedata, wat die entiteit identifiseer waaraan die etiket geheg is (hierdie data sluit gebruiker-gedefinieerde velde in, soos bankrekeninge); die aanvullende data, wat verdere besonderhede oor die entiteit verskaf; die kontroldata, wat gebruik word vir die etiket se interne konfigurasie; en die etiket se fabrikantdata, wat 'n etiket se Unieke Identifiseerder (UID) en besonderhede oor die etiket se produksie, tipe, en verskaffer bevat. Jy sal die eerste twee soorte data in al die kommersiƫle etikette vind; die laaste twee kan verskil op grond van die etiket se verskaffer.

Die ISO-standaard spesifiseer die Toepassing Familie Identifiseerder (AFI) waarde, 'n kode wat die soort objek wat die etiket behoort, aandui. 'n Ander belangrike register, wat ook deur ISO gespesifiseer is, is die Data Stoor Formaat Identifiseerder (DSFID), wat die logiese organisasie van die gebruikersdata definieer.

Meeste RFID veiligheidsbeheer het meganismes wat die lees of skryf operasies op elke gebruikers geheueblok en op die spesiale registers wat die AFI en DSFID waardes bevat, beperk. Hierdie sluit meganismes gebruik data wat in die kontrole geheue gestoor is en het standaard wagwoorde wat deur die verskaffer vooraf geconfigureer is, maar laat die etiket eienaars toe om aangepaste wagwoorde te konfigureer.

Low & High frequency tags comparison

Low-Frequency RFID Tags (125kHz)

Lae-frekwensie etikette word dikwels gebruik in stelsels wat nie hoƫ veiligheid vereis nie: gebou toegang, interkom sleutels, gimnasium lidmaatskap kaarte, ens. Vanweƫ hul hoƫr reeks, is dit gerieflik om te gebruik vir betaalde motorparkering: die bestuurder hoef nie die kaart naby die leser te bring nie, aangesien dit van 'n groter afstand geaktiveer word. Terselfdertyd is lae-frekwensie etikette baie primitief, hulle het 'n lae data-oordragspoed. Om daardie rede is dit onmoontlik om komplekse twee-rigting data-oordrag te implementeer vir dinge soos om balans te hou en kriptografie. Lae-frekwensie etikette stuur slegs hul kort ID oor sonder enige vorm van outentisering.

Hierdie toestelle staatmaak op passiewe RFID tegnologie en werk in 'n reeks van 30 kHz tot 300 kHz, alhoewel dit meer gebruiklik is om 125 kHz tot 134 kHz te gebruik:

  • Langafstand ā€” laer frekwensie vertaal na hoĆ«r reeks. Daar is 'n paar EM-Marin en HID lesers, wat van 'n afstand van tot 'n meter werk. Hierdie word dikwels in motorparkering gebruik.
  • Primitiewe protokol ā€” as gevolg van die lae data-oordragspoed kan hierdie etikette slegs hul kort ID oordra. In die meeste gevalle is data nie geoutentiseer nie en dit is nie op enige manier beskerm nie. Sodra die kaart binne die reeks van die leser is, begin dit net om sy ID oor te dra.
  • Lae veiligheid ā€” Hierdie kaarte kan maklik gekopieer word, of selfs van iemand anders se sak gelees word as gevolg van die protokol se primitiewe aard.

PopulĆŖre 125 kHz protokolle:

  • EM-Marin ā€” EM4100, EM4102. Die mees gewilde protokol in CIS. Kan van ongeveer 'n meter gelees word vanweĆ« sy eenvoud en stabiliteit.
  • HID Prox II ā€” lae-frekwensie protokol wat deur HID Global bekendgestel is. Hierdie protokol is meer gewild in die westerse lande. Dit is meer kompleks en die kaarte en lesers vir hierdie protokol is relatief duur.
  • Indala ā€” baie ou lae-frekwensie protokol wat deur Motorola bekendgestel is, en later deur HID verkry is. Jy is minder geneig om dit in die natuur te teĆ«kom in vergelyking met die vorige twee omdat dit uit gebruik val.

In werklikheid is daar baie meer lae-frekwensie protokolle. Maar hulle gebruik almal dieselfde modulering op die fisiese laag en kan beskou word, op een of ander manier, as 'n variasie van diegene wat hierbo gelys is.

Attack

Jy kan hierdie etikette aanval met die Flipper Zero:

FZ - 125kHz RFID

High-Frequency RFID Tags (13.56 MHz)

Hoƫ-frekwensie etikette word gebruik vir 'n meer komplekse leser-etiket interaksie wanneer jy kriptografie, 'n groot twee-rigting data-oordrag, outentisering, ens. benodig.
Dit word gewoonlik in bankkaarte, openbare vervoer, en ander veilige toegangspasse aangetref.

Hoƫ-frekwensie 13.56 MHz etikette is 'n stel standaarde en protokolle. Hulle word gewoonlik verwys na as NFC, maar dit is nie altyd korrek nie. Die basiese protokolstel wat op die fisiese en logiese vlakke gebruik word, is ISO 14443. Hoƫ-vlak protokolle, sowel as alternatiewe standaarde (soos ISO 19092), is daarop gebaseer. Baie mense verwys na hierdie tegnologie as Near Field Communication (NFC), 'n term vir toestelle wat oor die 13.56 MHz frekwensie werk.

Om dit eenvoudig te stel, werk NFC se argitektuur soos volg: die oordragprotokol word gekies deur die maatskappy wat die kaarte maak en geĆÆmplementeer op grond van die lae-vlak ISO 14443. Byvoorbeeld, NXP het sy eie hoĆ«-vlak oordragprotokol genaamd Mifare uitgevind. Maar op die laer vlak is Mifare kaarte gebaseer op die ISO 14443-A standaard.

Flipper kan met beide die lae-vlak ISO 14443 protokol, sowel as Mifare Ultralight data-oordragprotokol en EMV wat in bankkaarte gebruik word, interaksie hĆŖ. Ons werk aan die toevoeging van ondersteuning vir Mifare Classic en NFC NDEF. 'n Deeglike kyk na die protokolle en standaarde wat NFC saamstel, is die moeite werd om 'n aparte artikel te wees wat ons van plan is om later op te laai.

Alle hoƫ-frekwensie kaarte gebaseer op die ISO 14443-A standaard het 'n unieke chip ID. Dit dien as die kaart se serienommer, soos 'n netwerkkaart se MAC adres. Gewoonlik is die UID 4 of 7 bytes lank, maar kan selde tot 10 gaan. UIDs is nie 'n geheim nie en hulle is maklik leesbaar, soms selfs op die kaart self gedruk.

Daar is baie toegangbeheer stelsels wat op UID staatmaak om te outentiseer en toegang te verleen. Soms gebeur dit selfs wanneer RFID etikette kripto-grafie ondersteun. So 'n misbruik bring hulle terug na die vlak van die dom 125 kHz kaarte in terme van veiligheid. Virtuele kaarte (soos Apple Pay) gebruik 'n dinamiese UID sodat telefooneienaars nie deure met hul betalingsapp kan oopmaak nie.

  • Lae reeks ā€” hoĆ«-frekwensie kaarte is spesifiek ontwerp sodat hulle naby die leser geplaas moet word. Dit help ook om die kaart te beskerm teen ongeoorloofde interaksies. Die maksimum leesreeks wat ons kon bereik was ongeveer 15 cm, en dit was met op maat gemaakte hoĆ«-reeks lesers.
  • Gevorderde protokolle ā€” data-oordragspoed tot 424 kbps laat komplekse protokolle met volwaardige twee-rigting data-oordrag toe. Wat op sy beurt kripto-grafie, data-oordrag, ens. toelaat.
  • HoĆ« veiligheid ā€” hoĆ«-frekwensie kontaklose kaarte is op geen manier minderwaardig aan slim kaarte nie. Daar is kaarte wat kriptografies sterk algoritmes soos AES ondersteun en onreĆ«lmatige kriptografie implementeer.

Attack

Jy kan hierdie etikette aanval met die Flipper Zero:

FZ - NFC

Of met die proxmark:

Proxmark 3

References

tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks