Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat

Reversimi dhe hakerimi i disqeve tĂ« jashtĂ«m me vetĂ«shifrim ka qenĂ« njĂ« hob i vjetĂ«r pĂ«r mua. NĂ« tĂ« shkuarĂ«n kam pasur mundĂ«sinĂ« tĂ« punoj me modelet si Zalman VE-400, Zalman ZM-SHE500, Zalman ZM-VE500. SĂ« fundmi, njĂ« koleg mĂ« solli njĂ« ekspozitĂ« tjetĂ«r: Patriot (Aigo) SK8671, i cili Ă«shtĂ« ndĂ«rtuar me njĂ« dizajn tipik – njĂ« ekran LCD dhe njĂ« tastierĂ« pĂ«r hyrjen e PIN-it. Ja se çfarĂ« ndodhi...

1. Hyrje
2. Arkitektura harduerike
– 2.1. Fletorja e bazĂ«s
– 2.2. Fletorja e ekranit LCD
– 2.3. Fletorja e tastierĂ«s
– 2.4. ShikojmĂ« kabllot
3. Renditja e hapave të sulmit
– 3.1. Marrim dump-in e tĂ« dhĂ«nave nga SPI-flash
– 3.2. VĂ«shtrojmĂ« komunikimet

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat


1. Hyrje

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat
Kasa

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat
Paketimi

Qasja në të dhënat që ruhen në disk, të cilat supozohet se janë të enkriptuara, bëhet pas hyrjes së PIN-it. Disa shënime hyrëse për këtë pajisje:

  • PĂ«r tĂ« ndryshuar PIN-in, duhet tĂ« shtypni F1 para çeljes;
  • PIN-i duhet tĂ« pĂ«rmbajĂ« midis 6 dhe 9 numrash;
  • Pas 15 pĂ«rpjekjeve tĂ« gabuara, disku fshihet.

2. Arkitektura harduerike

Fillimisht hapim pajisjen në copa për të kuptuar se nga cilat komponente përbëhet. Aktiviteti më i mërzitshëm është hapja e korpusit: shumë vida mikroskopike dhe plastike. Pas hapjes së korpusit, shohim këtë (vini re lidhësin pesëkontaktësh të cilin e kam përshkruar):

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat

2.1. Fletorja e bazës

Fletorja e bazës është mjaft e thjeshtë:

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat

Pjesët më të dukshme të saj (shih nga lart poshtë):

  • lidhĂ«si pĂ«r ekranin LCD (CN1);
  • buzzeri (SP1);
  • Pm25LD010 (specifikimi) SPI-flash (U2);
  • kontrolluesi Jmicron JMS539 (specifikimi) pĂ«r USB-SATA (U1);
  • lidhĂ«si USB 3 (J1).

SPI-flashi ruan firmware për JMS539 dhe disa konfigurime.

2.2. Fletorja e ekranit LCD

Në fletoren e ekranit LCD nuk ka asgjë interesante.

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat
Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat

Vetëm:

  • Ekran LCD me origjinĂ« tĂ« panjohur (nĂ« tĂ« vĂ«rtetĂ« me setin e fontĂ«ve kinezĂ«); me menaxhim rrjedhĂ«s;
  • konektori i bandes pĂ«r fletoren e tastierĂ«s.

2.3. Fletorja e tastierës

Gjatë shqyrtimit të fletorës së tastierës, gjërat marrin një kthesë më interesante.

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat

KĂ«tu, nĂ« anĂ«n e pasme, shohim njĂ« konektor bande, si dhe Cypress CY8C21434 – mikro-kontrolleri PSoC 1 (nga tani e tutje do ta quajmĂ« thjesht PSoC)

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat

CY8C21434 pĂ«rdor njĂ« grup instrukcionesh M8C (shih. dokumentacion). NĂ« [faqen e produktit]( (http://www.cypress.com/part/cy8c21434-24ltxi) thuhet se mbĂ«shtet teknologjinĂ« CapSense (zgjidhje nga Cypress pĂ«r tastiera kapacitive). KĂ«tu shihet porta pesĂ«kontakte e sprajtuar prej meje – ky Ă«shtĂ« njĂ« qasje standarde pĂ«r tĂ« lidhur njĂ« programator tĂ« jashtĂ«m pĂ«rmes interfejsit ISSP.

2.4. TĂ« shohim kabllot

Le të kuptojmë çfarë është e lidhur këtu. Për këtë, mjafton të testojmë kabllot me multimetër:

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat

Shpjegime për këtë skemë të vizatuar në shenjë:

  • PSoC pĂ«rshkruhet nĂ« specifikimin teknik;
  • porti tjetĂ«r, ai qĂ« Ă«shtĂ« nĂ« tĂ« djathtĂ« – interfejsi ISSP, i cili pĂ«r fat tĂ« keq korrespondon me atĂ« qĂ« Ă«shtĂ« shkruar pĂ«r tĂ« nĂ« internet;
  • porti mĂ« i djathtĂ« – Ă«shtĂ« terminali pĂ«r lidhĂ«sin e bandes sĂ« tastierĂ«s;
  • rektanguli i zi – skema e portĂ«s CN1, e destinuar pĂ«r tĂ« lidhur pllakĂ«n kryesore me pllakat LCD. P11, P13 dhe P4 janĂ« tĂ« lidhura me pins PSoC 11, 13 dhe 4, nĂ« pllakat LCD.

3. Renditja e hapave të sulmit

Tani që e dimë cilët komponentë përbëjnë këtë ruajtës, na nevojitet: 1) të sigurohemi që funksionaliteti bazë i enkriptimit është vërtet i pranishëm; 2) të dimë si gjenerohen/salohen çelësat e enkriptimit; 3) të gjejmë se ku kontrollohet PIN kodi.

Për këtë kam ndjekur hapat e mëposhtëm:

  • kam marrĂ« dump tĂ« tĂ« dhĂ«nave tĂ« SPI-flash;
  • kam provuar tĂ« marr dump tĂ« tĂ« dhĂ«nave tĂ« PSoC-flash;
  • kam konfirmuar se shkĂ«mbimi i tĂ« dhĂ«nave midis Cypress PSoC dhe JMS539 nĂ« fakt pĂ«rmban çelĂ«sat e shtypur;
  • kam verifikuar se kur ndryshohet fjala kalim, nuk ka asgjĂ« qĂ« rimarrĂ« nĂ« SPI-flash;
  • isha shumĂ« lenient pĂ«r tĂ« rĂ«nĂ« nĂ« rrethin e rforcimi tĂ« 8051-firmware nga JMS539.

3.1. Merrni dump të të dhënave të SPI-flash

Kjo procedurë është shumë e thjeshtë:

  • lidheni sondat me pins e flashit: CLK, MOSI, MISO dhe (opcionalisht) EN;
  • "spiunoni" komunikimet me ndihmĂ«n e snifferit, duke pĂ«rdorur njĂ« analizator logjik (kam pĂ«rdorur Saleae Logic Pro 16);
  • dekodoni protokollin SPI dhe eksportoni rezultatet nĂ« CSV;
  • pĂ«rdorni decode_spi.rb, pĂ«r tĂ« analizuar rezultatet dhe marrĂ« dump.

Vini re se ky qasje në rastin e kontrolluesit JMS539 funksionon veçanërisht mirë, pasi ky kontrollues në fazën e inicializimit ngarkon nga flashi të gjithë firmware.

$ decode_spi.rb boot_spi1.csv dump
0.039776 : WRITE DISABLE
0.039777 : JEDEC READ ID
0.039784 : ID 0x7f 0x9d 0x21
---------------------
0.039788 : READ @ 0x0
0x12,0x42,0x00,0xd3,0x22,0x00,
[...]
$ ls --size --block-size=1 dump
49152 dump
$ sha1sum dump
3d9db0dde7b4aadd2b7705a46b5d04e1a1f3b125 dump

Duke marre një dump nga SPI-flash, arrita në përfundimin se detyra e saj e vetme është të ruajë firmware për kontrolluesin JMicron, i cili është i integruar në mikrocontroller-in 8051. Fatkeqësisht, marrja e dump-it të SPI-flash ishte e kote:

  • kur ndĂ«rron kodin PIN, dump-i i flash mbetet i njĂ«jtĂ«;
  • pas fazĂ«s sĂ« inicializimit, pajisja nuk i qaset SPI-flash.

3.2. Analizojmë komunikimet

Ky është një nga mënyrat për të zbuluar se cili çip është përgjegjës për verifikimin e komunikimeve për të dhënat/kohet e interesit. Siç e dimë, kontrolluesi USB-SATA është i lidhur me Cypress PSoC, përmes përcjellësit CN1 dhe dy shiritave. Prandaj, lidhim sondat në tre këmbët përkatëse:

  • P4, hyrje/nisje e pĂ«rbashkĂ«t;
  • P11, I2C SCL;
  • P13, I2C SDA.

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat

Pastaj fillojmĂ« analizuesin logjik Saleae, dhe shkruajmĂ« nĂ« tastierĂ«: “123456~”. Si rezultat shohim diagramin e mĂ«poshtĂ«m.

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat

Në të mund të shohim tre kanale shkëmbimi të dhënash:

  • nĂ« kanalin P4 disa shpĂ«rthime tĂ« shkurtra;
  • nĂ« P11 dhe P13 – shkĂ«mbim tĂ« dhĂ«nash pothuajse tĂ« vazhdueshĂ«m.

Duke rritur shpërthimin e parë në kanalin P4 (drejtëkëndëshi blu i figurës së mëparshme), shohim:

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat

Këtu duket se në P4 ka rreth 70ms sinjal të njëtrajtshëm, i cili për më parë më dukej si sinjal sinhronik. Megjithatë, pasi kalova ca kohë për të verifikuar supozimin tim, zbulova se ky nuk është një sinjal sinhronik, por një rrjedhë audio që gjenerohet në buzëkuq kur shtypen butonat. Prandaj, vetë ky segment sinjali nuk përmban informacione të dobishme për ne. Megjithatë, mund të përdoret si një indikator, - për të ditur momentin kur PSoC regjistron shtypjen e butonit.

Megjithatë, rrjedha e fundit audio e kanalit P4 dallohet pak nga të tjerat: ky është zëri për "kodin PIN të gabuar"!

Duke u kthyer në diagramin e shtypjes së butonave, kur rrisim diagramin e rrjedhës së fundit audio (shihni përsëri drejtëkëndëshin blu), marrim:

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat

Këtu shohim sinjale të njëtrajtshme në P11. Prandaj duket se ky është sinjali sinhronik. Ndërsa P13 është të dhëna. Vëreni sesi modeli ndryshon pas përfundimit të sinjalit audio. Do të ishte interesante të shihnim se çfarë ndodh këtu.

Protokollet që punojnë me dy tela zakonisht janë SPI ose I2C, dhe në specifikimin teknik për Cypress thotë se këto kontakte i përkasin I2C, të cilat siç duket janë të sakta edhe për rastin tonë:

Reversimi dhe hakerimi i disqit të jashtëm HDD me vetëshifrim Aigo. Pjesa 1: Ndajmë copat

Çipseti USB-SATA bĂ«n vazhdimisht pyetje pĂ«r PSoC – pĂ«r tĂ« lexuar gjendjen e çelĂ«sit, e cila nĂ« mĂ«nyrĂ« tĂ« paracaktuar Ă«shtĂ« "0". MĂ« pas, kur shtypet çelĂ«si "1", ndryshon nĂ« "1". Transmisioni pĂ«rfundimtar, menjĂ«herĂ« pas shtypjes sĂ« “~” ndryshon, nĂ«se Ă«shtĂ« futur njĂ« kod pin tĂ« gabuar. MegjithatĂ«, deri tani nuk kam kontrolluar se çfarĂ« po transmetohet nĂ« pĂ«rputhje. Por dyshoj se kjo Ă«shtĂ« çelĂ«si i enkriptimit. Çdo mĂ«nyrĂ«, shiko seksionin tjetĂ«r pĂ«r tĂ« kuptuar si kam hequr dump-in e firmware-it tĂ« brendshĂ«m PSoC.

Burimi: habr.com

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster