MIFARE je obchodní značka pro rodinu bezkontaktních čipových karet . Ochranná známka kombinuje několik typů čipů smartcard, čtecích čipů a produktů na nich založených. Ochrannou známku vlastní společnost NXP Semiconductors .
Je považována za nejrozšířenější značku bezkontaktních čipových karet na světě s více než 10 miliardami čipových karet a 150 miliony prodaných čteček .
Všechny produkty MIFARE jsou založeny na standardu bezkontaktních čipových karet ISO 14443 Typ A 13,56 MHz . Určeno především pro osobní identifikační a mikroplatební systémy [2] . Vyznačují se nízkým dosahem čtení, do 10 cm [3] .
V současné době se vyrábí chytré vstupenky a čipové karty následujících standardů: [4]
Některé další typy karet byly buď ukončeny (MIFARE DESFire), nebo nebyly vyvinuty nad rámec pilotního projektu (MIFARE PRO, MIFARE PROX, MIFARE Lite).
Řada produktů je také vyráběna pod jinými ochrannými známkami, tak či onak souvisejícími s technologiemi MIFARE:
Rodina MIFARE Classic se skládá z karet MIFARE Classic 1K, MIFARE Classic 4K, MIFARE Classic EV1 1K, MIFARE Classic EV1 4K, MIFARE ID a MIFARE Mini. MIFARE Classic 1K byl historicky první.
Karty MIFARE Classic nabízejí doplněk k ISO 14443A-3 s kryptografickou ochranou dat. Obsahuje 4bajtový nebo 7bajtový neměnný jedinečný kód karty a 1 nebo 4 KB uživatelských a konfiguračních dat karty. MIFARE ID a MIFARE Mini jsou MIFARE Classic oříznuty na jeden a pět sektorů (kapacita 64 a 320 bajtů včetně technologických bloků).
MIFARE Classic EV1 1K a 4K - totéž jako MIFARE Classic, ale se 7bajtovým UID. Kromě rozdílů v postupech ISO14443 mají Anticollision a Select rozdíly v postupu autorizace. Přidán jeden příkaz, aby bylo možné mapu přepnout do klasického režimu s UID 4 bajty.
Rodina Mifare Plus je evolucí Mifare Classic využívající standardní kryptografii AES . Mifare Plus má režim kompatibility Mifare Classic. Vyrábějí se 4 typy tagů, které se liší velikostí paměti (2 nebo 4 KB), délkou unikátního kódu (4 nebo 7 bajtů) a sadou příkazů.
K ochraně dat používají tyto typy karet licencovaný proprietární kryptoalgoritmus Crypto-1 .
Specifikace Mifare Classic [5]MIFARE Ultralight jsou nejjednodušší karty v rodině. Ve skutečnosti je standard MIFARE Ultralight zmenšenou velikostí paměti (až 64 bajtů) MIFARE Classic, bez kryptografické ochrany. Karty obsahují 7bajtový neměnný jedinečný identifikátor karty (UID) a 64 bajtů uživatelských a konfiguračních dat.
MIFARE Ultralight C je evolucí MIFARE Ultralight využívající standardní 3DES kryptografii a zvýšenou kapacitu paměti (192 bajtů).
Vývoj produktu MIFARE DESFire. Nejsložitější a nejdražší karty rodiny. Plně vyhovuje ISO 14443A . Nabízí souborový systém chráněný šifrováním (3DES, AES) s vysoce přizpůsobitelnými podmínkami přístupu. Karty založené na MIFARE DESFire EV1 se používají k placení dopravy ve více než 60 městech (včetně San Francisca, Miami, Londýna, Dubaje), v několika zemích (Nový Zéland, Finsko) jsou národním standardem. Karty založené na MIFARE DESFire EV1 jsou také široce používány pro vysoce zabezpečené systémy kontroly přístupu: mezi nejznámější případy použití patří systémy kontroly přístupu pro společnosti BASF, Daimler Benz, Nestlé a organizace jako NASA a Evropská komise.
Značkové karty SmartMX, SmartMX2 a Smart eID nejsou formálně MIFARE, ale mají režim emulace karet MIFARE Classic, MIFARE Plus a MIFARE DESFire (poslední 2 jsou pouze ve SmartMX2). Plně splňují normu ISO 14443A . Jsou to plnohodnotné čipové karty s integrovaným mikroprocesorem ( jádro Intel 8051 ), kryptoprocesorem, velkou programovou pamětí (až 256 KB) a daty (až 144 KB EEPROM). Mají všechny potřebné certifikáty a jsou navrženy pro práci v systémech státní a bankovní osobní identifikace.
V současné době NXP vyrábí řadu čipů [6] potřebných k sestavení čteček karet MIFARE. Různé kombinace podporují ISO 14443A , ISO 14443B , ISO 15693 . Čipy také obsahují bezpečnostní přístupový modul.
Vyrábí se řada mikroobvodů pro komunikaci v blízkém poli PN532, PN533 [6] . Tyto čipy mohou číst a emulovat karty Mifare.
Společnost NXP Semiconductors vyvinula vestavěné kryptografické moduly Mifare SAM [7] (Secure Access Module) s integrovanou podporou šifrovacích algoritmů Crypto-1, 3DES , AES , PKI , RSA , CMAC . Tyto moduly jsou umístěny jako bezpečné certifikované kryptoprocesory pro systémy se zvýšenou bezpečností.
Hlavní myšlenkou integrace většiny kryptoalgoritmů do jednoho modulu je, že fyzické zabezpečení univerzálních mikrokontrolérů ve čtečkách je mnohem nižší než zabezpečení všech ostatních systémových komponent (kryptoalgoritmy a fyzické zabezpečení tagů). Pro vyrovnání situace se navrhuje použít jako kryptografický koprocesor ve čtečce specializovaný procesor Mifare SAM. Samozřejmě to platí pouze pro 3DES a AES. Podpora Crypto-1 v Mifare SAM je potřeba hlavně pro jednotnost používání karet. Použití Mifare SAM jako kryptografického koprocesoru tedy podle vývojářů umožňuje dosáhnout nejvyšší možné úrovně zabezpečení dat bez ohledu na typ hlavního procesoru čtečky a umožňuje podporovat karty většiny standardů. .
Bezpečnostní organizace a nezávislí výzkumníci objevili řadu zranitelností v široce používaných bezkontaktních kartách standardů Mifare Classic, Mifare DESFire a Mifare Ultralight, které ohrožují fungování mnoha systémů pro přístup, platby a ukládání důvěrných dat, které tyto standardy používají.
Karty Mifare Classic používají proprietární licencovaný krypto algoritmus Crypto-1 . Zpočátku byla síla algoritmu založena na jeho utajení . Algoritmus nebyl zveřejněn, mohl být použit pouze jako součást čipů Philips (později NXP Semiconductors ). Nízká kryptografická síla algoritmu a popularita technologie však vedly k tomu, že dnes algoritmus není tajemstvím a je relativně snadno prolomitelný [8] .
Ale v reálných systémech není veškeré zabezpečení založeno na hardwarovém šifrování karty. Jako další bezpečnostní faktor lze použít například časová razítka . Nicméně i systémy, jejichž zabezpečení není zcela závislé na algoritmu Crypto-1 (nebo jej dokonce vůbec nepoužívá, jako Mifare Ultralight), mohou být hacknuty kvůli hardwarovým vlastnostem karet [9] .
Všechny moderní čtecí čipy NXP Semiconductors Mifare mohou pracovat s Crypto-1. Ne každý však má možnost ukládat klíče bezpečně a trvale. V čipech MFRC52x a NFC se klíče načítají před každou transakcí přes nezabezpečené rozhraní. Pro srovnání, v jiných mikroobvodech je klíč zapsán jednou trvale a nelze jej zvenku přečíst.
V prosinci 2007 na Chaos Communication Congress výzkumníci Karsten Nohl a Sean O'Neil demonstrovali výsledky částečného reverzního inženýrství algoritmu použitého v Mifare Classic. Článek [10] popisující proces reverzního inženýrství byl prezentován na konferenci USENIX a publikován v dubnu 2008.
V roce 2008 zveřejnila výzkumná skupina na holandské univerzitě v Radbau 3 články týkající se hackování karet Mifare Classic.
Je pozoruhodné, že výrobce karet Mifare, NXP , se v roce 2008 pokusil u soudu zastavit publikování článků o hackování Mifare Classic. Soud zamítl žádost o zákaz zveřejnění článku o hackování Mifare Classic s odůvodněním, že „V demokratické společnosti má zveřejňování výzkumu v oblasti informační bezpečnosti obrovskou váhu, protože informuje veřejnost o závažných nedostatcích stávající technologie a vyhýbá se velkým rizikům“ [11] [12] .
Poté bylo publikováno mnoho článků na témata bezpečnostního výzkumu a hackování karet Mifare Classic. V důsledku těchto studií výrazně poklesl výpočetní výkon potřebný k hacknutí Mifare Classic. Pokud tedy v roce 2008 hackování Crypto-1 vyžadovalo na standardním notebooku asi 200 sekund [13] , v roce 2009 trvalo zjištění tajného klíče asi 40 ms [14] . Byly vyvinuty varianty útoku, které nevyžadují platnou čtečku [15] . To umožnilo provést útok ze smartphonu, bez použití specializovaného vybavení [16] .
V listopadu 2010 zveřejnila skupina bezpečnostních výzkumníků z Ruhrské univerzity článek podrobně popisující útok na karty Mifare DESFire [17] .
Úspěšný útok na systém pomocí karet Mifare Ultralight byl poprvé demonstrován společností Interpidus Group v září 2012 na konferenci EUSecWest Applied Security Conference konané v Amsterdamu.
Nejvíce ohroženým standardem karet Mifare je Mifare Classic. Od roku 2008 bylo navrženo mnoho způsobů, jak tento typ karty hacknout. Většina z nich je založena na zranitelnosti interního PRNG karty . Rysy jeho práce se ukázaly po částečném reverzním inženýrství čipu karty. Bylo zjištěno, že generátor pseudonáhodných čísel mapy je 48bitový zpětnovazební posuvný registr. To znamená, že pseudonáhodná sekvence je jednoznačně určena dobou běhu generátoru. Během procesu autentizace karta odešle do čtečky odpověď ( Nt ), jejíž hodnota nepřímo souvisí se stavem generátoru pseudonáhodných čísel. Tato skutečnost umožňuje zjistit dvě za sebou generovaná čísla, takže při znalosti zařízení generátoru pseudonáhodných čísel karty určíme další číslo v pořadí. Algoritmus útoku (nazývaný Nested attack) tedy předpokládá znalost klíče k alespoň jednomu ze sektorů mapy a vypadá takto [18] :
Ale i bez použití zranitelností generátoru pseudonáhodných čísel je možné vyčíslit klíče na FPGA asi za 10 hodin na klíč [18] .
Nadšenci vyvinuli open-source sadu softwaru nfc-tools [19] pro práci s bezkontaktními kartami. Balíček nfc-tools obsahuje samostatnou knihovnu libfreefare [20] navrženou pro práci se standardními kartami Mifare a také nástroj, který implementuje výše uvedený útok na Mifare Classic: mfoc [21] .
Útok na Mifare DESFire, který používá blokovou šifru Triple DES , se stal možným po reverzním inženýrství čipu MF3ICD40. Na základě analýzy energie spotřebované čipem karty a také struktury čipu pod mikroskopem byli vědci schopni určit šifrovací klíče. Při použití vybavení v ceně asi 3 000 $ lze útok dokončit za 7 hodin [17] .
Karty Mifare Ultralight se používají především jako jízdenky na MHD. Existují 2 hlavní typy útoků na systémy využívající Mifare Ultralight.
Lock Attack – útok, který využívá schopnost změnit bity zámku mapy. Dopravní karty zpravidla ukládají několik jízdenek. Změnou zámků lze v některých případech znemožnit přepsání jízdenky turniketem při zachování přístupu k dopravnímu systému. Ve výsledku – „věčná“ jednorázová jízdenka [9] .
Time Attack - Man in The Middle Útok, který zachytí data o době záznamu platné karty prostředníkem a poté kartu emuluje. Většina dopravních systémů využívajících Mifare Ultralight považuje lístek za platný po určitou dobu po aktivaci, takže tento přístup umožňuje obejít přístupový systém bez vyřešení problému s dešifrováním časových údajů. V některých případech lze útok provést jak pomocí specializovaného vybavení, tak pomocí chytrého telefonu [22] [9] .
Existují open source implementace útoků na Mifare Ultralight [23] .
V Rusku se realizují desítky veřejných i soukromých projektů založených na využití MIFARE. Kartu MIFARE používá každý den téměř každý obyvatel největších měst v Rusku.
Nejrozšířenějším využitím je platba za přepravní služby. Metropolitní a pozemní doprava zpravidla používá standardy Classic 1k a Ultralight, karta Troika používá formát Mifare Plus. Nové typy mezinárodních pasů a některá víza využívají technologii SmartMX.