Tere kÔigile. Alustan taustalooga, mis ajendas mind selle uuringu lÀbi viima, kuid enne hoiatuseks: kÔik praktilised tegevused viidi lÀbi haldusstruktuuride nÔusolekul. Iga katse kasutada seda materjali sulgemise territooriumile sisenemiseks ilma seal viibimise Ôigusteta on kuritegu.
KĂ”ik algas sellest, et kui ma oma lauda koristasin, asetas ma kogemata RFID vĂ”ti sissepÀÀsu NFC-lugejale ACR122 â minu ĂŒllatus oli suur, kui Windows esitas uue seadme avastamise heli ja LED sĂŒttis roheliselt. Ma arvasin, et need vĂ”tmed töötavad ainult Proximity standardis.

Kuid kuna lugeja ta nĂ€gi, tĂ€hendab see, et vĂ”ti vastab ĂŒhele ISO 14443 standardi (ehk Near Field Communication, 13,56 MHz) protokollidest. Puhastamisest unustati kohe, sest nĂ€gin vĂ”imalust vabaneda vĂ”tmekimpidest ja hoida sissepÀÀsuvĂ”ti telefonis (korter on ammu varustatud elektroonilise lukuga). Uurimisele pĂŒhendudes selgus, et plasti all peitub NFC-mĂ€rge Mifare 1k â sama mudel, mida kasutatakse ettevĂ”tete kaardisĂŒsteemides, transpordikaartides jne. Esialgsed katsed sektori sisu juurdepÀÀsu saamiseks ei toonud edu, ja kui mul lĂ”puks Ă”nnestus vĂ”ti murda, selgus, et kasutatakse vaid 3. sektorit, kus on kopeeritud kaardi UID. See nĂ€is liiga lihtne, ja nii see oli â artiklit ei oleks, kui kĂ”ik oleks lĂ€inud tĂ€pselt nii, nagu kavandatud. Siin ma sain vĂ”tme sisemuse, ega ole mingeid probleeme, kui on vaja kopeerida vĂ”tme koopia teise sarnasesse. Kuid ĂŒlesanne oli â viia vĂ”ti mobiilseadmesse, millega ma tegingi. Siin hakkas lĂ”busus pihta â meil on telefon â iPhone SE paigaldatud iOS 13.4.5 Beta build 17F5044d ja ja mĂ”ned kohandatud komponendid NFC vaba töö jaoks â ei hakka siin pikalt peatuma mĂ”ningate objektiivsete pĂ”hjuste tĂ”ttu. Soovi korral kehtib kĂ”ik, mis jĂ€rgneb, ka Androidi sĂŒsteemi jaoks, kuid mĂ”ningate lihtsustustega.
Probleemide loetelu:
- Kasutada pÀÀsukoodide sisu.
- Rakendada vÔimalust seadmega vÔtme emuleerimiseks.
Kuigi esimese punktiga oli suhteliselt lihtne, ilmus teisega probleeme. Esimene emulaatoriversioon ei töötanud. Probleem avastati ĂŒsna kiiresti â mobiilseadmetes (nii iOS kui Android) emulatsiooni reĆŸiimis on UID dĂŒnaamiline ja sĂ”ltumatu sellest, mis on pildis. Teine versioon (kĂ€ivitub superkasutaja Ă”igustega) fikseeris seerianumbri valitud versioonile â uks avanes. Siiski, ma tahtsin kĂ”ike tĂ€iuslikult teha ning lĂ”puks kogusin lĂ”puni viidud emulaatori versiooni, mis suutis avada Mifare dump'e ja neid emuleerida. Ăhel Ă€kilisel hetkel muutsin sektorite vĂ”tmed suvaliseks ja proovisin ust avada. Ja see... AVANES! MĂ”ne aja pĂ€rast sain aru, et avanevad igalĂŒhel uksed, millele see lukk sobib, isegi need, mille originaalvĂ”ti ei sobinud. SeetĂ”ttu koostasin uue ĂŒlesannete nimekirja:
- Selgitada vÀlja, milline kontroller vastutab vÔtmetega töötamise eest
- MĂ”ista, kas on olemas vĂ”rguĂŒhendus ja ĂŒhine andmebaas
- Selgitada vÀlja, miks tegelikult loetamatust vÔtme saab universaalsuseks
Suheldes halduskontserni inseneriga sain teada, et kasutatakse lihtsaid kontrolleri Iron Logic z5r ilma vĂ€lise vĂ”rguĂŒhenduseta.
Lugeja CP-Z2 MF ja kontroller IronLogic z5r
Mulle anti katsetamiseks vajalik seadmete komplekt:

Kuidas siit vĂ€lja nĂ€eb â sĂŒsteem on tĂ€iesti iseseisev ja ÀÀrmiselt primitiivne. Algul arvasin, et kontroller on Ă”ppe reĆŸiimis â idee on selline, et see loeb vĂ”tme, salvestab selle mĂ€lu ja avab ukse â seda reĆŸiimi kasutatakse siis, kui tuleb salvestada kĂ”ik vĂ”tmed, nĂ€iteks mitu korterit olevat lukku vahetades. Kuid see teooria ei leidnud kinnitust â tarkvara poolest on see reĆŸiim vĂ€lja lĂŒlitatud, ja jumper on tööasendis â ja siiski, kui seadet lĂ€heneda, nĂ€eme jĂ€rgmist:
Ekraanipilt emuleerimise protsessist seadmel

⊠ja kontroller signaalib, et juurdepÀÀs on antud.
Seega peitub probleem kas kontrolleri vĂ”i lugeja tarkvaras. Vaatame lugejat â see töötab iButton reĆŸiimis, seega ĂŒhendame Bolid turvakaardi â saame vaadata lugeja vĂ€ljundandmeid.
Kaart ĂŒhendatakse hiljem lĂ€bi RS232.

KÀime mitme katse meetodil lÀbi, et selgitada, et lugeja edastab sama koodi autoriseerimise ebaÔnnestumise korral: 1219191919.
Olukord hakkab selguma, kuid praegu ei saa ma aru, miks kontroller sellele koodile positiivselt reageerib. On oletus â et kui andmebaasi tĂ€ideti â juhuslikult vĂ”i tahtlikult toodi kaart teiste sektori vĂ”tmetega â edastas lugeja selle koodi ja kontroller salvestas selle. Kahjuks mul ei ole IronLogic'i originaalprogrammeeri, et vaadata kontrolleri vĂ”tmeandmebaasi, kuid loodan, et suutsin tĂ€helepanu juhtida sellele, et probleem eksisteerib. Videodemonstratsioon selle haavatavuse tööle rakendamisest on saadaval. .
P.S. Teooria juhuslikest lisandustest on vastuolus asjaolu, et ĂŒhe Ă€rikeskuse taga Krasnojarskis Ă”nnestus mul samuti seda ust avada sama meetodi abil.
Allikas: habr.com
