ProHoster > Blog > Ma'muriyat > Aigo o'z-o'zini shifrlaydigan tashqi HDD diskini orqaga qaytarish va buzish. 1-qism: qismlarga ajratish
Aigo o'z-o'zini shifrlaydigan tashqi HDD diskini orqaga qaytarish va buzish. 1-qism: qismlarga ajratish
O'z-o'zini shifrlaydigan tashqi drayverlarni teskari o'zgartirish va buzish - mening eski sevimli mashg'ulotim. Ilgari Zalman VE-400, Zalman ZM-SHE500, Zalman ZM-VE500 kabi modellar bilan mashq qilish imkoniga ega bo'ldim. Yaqinda bir hamkasb menga yana bir ko'rgazma olib keldi: Patriot (Aigo) SK8671, u odatiy dizaynga muvofiq qurilgan - LCD indikator va PIN kodni kiritish uchun klaviatura. Shundan kelib chiqqan narsa...
Shifrlangan deb taxmin qilingan diskda saqlangan ma'lumotlarga kirish PIN-kod kiritilgandan so'ng amalga oshiriladi. Ushbu qurilma haqida bir nechta kirish eslatmalari:
PIN kodni o'zgartirish uchun qulfni ochishdan oldin F1 tugmasini bosishingiz kerak;
PIN-kod 6 dan 9 gacha raqamdan iborat bo'lishi kerak;
15 ta noto'g'ri urinishdan so'ng, disk tozalanadi.
2. Apparat arxitekturasi
Birinchidan, biz qaysi komponentlardan iboratligini tushunish uchun qurilmani qismlarga ajratamiz. Eng zerikarli vazifa - bu ishni ochish: juda ko'p mikroskopik vintlardek va plastmassa. Kosonni ochib, biz quyidagilarni ko'ramiz (men lehimli besh pinli ulagichga e'tibor bering):
2.1. Asosiy taxta
Asosiy plata juda oddiy:
Uning eng diqqatga sazovor qismlari (yuqoridan pastga qarab):
SPI flesh-diski JMS539 va ba'zi sozlamalar uchun proshivkani saqlaydi.
2.2. LCD ko'rsatkich paneli
LCD platada hech qanday diqqatga sazovor narsa yo'q.
Bor yo `g` i:
Noma'lum kelib chiqishi LCD ko'rsatkichi (ehtimol, Xitoy shriftlari to'plami bilan); ketma-ket nazorat bilan;
Klaviatura paneli uchun lenta ulagichi.
2.3. Klaviatura paneli
Klaviatura panelini ko'zdan kechirayotganda, ishlar yanada qiziqarliroq tus oladi.
Bu erda, orqa tomonda biz lenta ulagichini, shuningdek, Cypress CY8C21434 mikrokontroller PSoC 1 (bundan keyin biz uni oddiygina PSoC deb ataymiz)
CY8C21434 M8C ko'rsatmalar to'plamidan foydalanadi (qarang hujjatlar). [mahsulot sahifasida]( (http://www.cypress.com/part/cy8c21434-24ltxi) texnologiyani qo'llab-quvvatlashi ko'rsatilgan CapSense (Cypress-dan, sig'imli klaviaturalar uchun yechim). Bu erda siz men lehimlangan besh pinli ulagichni ko'rishingiz mumkin - bu tashqi dasturchini ISSP interfeysi orqali ulashning standart usuli.
2.4. Simlarga qarash
Keling, bu erda nima bog'liqligini aniqlaylik. Buning uchun simlarni multimetr bilan sinab ko'ring:
Tiz ustida chizilgan ushbu diagramma uchun tushuntirishlar:
PSoC texnik spetsifikatsiyada tasvirlangan;
keyingi ulagich, o'ng tomonda, ISSP interfeysi bo'lib, u taqdirning irodasi bilan Internetda bu haqda yozilgan narsalarga mos keladi;
Eng o'ngdagi ulagich - bu klaviatura paneliga lenta ulagichi uchun terminal;
Qora to'rtburchak asosiy platani LCD plataga ulash uchun mo'ljallangan CN1 konnektorining chizilgan rasmidir. P11, P13 va P4 LCD platadagi PSoC pinlari 11, 13 va 4 ga ulangan.
3. Hujum qadamlarining ketma-ketligi
Endi biz ushbu disk qanday komponentlardan iboratligini bilamiz, biz quyidagilarni bajarishimiz kerak: 1) asosiy shifrlash funksiyasi haqiqatda mavjudligiga ishonch hosil qilish; 2) shifrlash kalitlari qanday yaratilishi/saqlanishini bilib oling; 3) PIN kod aniq qayerda tekshirilishini toping.
Buning uchun men quyidagi amallarni bajardim:
SPI flesh-diskidan ma'lumotlar to'plamini oldi;
PSoC flesh-diskidan ma'lumotlarni tashlashga harakat qildi;
Cypress PSoC va JMS539 o'rtasidagi aloqada aslida bosilgan tugmalar mavjudligi tasdiqlandi;
Parolni o'zgartirganda, SPI flesh-diskida hech narsa yozilmasligiga ishonch hosil qildim;
8051 proshivkasini JMS539 dan qaytarish uchun juda dangasa edi.
3.1. SPI flesh-diskidan ma'lumotlarni yig'ish
Ushbu protsedura juda oddiy:
problarni flesh-diskning oyoqlariga ulang: CLK, MOSI, MISO va (ixtiyoriy) EN;
Mantiqiy analizator yordamida sniffer bilan aloqani "sniff" qiling (men ishlatganman Saleae Logic Pro 16);
SPI protokolini dekodlash va natijalarni CSV ga eksport qilish;
foydalaning decode_spi.rbnatijalarni tahlil qilish va dump olish.
Shuni esda tutingki, ushbu yondashuv JMS539 kontrollerida ayniqsa yaxshi ishlaydi, chunki bu kontroller ishga tushirish bosqichida flesh-diskdan barcha proshivkalarni yuklaydi.
SPI flesh-diskidan axlatni olib, men uning yagona vazifasi 8051 mikrokontrolleriga o'rnatilgan JMicron boshqaruv moslamasi uchun dasturiy ta'minotni saqlash degan xulosaga keldim. Afsuski, SPI flesh-diskini olib tashlash foydasiz bo'lib chiqdi:
PIN-kod o'zgartirilganda, flesh-disk chiqindisi bir xil bo'lib qoladi;
Ishga tushirish bosqichidan so'ng, qurilma SPI flesh-diskiga kirmaydi.
3.2. Xushbo'y aloqalar
Bu qiziqtirgan vaqt/mazmun uchun aloqalarni tekshirish uchun qaysi chip mas'ul ekanligini aniqlashning bir usuli. Biz allaqachon bilganimizdek, USB-SATA kontrolleri Cypress PSoC LCD-ga CN1 ulagichi va ikkita lenta orqali ulangan. Shuning uchun biz zondlarni uchta mos keladigan oyoqqa ulaymiz:
P4, umumiy kirish/chiqish;
P11, I2C SCL;
P13, I2C SDA.
Keyin biz Saleae mantiqiy analizatorini ishga tushiramiz va klaviaturaga kiritamiz: "123456~". Natijada biz quyidagi diagrammani ko'ramiz.
Unda biz uchta ma'lumot almashish kanalini ko'rishimiz mumkin:
P4 kanalida bir nechta qisqa portlashlar mavjud;
P11 va P13 da - deyarli uzluksiz ma'lumotlar almashinuvi.
P4 kanalidagi birinchi boshoqni (oldingi rasmdagi ko'k to'rtburchak) kattalashtirib, biz quyidagilarni ko'ramiz:
Bu erda siz P4-da deyarli 70 ms monoton signal mavjudligini ko'rishingiz mumkin, bu menga dastlab soat signali rolini o'ynagandek tuyuldi. Biroq, taxminlarimni tekshirishga biroz vaqt sarflaganimdan so'ng, men bu soat signali emas, balki tugmalar bosilganda tvitterga chiqadigan audio oqim ekanligini aniqladim. Shuning uchun signalning ushbu bo'limining o'zi biz uchun foydali ma'lumotlarni o'z ichiga olmaydi. Biroq, u PSoC tugmani bosishni qachon qayd etishini bilish uchun indikator sifatida ishlatilishi mumkin.
Biroq, so'nggi P4 audio oqimi biroz boshqacha: bu "yaroqsiz PIN" uchun audio!
Klaviatura bosish grafigiga qaytsak, oxirgi audio oqim grafigini kattalashtirib (yana ko'k to'rtburchakka qarang), biz quyidagilarni olamiz:
Bu erda biz P11 da monoton signallarni ko'ramiz. Demak, bu soat signali kabi ko'rinadi. Va P13 ma'lumotdir. Ovozli signal tugagandan so'ng naqsh qanday o'zgarganiga e'tibor bering. Bu erda nima sodir bo'lishini ko'rish qiziq bo'lar edi.
Ikki sim bilan ishlaydigan protokollar odatda SPI yoki I2C bo'lib, Cypress-dagi texnik tavsifda bu pinlar I2C ga to'g'ri kelishi aytiladi, biz ko'rib turganimizdek, bu bizning holatlarimizda to'g'ri:
USB-SATA chipseti kalitning holatini o'qish uchun PSoC-ni doimiy ravishda so'raydi, sukut bo'yicha "0". Keyin, "1" tugmachasini bosganingizda, u "1" ga o'zgaradi. Agar noto'g'ri PIN kod kiritilgan bo'lsa, "~" tugmasini bosgandan so'ng darhol yakuniy uzatish boshqacha bo'ladi. Biroq, hozircha men u erda aslida nima uzatilayotganini tekshirmadim. Lekin bu shifrlash kaliti bo'lishi dargumon deb o'ylayman. Qanday bo'lmasin, PSoC ichki dasturiy ta'minotini qanday olib tashlaganimni tushunish uchun keyingi bo'limga qarang.