Problemi autonomnih sustava kontrole pristupa - Tamo gdje se nisu očekivali

Dobar dan svima. Počet ću s pozadinom o tome što me potaknulo na ovo istraživanje, ali prvo ću vas upozoriti: sve praktične radnje provedene su uz suglasnost vladajućih struktura. Svaki pokušaj korištenja ovog materijala za ulazak u zabranjeno područje bez prava boravka je kazneno djelo.

Sve je počelo kada sam prilikom čišćenja stola RFID ulaznu tipku slučajno stavio na ACR122 NFC čitač – zamislite moje iznenađenje kada su Windowsi pustili zvuk detektiranja novog uređaja i LED dioda se upalila zeleno. Do ovog trenutka sam vjerovao da ove tipke rade isključivo u Proximity standardu.
Problemi autonomnih sustava kontrole pristupa - Tamo gdje se nisu očekivali
Ali budući da ga je čitatelj vidio, to znači da ključ ispunjava jedan od protokola povrh standarda ISO 14443 (aka komunikacija kratkog polja, 13,56 MHz). Čišćenje je odmah zaboravljeno, jer sam vidio priliku da se potpuno riješim kompleta ključeva i zadržim ključ od ulaza u svom telefonu (stan je odavno opremljen elektronskom bravom). Nakon što sam počeo proučavati, saznao sam da se ispod plastike krije Mifare 1k NFC oznaka - isti model kao i na bedževima poduzeća, transportnim karticama itd. Pokušaji da se uđe u sadržaj sektora isprva nisu uspjeli, a kada je ključ konačno probijen, pokazalo se da je korišten samo 3. sektor, au njemu je dupliciran UID samog čipa. Izgledalo je prejednostavno, a tako se i pokazalo, a članka ne bi ni bilo da je sve išlo baš po planu. Dakle, dobio sam utrobu ključa i nema problema ako trebate kopirati ključ na neki drugi, iste vrste. Ali zadatak je bio prebaciti ključ na mobilni uređaj, što sam i napravio. Ovdje je počela zabava - imamo telefon - iPhone SE s instaliranim iOS 13.4.5 Beta verzija 17F5044d i neke prilagođene komponente za slobodan rad NFC-a - o tome se neću detaljnije zadržavati zbog objektivnih razloga. Ako želite, sve dolje rečeno vrijedi i za Android sustav, ali uz određena pojednostavljenja.

Popis zadataka koje treba riješiti:

  • Pristupite sadržaju ključa.
  • Implementirajte mogućnost oponašanja ključa na uređaju.

Ako je s prvim sve bilo relativno jednostavno, onda je s drugim bilo problema. Prva verzija emulatora nije radila. Problem je otkriven vrlo brzo - na mobilnim uređajima (bilo iOS ili Android) u načinu emulacije, UID je dinamičan i, bez obzira na to što je ugrađeno u sliku, pluta. Druga verzija (pokrenuta s pravima superkorisnika) čvrsto je fiksirala serijski broj na odabranom - vrata su se otvorila. Međutim, želio sam sve napraviti savršeno i na kraju sam sastavio kompletnu verziju emulatora koji je mogao otvarati Mifare dumpove i emulirati ih. Popustivši iznenadnom impulsu, promijenio sam sektorske ključeve proizvoljnim i pokušao otvoriti vrata. I ona… OTVORENO! Nakon nekog vremena shvatio sam da se otvaraju bilo koji vrata s ovom bravom, čak i ona na koja originalni ključ nije odgovarao. U tom smislu, napravio sam novi popis zadataka koje treba izvršiti:

  • Saznajte kakav je kontroler odgovoran za rad s ključevima
  • Saznajte postoji li mrežna veza i zajednička baza
  • Saznajte zašto gotovo nečitljiv ključ postaje univerzalan

Nakon razgovora s inženjerom u tvrtki za upravljanje saznao sam da se jednostavni kontroleri Iron Logic z5r koriste bez povezivanja s vanjskom mrežom.

CP-Z2 MF čitač i IronLogic z5r kontroler
Dobio sam set opreme za eksperimente:

Problemi autonomnih sustava kontrole pristupa - Tamo gdje se nisu očekivali

Kao što je jasno odavde, sustav je potpuno autonoman i krajnje primitivan. Prvo sam mislio da je kontroler u modu učenja - što znači da očitava ključ, sprema ga u memoriju i otvara vrata - ovaj mod se koristi kada je potrebno snimiti sve ključeve, npr. kod zamjene zaključati u stambenoj zgradi. Ali ova teorija nije potvrđena - ovaj način rada je softverski isključen, skakač je u radnom položaju - a ipak, kada podignemo uređaj, vidimo sljedeće:

Snimka zaslona procesa emulacije na uređaju
Problemi autonomnih sustava kontrole pristupa - Tamo gdje se nisu očekivali
... i kontroler signalizira da je pristup odobren.

To znači da problem leži u softveru kontrolera ili čitača. Provjerimo čitač - radi u iButton modu, pa spojimo sigurnosnu ploču Bolid - moći ćemo vidjeti izlazne podatke iz čitača.

Ploča će se kasnije spojiti preko RS232
Problemi autonomnih sustava kontrole pristupa - Tamo gdje se nisu očekivali

Metodom višestrukih testova saznajemo da čitač u slučaju neuspjeha autorizacije emitira isti kod s: 1219191919

Situacija se počinje razjašnjavati, ali trenutno mi nije jasno zašto kontroler pozitivno odgovara na ovaj kod. Postoji pretpostavka da je prilikom popunjavanja baze podataka - slučajno ili namjerno prikazana kartica s drugim ključevima sektora - čitač poslao ovaj kod, a kontroler ga spremio. Nažalost, nemam vlasnički programator tvrtke IronLogic da pogledam bazu podataka ključeva kontrolera, ali se nadam da sam uspio skrenuti pozornost na činjenicu da problem postoji. Dostupna je video demonstracija rada s ovom ranjivošću по ссылке.

PS Teoriji slučajnog zbrajanja suprotstavlja se činjenica da sam u jednom poslovnom centru u Krasnojarsku također uspio otvoriti vrata istom metodom.

Izvor: www.habr.com

Dodajte komentar