ProHoster > Blog > Administrazioa > Aigo autoenkriptatutako kanpoko HDD diskoa alderantzikatu eta hackeatzea. 1. zatia: zatitan disekzioa
Aigo autoenkriptatutako kanpoko HDD diskoa alderantzikatu eta hackeatzea. 1. zatia: zatitan disekzioa
Kanpoko auto-enkriptatutako diskoak alderantzikatu eta hackeatzea nire zaletasun zaharra da. Iraganean, Zalman VE-400, Zalman ZM-SHE500, Zalman ZM-VE500 bezalako modeloekin praktikatzeko aukera izan nuen. Duela gutxi, lankide batek beste erakusketa bat ekarri dit: Patriot (Aigo) SK8671, diseinu tipiko baten arabera eraikitakoa - LCD adierazle bat eta PIN kodea sartzeko teklatua. Hortik atera zena...
Diskoan gordetako datuetarako sarbidea, ustez zifratuta dagoena, PIN kodea sartu ondoren egiten da. Gailu honi buruzko sarrerako ohar batzuk:
PIN kodea aldatzeko, F1 sakatu behar duzu desblokeatu aurretik;
PIN kodeak 6 eta 9 zifra izan behar ditu;
15 saiakera okerren ondoren, diskoa garbitzen da.
2. Hardware-arkitektura
Lehenik eta behin, gailua zatitan banatuko dugu zer osagaiz osatuta dagoen ulertzeko. Lanik neketsuena kaxa irekitzea da: torloju mikroskopiko asko eta plastikoa. Kaxa ireki ondoren, honako hau ikusiko dugu (arreta jarri soldatu dudan bost pineko konektoreari):
SPI flash unitateak JMS539rako firmwarea eta ezarpen batzuk gordetzen ditu.
2.2. LCD adierazle plaka
Ez dago ezer nabarmenik LCD taulan.
Bakarrik:
Jatorri ezezaguneko LCD adierazlea (seguruenik txinatar letra-tipo batekin); kontrol sekuentzialarekin;
Teklatu plakarako zinta-konektorea.
2.3. Teklatuaren taula
Teklatuaren taula aztertzean, gauzak buelta interesgarriagoa hartzen dute.
Hemen, atzeko aldean, zinta-konektore bat ikusten dugu, baita Cypress CY8C21434 PSoC 1 mikrokontrolagailu bat ere (aurrerantzean PSoC deituko diogu besterik gabe)
CY8C21434-k M8C instrukzio-multzoa erabiltzen du (ikus dokumentazioa). [Produktu-orrian]( (http://www.cypress.com/part/cy8c21434-24ltxi) teknologia onartzen duela adierazten da CapSense (Cypress-en irtenbidea, teklatu kapazitiboetarako). Hemen soldatutako bost pin konektorea ikus dezakezu - ISSP interfazearen bidez kanpoko programatzaile bat konektatzeko ikuspegi estandarra da.
2.4. Hariei begira
Azter dezagun zer dagoen hemen konektatuta. Horretarako, probatu hariak multimetro batekin:
Belaunean marraztutako diagrama honen azalpenak:
PSoC zehaztapen teknikoan deskribatzen da;
hurrengo konektorea, eskuinekoa, ISSP interfazea da, patuaren borondatez Interneten horri buruz idatzitakoarekin bat datorrena;
Eskuineko konektorea teklatuaren plakaren zinta-konektorearen terminala da;
Laukizuzen beltza CN1 konektorearen marrazkia da, plaka nagusia LCD plaka konektatzeko diseinatua. P11, P13 eta P4 PSoC 11, 13 eta 4 pinetara konektatuta daude, LCD plakan.
3. Eraso-urratsen sekuentzia
Orain, disko hau zer osagaiz osatuta dagoen dakigunez, honako hauek egin behar ditugu: 1) oinarrizko enkriptazio funtzionaltasuna benetan dagoela ziurtatu; 2) enkriptatzeko gakoak nola sortzen/gordetzen diren jakin; 3) bilatu PIN kodea zehazki non egiaztatuko den.
Horretarako pauso hauek egin nituen:
datu-iraulketa bat hartu zuen SPI pendrive batetik;
PSoC flash drive batetik datuak botatzen saiatu da;
Cypress PSoC-ren eta JMS539-ren arteko komunikazioak benetan sakatutako teklak dituela egiaztatu du;
Ziurtatu nuen pasahitza aldatzean ez dela ezer gainidatzi SPI pendrivean;
alferra zen JMS8051-ren 539 firmwarea alderantzikatzeko.
3.1. SPI flash drive batetik datu-iraulketa bat hartzea
Prozedura hau oso erraza da:
konektatu zundak pendrivearen hanketara: CLK, MOSI, MISO eta (aukerakoa) EN;
"sniff" komunikazioak sniffer batekin analizatzaile logiko bat erabiliz (erabiltzen dut Saleae Logic Pro 16);
deskodetu SPI protokoloa eta esportatu emaitzak CSVra;
aprobetxatu decode_spi.rbemaitzak analizatu eta zabortegi bat lortzeko.
Kontuan izan ikuspegi honek JMS539 kontrolagailuaren kasuan bereziki ondo funtzionatzen duela, kontrolagailu honek flash driveko firmware guztia hasierako fasean kargatzen duelako.
SPI flash drivetik zabortegi bat hartu ondoren, bere zeregin bakarra 8051 mikrokontrolagailuan integratuta dagoen JMicron kontrol-gailuaren firmwarea gordetzea dela ondorioztatu nuen. Zoritxarrez, SPI pendrivea botatzea alferrikakoa izan zen:
PIN kodea aldatzen denean, flash unitatearen iraulketa berdina izaten jarraitzen du;
Hasierako fasearen ondoren, gailua ez da SPI flash unitatera sartzen.
3.2. Komunikazioak sniffing
Hau da, zein txipa den interesa duen denbora/edukiak egiaztatzeko ardura duen jakiteko modu bat. Dagoeneko dakigunez, USB-SATA kontroladorea Cypress PSoC LCD-ra konektatuta dago CN1 konektorearen eta bi zintaren bidez. Horregatik, zundak dagozkien hiru hanketara konektatzen ditugu:
P4, sarrera/irteera orokorra;
P11, I2C SCL;
P13, I2C SDA.
Ondoren, Saleae analizatzaile logikoa abiarazten dugu eta teklatuan sartuko dugu: "123456~". Ondorioz, hurrengo diagrama ikusiko dugu.
Bertan hiru datu trukerako kanal ikus ditzakegu:
hainbat leherketa labur daude P4 kanalean;
P11 eta P13-n - ia etengabeko datu-trukea.
P4 kanaleko lehen erpinera handituz (aurreko irudian laukizuzen urdina), honako hau ikusiko dugu:
Hemen ikus dezakezu P4-n seinale monotono baten ia 70ms dagoela, hasiera batean erlojuaren seinale baten papera betetzen zuela iruditu zitzaidan. Hala ere, nire asmakizuna egiaztatzen denbora pixka bat eman ondoren, hau ez dela erloju-seinalea, teklak sakatzean txioterrera ateratzen den audio-korrontea baizik. Beraz, seinalearen atal honek berak ez du informazio baliagarria guretzat. Hala ere, adierazle gisa erabil daiteke PSoC-k tekla sakatzea noiz erregistratzen duen jakiteko.
Hala ere, P4 azken audio-jarioa apur bat desberdina da: "PIN baliogabea"ren audioa da!
Teklatu-grafikora itzuliz, azken audio-korrontearen grafikoa handituz (ikusi berriro laukizuzen urdina), lortuko dugu:
Hemen seinale monotonoak ikusten ditugu P11n. Beraz, badirudi hau erlojuaren seinalea dela. Eta P13 datuak dira. Kontuan izan nola aldatzen den eredua bip-a amaitu ondoren. Interesgarria litzateke hemen zer gertatzen den ikustea.
Bi hariekin funtzionatzen duten protokoloak SPI edo I2C izan ohi dira, eta Cypress-en zehaztapen teknikoak dio pin hauek I2Cri dagozkiola, gure kasuan egia dela ikusten duguna:
USB-SATA chipsetak PSoC etengabe galdetzen du gakoaren egoera irakurtzeko, hau da, lehenespenez "0" dena. Ondoren, "1" tekla sakatzen duzunean, "1" bihurtzen da. “~” sakatu eta berehala azken transmisioa desberdina da PIN kodea okerra sartzen bada. Hala ere, momentuz ez dut egiaztatu zer transmititzen den bertan. Baina susmoa dut hori nekez izango dela zifratze-gako bat. Dena den, ikusi hurrengo atala PSoC barne firmwarea nola kendu nuen ulertzeko.