RFID #4 | Bir Ek: Mifare Klasik 101

M3m0ry

Kıdemli Üye
3 Haz 2017
4,410
124
3
xD
Mifare Klasik'e baktığımızdan beri mütevazi bir veri sayfası ek tipi yazmayı düşündüm. Bu şekilde Mifare'yi her durumda anlatmak zorunda kalmıyacağım. İnsanların soruları varsa onlara RTFM'yi söyliyebilirim.

nxp.com Mifare'nin bileşenlerinin yetkili kaynağıdır. Bu yüzden ondan da bahsetmeliyim. Düşünme başlığınız varsa, onların dizayn özelliklerini okumalısınız.

Bugünkü göstereceğim resimlerin çoğu onlardan utanmadan ödünç alınmıştır. Bunlar bana göre adil. Bu konu hakkında bir sorunu olan benimle iletişime geçsin.

Bu ek özellik Mifare Classic 1K kartlarıyl ilgilidir ama 4.5K içinde geçerlidir. Ek'in sonunda, 1K ile 4K 'nın arasındaki farkları açıklayan bir bölüm ekliyeceğim.

Fiziksel Özellikler / Kuşbakışı

Anten:
Aşşağıda Mifare Kartının anten bobinlerinin dizaynını görüyorsunuz. Bu anten Mifare çipleriyle bağlanmış. Şirketler iletişimini okuyucuyla başlatır ve Çipteki Dijital Kontrol Ünite'si ile kontrol edilir. Yanıt ilgili sektördeki bellek erişim koşullarna bağlıdır.

appendixA_1.png


Anti-Çarpışma:

Kartlar arasındaki çarpışmaları önlemek için kart UID'leri okunur. Eğer okuyucunun işletim alanında çoklu kartlar varsa, UID'leriyle ayrılabilirler ve daha iyi bir iletişim için tek bir kart seçilebilir. Diğer kartlar yeni bir komut ile gönderilmek için boş duruma geri çevrilir ve bekletilir. 4 bayt uzunluğundaki kart UID'lerinin benzersiz olmadığından bahsetmek gerekir. 2 Mifare kartı aynı UID'e sahip olabilir. (4 baytlık olası UID'ler çoktan tükendi)

3 Adımlı Doğrulama:

Okuyucu tarafından gönderilen Power-On Reset'den (POR) sonra kartlar çalışır hale gelir. Daha sonra okuyucu uygun sektör anahtarlarını kullanarak 3 adımlı doğrulama erişimini başlatmak isteyen hafızayı belirleyecektir. Başarılı doğrulamadan sonra daha iyi iletişimin şifresi kırılacak. Aşşağıda temsili bir grafik görüyorsunuz.

appendixA_2.png


Hafıza Yerleşimi:

Mifare 1k hafıza yerleşimi aşşağıdaki resimdeki gibidir. 1024 x 8 bit EEPROM hafızası 4'er blok olarak 16 sektör halinde düzenlenmiştir. Bu sektörler 0'dan başlar ve 15'e kadar çıkar. Aşşağıda temsili bir grafik görüyorsunuz. Bulduğum bütün resimler bu sektörleri ters gösteriyor. Niye düzenli olmadıkları hakkında bilgim yok.

appendixA_3.png


Yukarıdaki resimde gördüğümüz gibi hepsinin 4. bloğu sektörün fragman videoları için ayrılmıştır ve sektör 0'ın 1. bloğu üretici bloğudur.

Üretici Bloğu:

Üretici bloğu benzersiz olmayan tamamlayıcı (NUID) içerir. 4. bayt dönen bir XOR ile LRC ve geri kalanı ise üretici verileridir. Bu blok üretilirken yazma korumalıdır.

appendixA_4.png


Sektör Fragmanı:

Daha önce de bahsettiğimiz gibi sektör tanıtımı herzaman her sektörde 4. bloktur. Sektör fragmanı çift gizli anahtar A&B ve sektördeki izin verilmiş hafıza işletimleri (okuma,yazma, okuma-yazma) erişim kontrol baytları içerir. Eğer anahtar be sektör fragmanının son 6baytına ihtiyaç duymassa, onları veri olarak kullanabilir. Her boş kartın anahtarları 0xffffffffffff şeklinde ayarlanmış olarak teslim edilir.

appendixA_5.png


Erişim Kontrol Baytları:

Erişim kontrol baytları biraz daha kafa karıştırıcıdır. Bu yüzden yarım yapılan Google aramalarında erişim koşullarını hesaplayan programa yönlendirilirsiniz. Bu onların verimli olmadığını söylemek anlamına gelmez. Açıkladığımız gibi her sektör 4 bloğa ayrılır. İlk 3 blok veridir ve son blok ise sektörün fragmanıdır. Yukarıdaki resimde 6-8 baytları erişim koşulları ve 9. bayt genel amaç baytıdır.

Bu 3 bayt sektör fragmanı da dahil 4 bloğun da tamamına erişim hakkı tanımlar. Her bloğun kendisiyle ilişkili 3 biti vardır. Aşşağıda sırasıyla veri bloklarını ve sektör fragman bloğu için 3 bit tanımlanan 2 tablo bulabilirsiniz.

appendixA_6.png


Yeterince kafa karıştırıcı değilmiş gibi, tersine çevrilmiş bit değerlerinde saklanır. Bu, belleğin bozulup bozulmadığına emin olmak için yapılır. Değerler kartlarla eşleşmiyorsa, belleğin bozuk veya tahrif edilmiş olarak sayacak ve bütün sektöre erişimi engelliyecek. Aşşağıda işleri biraz da olsa düzeliceğini umduğumuz bir resim görüyoruz. Bu ekin aşşağısında, bu kontrol baytları hakkında ince ayrıntılı bir PDF'nin linkini bıraktım.

appendixA_7.png


Mifare 4k


Mifare 4K kartlarının büyük bir kısmı aynı şekilde düzenlenmiştir. Bizim için önemli olacak önemli olan tek fark eklenmiş hafıza ve düzenlenme şeklidir. Mifare 4K kartı 4096 x 8 bit EEPROM hafızaya sahiptir. Bu hafıza her biri 4 bloktan oluşmuş 32 sektör ve her biri 16 blok içeren ek 8 sektör den oluşur. Sayfanın en aşşağısına gittiğinizde her detayı öğrenmeniz için aşşağıya "nxp's 4k data-sheet" adlı linki ekledim. Şimdi aşşağıda Mifare 4K hafıza katman'ının temsili bir grafik resmini görüyorsunuz.

appendixA_8.png


Okuma Materyalleri

* Nxp's Mifare classic 1k dizayn dökümanı - https://www.nxp.com/docs/en/data-sheet/MF1S503x.pdf
* Nxp's Mifare classic 4k dizayn dökümanı - https://www.nxp.com/docs/en/data-sheet/MF1S703x.pdf
* Amal Graafstra tarafından açıklanan erişim kontrol bayt çalışmalaranının dökümanı - http://amal.net/wp-content/uploads/2012/11/NFC-Access-Control-for-Mifare-S50.pdf
* Nijmegan Üniversitesi tarafından yapılmış "Dismantling MIFARE Classic" açığının araştırması - Buraya tıkla
* Nethemba tarafından yapılmış "Dismantling MIFARE Classic" araştırması açığının araştırması - https://www.nethemba.com/mifare-classic-slides.pdf

Source: https://www.fuzzysecurity.com/tutorials/rfid/2.html
Translator: M3m0ry
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.