Masalah sistem kontrol akses otonom - Hal yang tidak diharapkan

Hari baik untuk semuanya. Saya akan mulai dengan latar belakang apa yang mendorong saya melakukan penelitian ini, namun pertama-tama saya akan memperingatkan Anda: semua tindakan praktis dilakukan dengan persetujuan dari struktur pemerintahan. Segala upaya untuk menggunakan materi ini untuk memasuki area terlarang tanpa hak untuk berada di sana merupakan pelanggaran pidana.

Semuanya bermula ketika, saat membersihkan meja, saya secara tidak sengaja meletakkan kunci masuk RFID pada pembaca NFC ACR122 - bayangkan betapa terkejutnya saya ketika Windows memutar suara mendeteksi perangkat baru dan LED berubah menjadi hijau. Sampai saat ini, saya percaya bahwa kunci-kunci ini berfungsi secara eksklusif dalam standar Proximity.
Masalah sistem kontrol akses otonom - Hal yang tidak diharapkan
Namun karena pembaca melihatnya, berarti kunci tersebut memenuhi salah satu protokol di atas standar ISO 14443 (alias Near Field Communication, 13,56 MHz). Pembersihan segera terlupakan, karena saya melihat peluang untuk sepenuhnya menghilangkan kumpulan kunci dan menyimpan kunci pintu masuk di telepon saya (apartemen telah lama dilengkapi dengan kunci elektronik). Setelah mulai belajar, saya menemukan bahwa tersembunyi di bawah plastik adalah tag NFC Mifare 1k - model yang sama seperti pada lencana perusahaan, kartu transportasi, dll. Upaya untuk masuk ke dalam isi sektor tersebut tidak membuahkan hasil pada awalnya, dan ketika kuncinya akhirnya dibobol, ternyata hanya sektor ke-3 yang digunakan, dan UID dari chip itu sendiri terduplikasi di dalamnya. Kelihatannya terlalu sederhana, dan ternyata memang begitu, dan tidak akan ada artikel jika semuanya berjalan sesuai rencana. Jadi saya menerima jeroan ayam itik kuncinya, dan tidak ada masalah jika Anda perlu menyalin kunci ke kunci lain yang sejenis. Namun tugasnya adalah mentransfer kunci ke perangkat seluler, itulah yang saya lakukan. Di sinilah kesenangan dimulai - kami punya telepon - iPhone SE dengan terpasang iOS 13.4.5 Beta versi 17F5044d dan beberapa komponen khusus untuk pengoperasian NFC gratis - Saya tidak akan membahasnya secara mendetail karena beberapa alasan obyektif. Jika diinginkan, semua hal di bawah ini juga berlaku untuk sistem Android, tetapi dengan beberapa penyederhanaan.

Daftar tugas yang harus diselesaikan:

  • Akses konten kunci.
  • Menerapkan kemampuan untuk meniru kunci oleh perangkat.

Jika yang pertama semuanya relatif sederhana, maka yang kedua ada masalah. Emulator versi pertama tidak berfungsi. Masalahnya ditemukan cukup cepat - pada perangkat seluler (baik iOS atau Android) dalam mode emulasi, UID bersifat dinamis dan, apa pun yang tertanam dalam gambar, UID tersebut mengambang. Versi kedua (dijalankan dengan hak pengguna super) secara kaku menetapkan nomor seri pada versi yang dipilih - pintu terbuka. Namun, saya ingin melakukan semuanya dengan sempurna, dan akhirnya membuat versi lengkap emulator yang dapat membuka dump Mifare dan menirunya. Menyerah pada dorongan tiba-tiba, saya mengubah kunci sektor menjadi kunci sewenang-wenang dan mencoba membuka pintu. Dan dia… DIBUKA! Setelah beberapa saat saya menyadari bahwa mereka terbuka apa saja pintu dengan kunci ini, meskipun kunci aslinya tidak cocok. Dalam hal ini, saya membuat daftar tugas baru yang harus diselesaikan:

  • Cari tahu jenis pengontrol yang bertanggung jawab untuk bekerja dengan kunci
  • Pahami apakah ada koneksi jaringan dan basis umum
  • Cari tahu mengapa kunci yang hampir tidak terbaca menjadi universal

Setelah berbicara dengan seorang insinyur di perusahaan manajemen, saya mengetahui bahwa pengontrol Iron Logic z5r sederhana digunakan tanpa terhubung ke jaringan eksternal.

Pembaca MF CP-Z2 dan pengontrol IronLogic z5r
Saya diberi satu set peralatan untuk percobaan:

Masalah sistem kontrol akses otonom - Hal yang tidak diharapkan

Seperti yang jelas dari sini, sistem ini sepenuhnya otonom dan sangat primitif. Awalnya saya mengira pengontrol dalam mode belajar - artinya ia membaca kunci, menyimpannya di memori dan membuka pintu - mode ini digunakan ketika perlu mencatat semua kunci, misalnya saat mengganti mengunci gedung apartemen. Namun teori ini tidak dikonfirmasi - mode ini dimatikan dalam perangkat lunak, jumper dalam posisi berfungsi - namun, saat kami mengangkat perangkat, kami melihat yang berikut:

Tangkapan layar proses emulasi pada perangkat
Masalah sistem kontrol akses otonom - Hal yang tidak diharapkan
... dan pengontrol memberi sinyal bahwa akses telah diberikan.

Ini berarti masalahnya terletak pada perangkat lunak pengontrol atau pembaca. Mari kita periksa pembaca - ini berfungsi dalam mode iButton, jadi mari kita sambungkan papan keamanan Bolid - kita akan dapat melihat data keluaran dari pembaca.

Papan tersebut nantinya akan dihubungkan melalui RS232
Masalah sistem kontrol akses otonom - Hal yang tidak diharapkan

Dengan menggunakan metode beberapa pengujian, kami menemukan bahwa pembaca menyiarkan kode yang sama jika terjadi kegagalan otorisasi: 1219191919

Situasinya mulai menjadi lebih jelas, tetapi saat ini tidak jelas bagi saya mengapa pengontrol merespons secara positif kode ini. Ada asumsi bahwa ketika database diisi - secara tidak sengaja atau sengaja kartu dengan kunci sektor lain disajikan - pembaca mengirimkan kode ini dan pengontrol menyimpannya. Sayangnya, saya tidak memiliki programmer berpemilik dari IronLogic untuk melihat database kunci pengontrol, tapi saya harap saya dapat menarik perhatian pada fakta bahwa masalahnya ada. Demonstrasi video cara mengatasi kerentanan ini tersedia ΠΏΠΎ ссылкС.

PS Teori penambahan acak ditentang oleh fakta bahwa di salah satu pusat bisnis di Krasnoyarsk saya juga berhasil membuka pintu dengan cara yang sama.

Sumber: www.habr.com

Tambah komentar