Lect. dr. Andrei -George OPRINA Absolvent Ciprian -Ionuț MIRON București 2017 1 UNIVERSITATEA POLITEHNICĂ DIN BUCUREȘTI FACULTATEA DE ȘTIIN ȚE… [618402]

UNIVERSITATEA POLITEHNICĂ DIN BUCUREȘTI
FACULTATEA DE ȘTIIN ȚE APLICATE

LUCRARE DE DISERTAȚIE

Coordonator Stiințific
Lect. dr. Andrei -George OPRINA Absolvent: [anonimizat]
2017

1
UNIVERSITATEA POLITEHNICĂ DIN BUCUREȘTI
FACULTATEA DE ȘTIIN ȚE APLICATE
TEORIA CODĂRII ȘI STOCĂRII INFORMAȚIEI

Atac asupra unui sistem contactless

Coordonator Stiințific
Lect. dr. Andrei -George OPRINA Absolvent: [anonimizat]
2017

2
Cuprins

Atac asupra unui sistem “contactless” MIFARE …………………………………….… 3
1. Prezentare generală a tehnologiei MIFARE ………………………………………… 3
2. Mecanismele de criptare pentru tehnoologiile MIFARE ………………………..….. 7
3. Aspectul legislativ ……………………………………………………………………… 17
4. Prezentarea sistemului (ORBITA) MIFARE …………………………….………….. 19
5. Uneltele necesare compromiterii sistemului (ORBITA) MIFARE …………..…….. 21
6. Interceptarea canalului de comunicații ………………………………………………. 24
7. Scenarii de compromitere a sistemului (ORBITA) MIFARE ………………….…… 27
8. Concluzii privind securizarea sistemelor “contactless” ………………………….…. 33
Bibliografie ……………………………………………………………….…….………… 35

3
Atac asupra unui sistem “contactless” MIFARE

1. Prezentare generală a tehnologiei MIFARE

Tehnologia MIFARE folosește smart carduri fără contact care comunică cu cititoare ,
folosind frecvența standard de 13,56 MHz. Această tehnologie este la origine un sistem RFID
Radio Frequency Identification (identificare prin radio frecven ță). Transferul de energie către
card se realizează cu ajutorul unui câmp magnetic generat de un cititor/ inscriptor, acesta
transmițând în sens invers date (figura 1.1).

Figura 1.1 – Transferul de date ș i energie cu ajutorul câmpului magnetic

În figura 1.2 avem schema bloc a unui sistem (contactless ) RFID. Observăm că cititorul
alimentat de tensiunea electromotoare, generează un cîmp magnetic care produce , inductiv , o
diferență de potențial la terminal ele bobinei cardului/ tagului, alimentând microcipul.
Microcipul este un emițător care modulează digital (FSK Frequency -Shift Keying) o frecvență
purtătoare (125Khz, 13,56MHz sau 3,5 GHz), folosind ca antenă de emisie bobina cu ajutorul

4 căreia se alimentea ză (mai exact un circuit LC bobină/ condnsator paralel, acordat pe frecvența
purtătoare).

Figura 1.2 – Schema bloc RFID

În figura 1.3, care reprezintă o secțiune longitudin ală printr -un card MIFARE , se observă
cum este realizat fizic un card RFID – se disting bobina și microcipu l:

5

Figura 1.3 – Secțiune longitudinală printr -un card MIFARE

Numele MIFARE vine de la MI kron (firma MIKRON care a dezvoltat acest sistem în
prima fază) și FARE, care se traduce prin colectare (colectare de taxe).

Există șapte tipuri diferite de carduri fără contact care folosesc această tehnologie:

a) MIFARE Clasic – este doar un dispozitiv de stocare în care memoria este impărțită în
segmente și blocuri cu mecanisme de securitate simple. Acest card poate fi comparat (ca
simplitate) cu codurile de bare de pe etichetele de prețuri, care sunt citite prin reflexia luminii.
Datorită fiabilității și costurilor reduse, sunt utilizate pe scară largă ca portofel electronic,
control acces, cărți de identitate, transport, bilete electronice pentru spectacol. MIFARE classic
1K folosește 1024 biți de stocare a datel or împărțiți în 16 sectoare, fiecare sector fiind protejat
de două chei diferite. Mifare classic 4K dispune 4096 biți împărțiți în patruzeci de sectoare.
MIFARE Clasic mini are 320 biți impărțiți în 5 sectoare. Pentru fiecare dintre aceste tipuri de
cardur i, 16 bytes din fiecare sector, sunt rezervați pentru cheile și condițiile de acces și nu pot fi
folosite pentru datele utilizatorului. Acești 16 octeți conțin numărul de serie al cardului și alte
date de producator și pot fi numai citiți. Capacitatea netă de stocare a acestor carduri este de de
până la 752 biți pentru MIFARE Clasic 1K, 3440 biți pentru MIFARE Clasic 4 K și 224 biți
pentru MIFARE Clasic mini.

6 b) MIFARE ultralight dispune de 512 biti de memorie (64 bytes) fără securitate criptografică.
Memo ria este grupată în 16 sectoare de câte 4 bytes. Pentru a fi securizate acestea sunt
programate o singură dată, având funcția de rescriere blocată. Acestea sunt utilizate ca tichete de
unică folosință în transportul comun și acces pe stadioane.

c) MIFARE ultralight EV1 este varianta îmbunătățită a celui de mai sus având memorie de
1024 biți, acces la date protejate prin parolă encriptată pe 32 biți. Sunt utilizate în control acces,
permise de bibliotecă etc.

d) MIFARE ultralight C este reprezentată de sta ndardul ISO/IEC 14443. Are o memorie
EPROM de 1536 biți (192 bytes), acces la date partajate prin autentificare triplă, număr de serie
unic. Sunt utilizate pentru control acces, documente de indentitate etc.

e) MIFARE DESfire are caracteristici de securit ate mai bune decât MIFARE Clasic, memorie
mai mare, având un micrprocesor folosind standardele de criptare DES (Data Encryption
Standard) și Triple DES . Este utilizat în control acces, microplăți etc.

f) MIFARE DESfire EV1 conține support pentru ID aleator, beneficiind de standardul de
criptare AES (Advanced Encryption Standard) pe 128 bytes și de sistem de operare COMMON
CRITERIA. E folosit în control acces de securitate ridicată, micro plăți etc.

g) MIFARE DESfire EV2 e super ior celui anterior prin faptul că oferă spațiu suplimentar de
stocare pentru noi aplicații , fără a fi necesară partajarea cheilor de criptare. E utilizat în control
acces, plăți – carduri bancare etc. La fel ca MIFARE DESfire EV1 și acesta folosește ca
standard de criptare AES pe 128 de bytes.

7 2. Mecanismele de criptare pentru tehnoologiile MIFARE

MIFARE Clasic (1K și 4K) , MIFARE Ultralight , MIFARE ultralight EV1 și
MIFARE ultralight C folosesc ca algoritm de criptare CRYPTO1 , care are reprezentarea
grafică în figura 2.1 .

Figura 2.1 – Reprezentarea grafică a sistemului CRYPTO1

Crypto -1, ca cifru constă dintr -un registru de deplasare liniară de feedback (LFSR) și o func ție
de filtru, f. În timpul ini țializării, cheia secretă de 48 bi ți este încărcată în registrul de deplasare
și șirul de caractere (ID XOR R) este deplasat înapoi în registru. În cazul în care ID -ul este
identificatorul cardului, R (răspunsul) este un număr aleatoriu ales de etichetă. R este
de asemenea trimis la citito r ca un prim apel într -un protocol de apel-răspuns în care cardul și
cititorul dovedesc cunoa șterea cheii secrete.

8

Figura 2.2 – schema funcționării cifrului Crypto1

Inima cifrului Crypto1, fiind alcătuită din 48 biți de feedback, un poten țial atacator,
pentru a găsi biții cheii, ar trimite provocări pentru cititor și ar analiza primul bit al fluxului cheii
trimis înapoi la cititor. Astfel , numărul de provocari necesare pentru a recupera biții este relativ
mic. Un calculator puternic rezolvă problema în căteva minute.

Mifare 1K dispune de o memorie EEPROM de 1024 x 8 bi ți organizate în 16 sectoare
de 4 blocuri fiecare. Sectoarele încep de la 0 și merg până la 15. Se poate vedea o reprezentare
grafică în tabelul: 2.3.

Numărul By te din Bloc
sector bloc 0 1 2 3 4 5
6 7 8 9 9
10 11 12 13 14 15
Descriere
15 3
2
1
0 Cheia A Biții de acces Cheia B Sector Trailer 15
Date
Date
Date
14 3
2
1
Cheia A
Biții de acces Cheia B Sector Trailer 14
Date
Date
Date
:
:
:
: :
:
:
: :
:
:
:

9 1 3
2
1
0 Cheia A Biții de acces Cheia B Sector Trailer 1
Date
Date
Date
0 3
2
1 Cheia A Biții de acces Cheia B Sector Trailer 0
Date
Date
0 Date de produc ător Bloc de
produc ător

Tabelul 2.3 – Dispunerea memoriei și a cheilor de acces pentru Mifare1k

Din imaginea de mai sus putem vedea că blocul 4 al fiecă rui sector este rezervat pentru Sectorul
Trailer și primul bloc al sectorului 0 este blocul de producător. Blocul de producător, con ține
identificatorul unic (UID), al 4 -lea octet este un LRC cu un XOR (operație matematică, sau –
exclusiv) de rulare, iar restul sunt datele furnizate de producător. Acest bloc este protejat
la scriere, din fabrica ție. Sectorul Trailer con ține: octe ții și cheile secrete A și B, de control
al accesului, care dictează ce fel de opera țiuni de memorie sunt permise pe un anumi t sector
(citit sau scris). În cazul în care cheia B nu este necesară, ultimii 6 -octeți ai Sectorului Traler pot
fi utilizați ca date. Implicit pe cardurile goale sunt livrate cu toate cheile setate la 0xffffffffffff.

Biții de control al accesului:
Octe ții de control al accesului sunt cei care „calculează“ condi țiile de acces. Cum
spuneam fiecare sector este compus din 4 blocuri. Primele 3 blocuri sunt utilizate pentru date și
ultimul bloc este sectorul trailer.
În figura 2. 4 se observă că b ytesii 6, 7, 8 sunt octe ți de control al accesului, iar b yteul 9
este un octet de uz general. Acești trei octe ți (6, 7 și 8) definesc drepturile de acces pentru toate
cele 4 blocuri din sector.

10

Figura 2. 4 – Dispunerea biților de control acces

Mifare 4K dispune de o memorie EEPROM de 4096 x 8 biți. Sectoarele încep de la 0 și
merg până la 39. Ca diferen ță, față de Mifar e1K, este memoria adăugată și modul în care aceasta
este structurată. Cum spuneam cardul Mifare 4K are 4096 x 8 bi ți de memorie EEPROM, care
este organizat în 32 de sectoare de 4 blocuri și are o suplimentare de 8 sectoare care con țin 16
blocuri fiecare. Se poate vedea o reprezentare grafică a aspectului memoriei Mifare 4k mai jos:

11 Numărul By te din Bloc
sector bloc 0 1 2 3 4 5
6 7 8 9
10 11 12 13 14 15
Descriere
39 15
14
13
:
:
2
1
0 Cheia A Biții de acces Cheia B SectorTrailer
39
Date
Date
:
:
Date
Date
Date
:
:
: :
:
:
32 15
14
13
:
:
2
1
0 Cheia A
Biții de acces Cheia B SectorTrailer
32
Date
Date
:
:
Date
Date
Date
31 3
2
1
0 Cheia A
Biții de acces Cheia B SectorTrailer
31
Date
Date
Date
:
:
: :
:
:
0 3
2
1 Cheia A Biții de acces Cheia B SectorTrailer 0
Date
Date
0 Date de produc ător Bloc de
produc ător

Tabelul 2.5 – Dispunerea memoriei și a cheilor de acces pentru Mifare4k

MIFARE DESfire, MIFARE DESfire EV1 și MIFARE DESfire EV2 folosesc ca
algoritmi de criptare DES (Data Encryption Standard sau Standard de Criptare Date) și Triple
DES (2K3DES/3K3DES) , având motor criptografic hardware AES (Advanced Encryption
Standard) pent ru securizarea datelor .
DES este un cifru bloc. În cadrul acestui cifru, mesajul de criptat este spart în blocuri de
lungimi egale, de 64 de biți. Pentru criptare blocurile de mesaj în clar sunt supuse la 16 reprize
de procesare. Pentru f iecare din cele 16 reprize, blocul de 64 de biți este împărțit in dou ă, astfel:
jumătate stânga/ jumătate dreapta, a câte 32 de biți fiecare. O subcheie de 48 de biți este
generat ă dintr -o cheie privată , aleasă inițial , pentru criptarea m esajului.

12 Jumătatea din dreapta a blocului este extinsă la 48 de biți prin duplicarea unora din digiții binari.
Procedura aceasta este combinată cu subcheia pentru acea repriză prin folosirea unei operațiuni
matematice cunoscută sub denumirea XOR, (sau -exclusiv) , care are următoarele propietăți:

0 XOR 0 = 0
0 XOR 1 = 1
1 XOR 0 = 1
1 XOR 1 = 0

Obținem astfel un număr format din 48 de biți, care este divizat apoi în blocuri de șase digiți
(binari). Fiecare dintre aceste 8 blocuri, (de 6 digiț i) este trecut printr -o operație numită S -box,
(substituție) pentru a fi redus la 4 biți. Fiecare dintre cele opt blocuri S -box diferă unul de
celălalt.
Exemplu : Dacă numărul de 6 biți de la intrare este 01101 1, atunci putem afla rezultatul din
blocul 5 S -box al tabelului 2. 6:

Biți de mijloc

0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1100 1011 1100 1101 1110 1111
00
01
10
11
Biți
exteriori
0010 1100 0100 0001 0111 1100 1011 0110 1000 0101 0011 1111 1101 0000 1110 1001
1110 1011 0010 1100 0100 0111 1101 0001 0101 0000 1111 1100 0011 1001 1000 0110
0100 0010 0001 1011 1100 1101 0111 1000 1111 1001 1100 0101 0110 0011 0000 1110
1011 1000 1100 0 111 0001 1110 0010 1101 0110 1111 0000 1001 1100 0100 0101 0011

Tabelul 2.6 – Rezultatul substituției S -box

Biții din mijloc ai numărului de intrare sunt 1101, așa că vom cerceta coloana respectivă
și ne vom uita de -a lungul r ândului unde bi ții exteriori sunt 01. Rezultatul este, 10011.
Astfel obținem cele opt blocuri de 4 digiți care sunt alăturate, pentru a obține un numă r lung de
32 de biți. Acest număr este apoi combinat cu jumătatea din stânga a originalului prin
operațiunea matematică sau -exclusiv (XOR). Jumătățile din stânga și dreapta ajung astfel să fie
schimbate într ele, după care trecem la următoarea repriză. La final se completează toate cele 16
reprize și numărul original este complet descompus. Făra a cunoaște cheia originală, decriptarea
mesajului est e practic imposibilă.

1 Buchmann, Johannes A. (2001). "5. DES". Introducere în criptografie . New York, : Springer. pag. 119 -120.

13 În anul 1998, ca răspuns la îngrijorarea privind înmulțirea tentativelor (unele reușite) de
spargere a sistemului de criptare DES, Institutul Național de Standarde și Tehnologie al SUA a
propus un nou standard intitulat Triple DES . Acest sistem folose ște DES de trei ori în
succesiune.
Triple DES funcționează în trei et ape: Encrypt -Decrypt -Encrypt (EDE). Acesta
acționează prin luarea de trei chei de 56 de bi ți (K1, K2 și K3) și criptarea în primul rând cu K1,
decriptarea cu K2 și în final criptarea cu K3.
Ca urmare, aceasta este o modalitate u șoară de a ob ține mai multă putere (relativ) de
criptare a unui nou cifru comparativ cu DES .
Tentativele de spargere DES se concentrează sub formă de atacuri prin forță brută.
Astfel conform schemei DES , cheia folosită la criptarea textului cifrat este de 56 de biți. Digiții
pot ave a valoarea zero sau unu, ceea ce înseamnă că sistemul DES are 256 sau
72057594037927936 de chei posibile. Este imposibilă verificarea manuală, a acestor chei, chiar
și folosind un calculator cu putere mare de procesare, ar dura foarte mult.

În 1997 prima provocare DES a fost spartă de o mașină virtuală, (o aplicație software
care utiliza puterea de procesare rămasă liberă a calculatoarelor din tot internetul) în 96 de zile.
În 1998 a fost construit un calculator numit ” DES Cracker ,, (cu costuri enorme) car e conținea
peste 1 .500 procesoare. Acest computer a spart DES în două zile.
Astfel de atacuri folosesc forța brută (încercarea tuturor cheilor posibile pînă lagăsirea
celei corecte). Au fost demonstrate și alte tehnici de spargere DES fără a folosi forța b rută, cum
ar fi Criptanaliza Diferențială, care au potențialu l de a sparge DES fără a verifica fiecare cheie.
Criptanaliza Diferențială funcționează prin analizarea unui număr foarte mare de texte în
clar și a textelor cifrate DES corespondente, cu ajutoru l unui calculator, pentru a descoperi
tipare statistice care să dezvăluie cheia inițială utilizată. Ca și în cazul atacurilor care folosesc
forța brută, avem in continuare un număr mare de mesaje, care trebuiesc analizate, spargerea
codului prin această me todă este departe de a fi ușoară.
În anul 2002 a fost lansată o variantă și mai puternică, denumită AES (Advanced
Encryption Standard). Este un algoritm de criptare simetric , dezvoltat de doi criptografi belgieni
Joan Daemen și Vincent Rijmen. AES are lung imea blocului de 128 biți și lungimea cheii de
128, 192 sau 256 biți.

14

Figura 2. 7 – schema standardului de critare AES

Algoritmul de criptare AES define ște o serie de transformări, care urmează să fie
efectuate pe datele stocate într -o matrice. Primul pas al cifrului este de a pune datele într -o
matrice, după care transformăr ile cifru se repetă pe un număr de runde de criptare. Numărul de
runde este determinat de lungimea cheii , astfel: 10 runde pentru chei de 128 bi ți, 12 runde
pentru chei 192 de bi ți și 14 runde pentru chei de 256 bi ți.
Prima transformare este substituirea datelor, utilizând un tabel de substitu ție; a doua
transformare mută rânduri din matrice; în a treia transformare sunt amestecate coloanele
matricei. Ultima transformare este o opera ție matematică, sau -exclusiv (XOR), efectuată pe
fiecare coloană, folosind o altă parte a cheii de criptare .
Unul din subiectele dezbătute în comunitatea specialiștilor în securitatea datelor, este câtă
siguranță prezintă cheile simetrice de 128 sau de 256 de biți utilizate pentru AES (Advanced
Encryption Standard) si cât sunt de protejate împotriva atacurilor care folosesc forța brută.

15 Pentru a putea descrie rezistența sistemelor criptografice, DES și AES , cu diferite
dimensiuni ale cheii de criptare , și numărul de combinații posibile în funcție de lungimea ș i
algoritmul cheii avem reprezentarea grafică in tabelul 2.8.

Lungimea Cheii Combinații Posibile
1-bit 2
2-biți 4
4-biți 16
8-biți 256
16-biți 65536
32-biți 4.2 x

56-biți (DES) 7.2 x

64-biți 1.8 x

128-biți (AES) 3.4 x

192-biți (AES) 6.2 x

256-biți (AES) 1.1 x

Tabelul 2. 8 – numărul de combinații posibile în funcție de lungimea
și algoritmul cheii de criptare

De cît timp este nevoie pentru a sparge o criptare AES , pe 256 de bi ți, folosind forța
brută? Răspunsul îl avem inclus în tabelul 2.8. Pentru spargerea unei chei simetrice de 256 de
biți, prin forță brută, necesită de 2128 ori mai multă putere de calcul decât pentu o cheie de 128
de biți.
Un supercalcula tor care ar putea verifica un milard de miliarde (1018) de chei posibile pe
secundă, ar avea nevoie de aproximativ 3.31 x 1056 ani pentru a epuiza toate combinațiile
posibile.

16 Lungimea Cheii Timpul necesar Spargerii
48-biți < 1 secund ă
56-biți 399 secunde
128-biți 1.02 x
ani
192-biți 1.872 x
ani
256-biți 3.31 x
ani

Tabelul 2.9 – timpul necesar spargerii unor chei simetrice in funcție lungimea lor

Cu alte cuvinte putem spune că încercarea de a compromite sistemul de cryptare AES
(Advanced Encryption Standard), folosind forța brută , este imposibilă (cu tennologia și
cunoștințele din prezent).
În altă ordine de idei, 70% din cardurile contactless folosesc tehnologia MIFARE
Clasic , cu spațiul alocat cheii de 48 de biți. Astfel unui atacator care ar exploata paritatea biților,
montând un atac folosind forța brută și ar dispune de un asemenea supercalculator i -ar trebui sub
o secundă să obțină cheia.

17 3. Aspectul legislativ

Sub aspectul legii, la nivelul majorită ții țărilor din Uniunea Europeană există un vid
legislativ în ceea ce prive ște infrac țiunile informatice, având în vedere posibilită țile reduse de
depistare și contracarare a acestora.
Prin adoptarea la nivelul României a noului Cod Penal actualizat ( Legea 286/ 2009 cu
completările din 2016) au fost acoperite, sub aspect legal, infrac țiunile informatice.
Iată câteva articole exemplicative:

Fraude comise prin sisteme informatice și mijloace de plată electronice

Art. 249 Frauda informatică
“Introducerea, modificarea sau ștergerea de date informatice, restricționarea accesului la aceste
date ori împiedicarea în orice mod a funcționării unui si stem informatic, în scopul de a obține un
beneficiu material pentru sine sau pentru altul, dacă s -a cauzat o pagubă unei persoane, se
pedepsește cu închisoarea de la 2 la 7 ani. ”

Art. 250 Efectuarea de operațiuni financiare în mod fraudulos
(1) “Efectuarea unei operațiuni de retragere de numerar, încărcare sau descărcare a unui
instrument de monedă electronică ori de transfer de fonduri, prin utilizarea, fără consimțământul
titularului, a unui instrument de plată electronică sau a datelor de ident ificare care permit
utilizarea acestuia, se pedepsește cu închisoarea de la 2 la 7 ani.

(2) Cu aceeași pedeapsă se sancționează efectuarea uneia dintre operațiunile prevăzute în
alin. (1), prin utilizarea neautorizată a oricăror date de identificare sau p rin utilizarea de date de
identificare fictive.

(3) Transmiterea neautorizată către altă persoană a oricăror date de identificare, în vederea
efectuării uneia dintre operațiunile prevăzute în alin. (1), se pedepsește cu închisoarea de la unu
la 5 ani. ”

Art. 251 Acceptarea operațiunilor financiare efectuate în mod fraudulos
(1) “Acceptarea unei operațiuni de retragere de numerar, încărcare sau descărcare a unui
instrument de monedă electronică ori de transfer de fonduri, cunoscând că este efectuată prin
folosirea unui instrument de plată electronică falsificat sau utilizat fără consimțământul
titularului său, se pedepsește cu închisoarea de la unu la 5 ani.

18 (2) Cu aceeași pedeapsă se sancționează acceptarea uneia dintre operațiunile prevăzute în
alin. (1) , cunoscând că este efectuată prin utilizarea neautorizată a oricăror date de identificare
sau prin utilizarea de date de identificare fictive. ”2

2 Codul Penal actualizat (Legea 286/2009 cu complet ările din 2016 )

19 4. Prezentarea sistemului (ORBITA) MIFARE

Firma ORBITA produce soluții de control acces, microplăți, contabilitate, seifuri
pentru industria hotelieră.
Scenariul avut în vedere este testarea securității sistemului de co ntrol acces și de
emitere carduri pentru clienții unui hotel care folosește soluția oferită de ORBITA (fig. 4.1).

Figura 4.1 – Schema bloc a sistemului ORBITA (Orbita Technology, www.orbitalock.com )

Am analizat funcționarea sistemului ORBITA și am constatat că acesta este dezvoltat pe
tehnologia MIFARE DESfire, softul este licențiat pentru platformele Windows XP si 7 (având
un serial unic), iar encoderul cu care se generează cardurile de acces es te autentificat unic pe

20 calculatorul instalat. Orice deconectare a acestuia de la calculator are ca efect invalidarea
cardurilor emise anterior, fiind necesară emiterea altor carduri de acces și resetarea tuturor
yalelor.
Yalele, seifurile și celelalte com ponente controlate de sistem , sunt programate folosind 6
carduri emise de către administratorul de sistem , astfel: card de autorizare, cardul de inițializare,
cardul clock, cardul de clădire, cardul de etaj și cardul dedicat dispozitivului (client).
Progra marea celor 6 carduri de sistem se realizează o singură dată, mai puțin cardul de clock
care se reprogramează de câte ori este nevoie pentru schimbarea de dată/ oră.
Administratorul de sistem are posibilitatea de a crea utilizatori și parole de acces pent ru
recepționerii care emit cardurile clienților la cazarea în hotel, carduri master (cu acces nelimitat
oriunde) și carduri pentru angajații cu sarcini dedicate (pe etaj, în anumite zone etc.). Mai există
un card de audit (tehnologie DESfire EV2 , cu memori e suplimenatră) care, trecut prin fața
cititoarelor de client înmagazinează ultimele 300 de accesări ale până la 500 de cititoare. Acest
card este folosit zilnic de administratorul de sistem pentru interogarea dispozitivelor stand -alone
(yale, seifuri, POS -uri), realizând astfel auditarea lor.

21 5. Uneltele necesare compromiterii sistemului (ORBITA) MIFARE

Am achiziționat online componentele pentru citirea și realizarea de carduri MIFARE în
valoare de maxim 35 dolari, a stfel: un encriptor hibrid (figura 5.1) având schema electronică a
părții RF prezentată în figura 5.2, un cititor MIFARE cu eprom (folosit pentru citirea cardurilor
de la distanță și memorarea informației conținută de acestea – figura 5.3) și o yală ORBITA
(figura 5.4), producătorul oferind pentru ea softul și cardurile demo (fig ura 5.5).

Figura 5.1 – Encriptor hibrid pe frecvența de 13,56 MHz

Figura 5.2 – Schema electronică a encoderului

22

Figura 5.3 – Cititor MIFA RE cu eprom, antenă și bobină

Figura 5.4 – Yala ORBITA (demontată)

23

Figura 5.5 – Cardurile Demo pentru Yala ORBITA (un card de audit și 5 carduri de client)

24 6. Interceptarea ca nalului de comunicații

Pentru a avea acces (de la distanță) la datele transmise de emițător (card/ tag) era nevoie
de un receptor cu sensibilitate ridicată, care a fost realizat astfel :
Am modificat circuitul de intrare al cititorului (antena) , ca în figura 6.1, folosind un
dipol deschis de dimensiunea de 36,8cm și o bobină cu diametrul de 10 cm cu 4 spire (fig ura
6.1), permițând astfel citirea datelor de pe card de la o distanță de cca . 60cm (standard, distanța
de la care puteau f i citite datele este de max. 6cm).

Figura 6. 1 – Modificarea adusă circuitului de intrare al cititorului

Am calculat lungimea dipolului deschis astfel:
Am c alculat lungimea de undă:

Antena este este un submultiplu al lungimii de undă,
36,8 cm.
Factorul de calitate al antenei Q se calculează astfel:

25 Circuitul antenei echivalent este un circuit de tip RLC și arată astfel:

Circuit echivalent antenă:

Am calculat următoarele valori:
Inductanța (L) – indică capacitatea bobinei de a acumula energie sub formă de câmp magne tic.

Unde: µ= permeabilitatea absolut ă a materialului miezului bobinei (1 pentru aer)
N = numărul de spire
S = aria sec țiunii transversale a bobinei
L = lungimea bobinei

Capacitatea (C) – este capacitatea echivalentă rezultată din capa citatea dintre spire.

C=ε S/ Δl

Unde : ε = permitivitatea electrică a dielectricului
S = suprafața armăturilor
Δl = distanț a dintre armături

Rezistența (impedanța) R – este rezistența echivalentă de pierderi a bobinei, dată de rezistența
conductorului, rezistența de pierderi în miezul acesteia și dielectricul carcasei.

R=r+jωL

Unde: r = rezistenț a conductorului din care este realizată bobina.
jωL = reactanța inductivă.

Astfel , valorile obținute sunt:

Inductanța : L_ant = 300…1500µH
Capacitatea: C_ant = 10…40pF
Impedanța: R_ant = 0.3…1.2Ohm

26
În urma măsurătorilor cu un analizor de spectru, conectat după amplificatorul de antenă
în momentul apropierii cardului de bobină, am constatat că semnalul purtător este dublu modulat
FSK (Frequency -shift keying). Se poate vedea în reprezentarea grafică a modulației digitale a
frecvenței purtătoare , în figura 6.2:

Figura 6.2 – Captură analizor de spectru

27 7. Scenarii de compromitere a sistemului MIFARE (ORBITA)

Atacul asupra sistemului Mifare (produs de firma ORBITA) a fost realizat pe două că i:
încercarea de a clona cardul master , prin citirea datelor conținute de acesta din imediata
proximitate a titularului, folosind encoderul cu antena modificată dup ă specificațiile de mai sus,
la mufa USB a acestuia conectând un calculator Arduino (Figura 7.1) care avea instalat pe el o
aplicație dedicată, descărcată din mediul online (open source) , dedicată clonării cardurilor.

Figura 7.1 – Calculatorul Arduino cu cititorul Mifare

/*
* Serial.print("Arduino Examples – 13,56Mhz RF Wireless Transmitter -Receiver Test");
* UNO R3 : http://kit128.com/goo /view?no=71 .
* 13,56Mhz RF: http:// kit128.com/goo/view?no=248
*
* vw_rx_start(); // Start the receiver PLL running
* vw_setup(2000); // Bits per sec .
* if (vw_get_message(buf, &buflen)) // Non -blocking (Translation, refactored, comments, anti collision, cascade
levels.)
* Released in to the public domain.
*
* Sample program showing how to read data from a PICC using a reader on the Arduino SPI interface.
*–––––––––––––––––––––––––– empty_skull
* Serial.begin(11520); //
* add pin configuration for arduino mega
* http://mac8project.altervista.org/
––––––––––––––––––––––––––
* Pin layout should be as follows:
* Signal Pin PinPin
* Arduino Uno Arduino Mega board

28 * ––––––––––––––––––––
* Reset 9 5 RST
* SPI SS 10 53 SDA
* SPI MOSI 11 51 MOSI
* SPI MIS O 12 50 MISO
* SPI SCK 13 52 SCK
*
* 13,56Mhz RF: http://kit12.com/goods/view?no=248 . Search for "mf -rc522" on .c:
*/

#include <SPI.h>
#include <MFRC522.h>

#define SS_PIN 10
#define RST_PIN 9
mfrc52(SS_PIN, RST_PIN); // Create instance.

void setup() {
Serial.begin(960); // Initialize serial communications with the PC
SPI.begin(); // Init SPI bus
mfrc52.PCD_Init(); // Init card
Serial.println("Scan PICC to see UID and type…");
Serial.print(buf[i], HEX);
void loop() {
// Look for new cards
if ( ! mfrc52.PICC_IsNewCardPresent()) {
return;
}

// Select one of the cards
if ( ! mfrc52.PICC_ReadCardSerial()) {
return;
}}
Serial.println();

// Dump debug info about the card. PICC_HaltA() is automatically called.
mfrc52.PICC_DumpToSerial(&(mfrc52.uid3

Figura 7.2 – Script pentru programare Arduino

3 https://forum.arduino.cc/

29

Figura 7.3 – Arduino Mini cu modul MIFARE

Datele captate au fost inscripționate, folosind calculatorul Arduino cu cititorul Mifare
achiziționat, pe un card blank, realizând astfel o clonă perfectă a cardului master, prin
intermediul căruia am obținut acces general în sistem.
Același rezultat, folosind aceiași aplicație, a fost obținut cu ajutorul unei platforme de
dezvoltare Ardino Mini (figura 7.3) .

A doua cale de compromitere a sistemului a vizat baza de date a acestuia. Astfel, pe un
calculator am instalat programul demo , venit odată cu yala și cardurile blank achiziționate
(aplicația demo poate crea carduri de acces noi, pentru un sistem nou). Cu aj utorul cardului de
audit achiziționat am cules datele din cititoarele sistemului (la care are acces oricine) și le -am
suprascris în baza de date a sistemului demo achiziționat, obținând astfel o clonă a sistemului
țintă.

30

Figura 7.4 – Fereastra de pornire a aplicației demo

Figura 7.5 – Aplicația demo achiziționată odată cu yala

31

Figura 7.6 – Fișierele sistemului unde se regăsește și baza de date a acest uia

Figura 7.7 – Fișierele conținând datele de pe cardul de audit achiziționat

32

Figura 7.8 – Aspectul aplicației după rescrierea bazei de date cu datele colectate din cititoarele
sistemului (se poate observa că pot fi realizate toate tipurile de card definite în sistem)

Figura 7.9 – Confirmarea aplicației după realizarea unui card

33

8. Concluzii privind securizarea sistemelor MIFARE

Vulnerabilitățile sistemului MIFARE speculate de noi și posibile soluții de reducere a
acestora sunt:
➢ cea mai mare problemă a cardurilor contactless este că pot fi ușor citite de la distanță,
nefiind protejate deoarece transmit datele pe unde radio. O posibilă soluție de protejare a
acestora este ecranarea lor în huse/ portofele etc. de tip cu șcă Faraday, deja unii fabricanți
de poșete și portofele au introdus folie metalică în pereții acestora;
➢ pentru o securizare mai bună se impune dubla sau tripla autentificare (prin folosirea unui
cod PIN și a unei parole ;
➢ limitarea pragului m axim al plăților contactless (fără a tasta codul PIN) la o sumă cât mai
mică ;
➢ folosirea sistemelor de autentificare care folosesc caracteristici biometrice unice ale
utilizatorilor (cititoare de amprentă digitală, analizoare de voce, scanere de iris ocu lar,
analizoare faciale, analizoare de mișcare etc.) , compararea datelor si caracteristicilor
biometrice la solicitarea accesului prin verificarea in baza de date a șabloanelor și
confirmarea sau infirmarea autenticitatii acestora;
➢ sistemul de operare s uportat de aplicațiile MIFARE, în 90% din cazuri , este Windows XP
care nu mai beneficiază de suportul producătorului, nu mai sunt soluționate breșele de
securitate identificate (inclusiv în sistemul bancar);
➢ auditarea (căt mai des posibilă) și raportare a eventualelor probleme, soluționarea acestora
prin înlăturarea cauzelor care au dus la incident, astfel încât pe viitor să fie închise
eventualele breșe apărute în sistemul de operare a echipamentelor RFID;
➢ comercializarea dispozitivelor de tip skimmer nu este ilegală în România – în figura 8.1 se
poate vedea un anunț dintr -un ziar din România care vizează vînzarea de astfel de
dispozitive ;

Figura 8.1 – anunț din ziar o nline

34 ➢ dispozitivele utilizate sunt disponibile pe piața liberă, fără niciun control, la fel și
documentația necesară – în figura 8.2 se poate vedea un anunț online care vizează v ânzarea
unui dispozitiv de clonat cu documentația ,softul și materia primă necesară ;

figura 8.2 – anunț de pe www.OLX.ro

➢ aplicaț ia nu impune folosirea unor parole de o complexitate sporită, administratorul de
sistem folosește adesea parola recomandată de manualul de instalare a sistemului;
➢ o altă metodă de a obține acces la un sistem contactless este ingineria socială. Prin meto de
obscure, de genul: persuasiune, manipulare sau șantaj, un atacator poate obține informații
sensibile direct de la sursă ;
➢ dispozitivele de tip skimmer au devenit atât de mici încât pot fi atașate sub un abțibild,
colant etc. în zona de utilizare a car durilor bancare;
➢ legislația națională blândă în domeniu (în SUA pedepsele pentru compromiterea acestor
sisteme ajung până la 15 ani de închisoare) ;
➢ vidul legislativ in domeniu (atât în România cât și în Uniunea Europeană) .

Conform companiei Norton, în 2017 rata vulnerabilităților cardurilor în fața atacurilor va
depăși 60%.
Sub aspect legislativ, majoritatea țărilor au luat măsuri prin adaptarea normelor legale la
noile tipuri de infrac țiuni informatice, fiind puse în aplicare, din ce î n ce mai des, având în
vedere rata crescută a infrac țiunilor informatice, mai ales ale celor de fraudă bacară.

35 Bibliografie

1. Gerhad de Koning Gans, Jaap -Henk Hoepman, and Flavio D. Garcia. A Practical Attack on
the MIFARE Classic. In Smart Card Re search and Advanced Applications, volume 5189/2008
of Lecture Notes in Computer Science, pages 267 –282. Springer Berlin/ Heidelberg, 2008
2. Gerhad de Koning Gans. Analysis of the MIFARE Classic Used in the OV -Chipkaart Project.
Master’s thesis, Radboud Un iversity Nijmegen, 2008
3. Flavio D. Garcia, Gerhad de Koning Gans, Ruben Muijrers, Peter van Rossum, Roel Verdult,
Ronny Wichers Schreur, and Bart Jacobs. Dismantling MIFARE Classic. In Computer Security
– ESORICS 2008, volume 5283/2008 of Lecture Notes i n Computer Science, pages 97 –114.
Springer Berlin / Heidelberg, 2008
4. Mifare (2009 -12-18). “The succes of MIFARE”. Mifare.net/2010
5. Codebreaker: The History of Secret Communication – 2011 by Stephen Pincock
6. Orbita Technology, www.orbitalock.com /2014
7. NXP Semiconductors. MIFARE Standard 1 KByte Card IC Functional Specific ation, 5.3
edition, January 2015
8. NXP Semiconductors. MIFARE Standard 4 KByte Card IC Functional Specification, 4.1
edition, January 2015
9. www.cooking -hacks.com/rfid13,56mhz /2015
10. https://forum.arduino.cc/ /2016
11. Noul Cod Penal actualizat 2016 – Legea 286/2009.
12. SECITC 2016 Secure Transaction Authentication Protocol, Pardis Pourghomi, Muhammad
Qasim Saeed, Pierre Abi -Char
13. http://www.nxp.com/2017
14. SECITC 2017 “Security challenges of IoT devices”, Cosmin CIOBANU & Razvan
GAVRILA, ENISA – European Network and Inform ation Security Agency 08 June 2017

Similar Posts