Tentoraz je hlavnou postavou školská karta chudobnej vody (karta teplej vody)
Podľa MCT (Mifare Classic Tool) nainštalovaného na NFC telefóne je vodná karta skutočne typu Mifare Classic 1k
Nástroje použité pri tejto trhline sú: počítač, ACR122U, mobilný telefón s funkciou NFC a vodná karta
Pred crackovaním musíme vytvoriť zodpovedajúce prostredie pre počítač a vy ho musíte nainštalovať priamo na počítač. NET Farmwork 4 a Java, prosím, stiahnite si ich a nainštalujte online, pričom softvér použitý neskôr závisí od týchto dvoch runtime knižníc.
Po nainštalovaní runtime je potrebné nainštalovať ovládač ACR122U (článok je priložený k softvérovému odkazu) a aby som uľahčil ďalší vývoj, nainštaloval som aj SDK.
Po nainštalovaní ovládača a SDK pripojte ACR122U k počítaču a zariadenie bude fungovať normálne. Zapnem si vodnú kartu a ACR122U zazvoní bzučiak a zmení sa farba LED diódy
Program na overenie, že zraniteľnosti môžu byť zneužité, je mfoc, a Windows verzia mfocgui sa nazýva mfocgui, ale mfocgui je trochu problematický pre študentov, ktorí sú v RFID bezpečnosti noví, takže tentoraz priamo používa program M1 card service (v skutočnosti zjednodušenú verziu mfocgui).
Po otvorení je programové rozhranie veľmi jednoduché, s iba jedným tlačidlom, ktoré má začať praskať. Videl som svoje ACR122U v zozname čítačiek kariet, takže stačí stlačiť začať praskanie
Potom počkaj, kým program sám prelomí kľúč.
Netrvalo dlho, kým sme videli, že všetky sektory sú poškodené a prasknuté.
Po úspešnom prasknutí koreňový adresár vygeneruje dump súbor tejto karty, veľkosti 1kb, a celá karta sa prečíta.
Mfoc však pôvodne bežal v prostredí Linux a súbor dump generovaný mfocgui portovaným na Windows nemožno použiť priamo, a na opravu 1kb dump súboru na 4kb dump je potrebný fix dump (download fixdump).
fixdump je príkazová operácia a musí byť nainštalovaná pomocou . NET Farmwork 4 runtime knižnica, aby sme uľahčili ovládanie príkazov, skopírujeme dump súbor do adresára fixdump a otvárame cmd na jeho opravu. Príkaz je jednoduchý, stačí "fixdump" a vygenerovaný súbor priamo prepíše zdrojový súbor.
Po dokončení opravy ho otvorte v hexadecimálnom editore ako UltraEdit alebo WinHex a uvidíte dáta dump súboru.
Vidíte dáta, ktoré som zarámoval v ráme na obrázku vyššie? Toto je riadiaci segment sektora karty, z ktorého prvých 6 bajtov a posledných 6 bajtov FFFFFFFFFFF je heslo tohto sektora a FF078069 uprostred je riadiaci bit.
Po poznaní hesla som ho importoval do MCT a začal čítať údaje o karte.
Vďaka funkcii MCT so zvýrazňovaním dát jasne vidíme, že v 4 sektoroch sú dva riadky hodnotových blokov a aktuálny zostatok na mojej karte je 32,31. Hodnota bloku hodnôt sa dvakrát a raz obráti a uloží sa na najnižšiu adresu. Pri prvom bloku hodnoty, 0C9F, pretože počítačové dáta sú uložené v opačnom poradí, reálne údaje sú 9F0C, čo je 3231 v desatinnom poradí. 60F3 v strednej časti je obrátené, a reverzné poradie 60F3 je F360, čo je 1111001101100000, keď je obrátené, a 0000110010011111, keď je obrátené, a 3231, keď sa zmení na desatinné číslo. Posledný odsek, rovnako ako prvý, nie je prevzatý a zachovaný. 11 a EE na konci sú adresy, ktoré možno ignorovať, pokiaľ sú adresy neskôr konzistentné. Doteraz boli dáta karty prelomené, pretože nebolo potrebné žiadne šifrovanie, teraz upravím hodnotu karty na 999,99 na pokus, 999,99 jüanov by malo byť desatinné 99999, hexadecimálne 01869F, výsledok v opačnom poradí je 9F8601, ostatné bity sa počítajú na rovnakom princípe, alebo môžeme použiť vlastný nástroj na výpočet hodnotových blokov MCT na výpočet a nakoniec vypočítať výsledok, ako je znázornené na obrázku nižšie.
Zapíšte dáta do karty, teraz je čas ísť na strojovú prax.
|