Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean

Mbalikake lan hacking drive enkripsi dhiri eksternal minangka hobi lawas. Ing jaman kepungkur, aku duwe kesempatan kanggo latihan karo model kaya Zalman VE-400, Zalman ZM-SHE500, Zalman ZM-VE500. Mung bubar, kolega nggawa kula pameran liyane: Patriot (Aigo) SK8671, sing dibangun miturut desain khas - indikator LCD lan keyboard kanggo ngetik kode PIN. Sing metu saka iku…

1. Pambuka
2. Arsitektur hardware
– 2.1. Papan utama
– 2.2. Papan indikator LCD
– 2.3. Papan keyboard
– 2.4. Ndeleng kabel
3. Urutan langkah serangan
– 3.1. Njupuk dump data saka flash drive SPI
– 3.2. Sniffing komunikasi

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean


1. Pambuka

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean
Omah

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean
Упаковка

Akses menyang data sing disimpen ing disk, sing mesthine dienkripsi, ditindakake sawise ngetik kode PIN. Sawetara cathetan pambuko ing piranti iki:

  • Kanggo ngganti kode PIN, sampeyan kudu mencet F1 sadurunge mbukak kunci;
  • Kode PIN kudu ngemot saka 6 nganti 9 digit;
  • Sawise 15 nyoba salah, disk dibusak.

2. Arsitektur hardware

Pisanan, kita mbedakake piranti kasebut dadi bagean kanggo mangerteni komponen apa wae. Tugas sing paling mboseni yaiku mbukak kasus: akeh sekrup mikroskopis lan plastik. Sawise mbukak kasus kasebut, kita bisa ndeleng ing ngisor iki (nggatekake konektor limang pin sing dak solder):

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean

2.1. Papan utama

Papan utama cukup prasaja:

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean

Bagéan sing paling misuwur (ndeleng saka ndhuwur nganti ngisor):

  • konektor kanggo indikator LCD (CN1);
  • tweeter (SP1);
  • Pm25LD010 (spesifikasi) SPI flash drive (U2);
  • pengontrol Jmicron JMS539 (spesifikasi) kanggo USB-SATA (U1);
  • Konektor USB 3 (J1).

SPI flash drive nyimpen perangkat kukuh kanggo JMS539 lan sawetara setelan.

2.2. Papan indikator LCD

Ora ana sing luar biasa ing papan LCD.

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean
Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean

mung:

  • Indikator LCD sing ora dingerteni asale (mbokmenawa nganggo set font Cina); kanthi kontrol urutan;
  • Konektor pita kanggo papan keyboard.

2.3. Papan keyboard

Nalika mriksa papan keyboard, ana owah-owahan sing luwih menarik.

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean

Ing sisih mburi, kita ndeleng konektor pita, uga mikrokontroler Cypress CY8C21434 PSoC 1 (sabanjure mung bakal diarani PSoC)

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean

CY8C21434 nggunakake set instruksi M8C (ndeleng dokumentasi). Ing [halaman produk]((http://www.cypress.com/part/cy8c21434-24ltxi) dituduhake yen ndhukung teknologi kasebut CapSense (solusi saka Cypress, kanggo keyboard kapasitif). Kene sampeyan bisa ndeleng konektor limang pin aku soldered - iki pendekatan standar kanggo nyambungake programmer external liwat antarmuka ISSP.

2.4. Ndeleng kabel

Ayo ngerteni apa sing disambungake ing kene. Kanggo nindakake iki, mung nyoba kabel karo multimeter:

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean

Panjelasan kanggo diagram iki digambar ing dhengkul:

  • PSoC diterangake ing spesifikasi teknis;
  • konektor sabanjuré, siji ing sisih tengen, iku antarmuka ISSP, kang, miturut karsane nasib, cocog karo apa sing ditulis ing Internet;
  • Konektor paling tengen yaiku terminal kanggo konektor pita menyang papan keyboard;
  • Persegi panjang ireng minangka gambar konektor CN1, dirancang kanggo nyambungake papan utama menyang papan LCD. P11, P13 lan P4 disambungake menyang pin PSoC 11, 13 lan 4, ing papan LCD.

3. Urutan langkah serangan

Saiki kita ngerti apa komponen drive iki, kita kudu: 1) priksa manawa fungsi enkripsi dhasar bener saiki; 2) ngerteni carane kunci enkripsi digawe / disimpen; 3) golek ngendi persis kode PIN bakal dicenthang.

Kanggo nindakake iki, aku nindakake langkah-langkah ing ngisor iki:

  • njupuk mbucal data saka flash drive SPI;
  • nyoba mbucal data saka flash drive PSoC;
  • diverifikasi yen komunikasi antarane Cypress PSoC lan JMS539 bener ngemot keystrokes;
  • Aku nggawe manawa nalika ngganti tembung sandhi, ora ana sing ditindhes ing flash drive SPI;
  • kesed kanggo mbalikke 8051 perangkat kukuh saka JMS539.

3.1. Njupuk dump data saka flash drive SPI

Prosedur iki prasaja banget:

  • nyambungake probe menyang sikil flash drive: CLK, MOSI, MISO lan (opsional) EN;
  • Komunikasi "sniff" karo sniffer nggunakake penganalisa logika (aku nggunakake Saleae Logic Pro 16);
  • decode protokol SPI lan asil ekspor menyang CSV;
  • njupuk kauntungan saka decode_spi.rbkanggo parse asil lan njaluk mbucal.

Wigati dimangerteni manawa pendekatan iki bisa digunakake utamane ing kasus pengontrol JMS539, amarga pengontrol iki ngemot kabeh perangkat kukuh saka flash drive ing tahap wiwitan.

$ 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

Sawise njupuk mbucal saka SPI flash drive, Aku teka menyang kesimpulan sing mung tugas kanggo nyimpen perangkat kukuh kanggo piranti kontrol JMicron, kang dibangun ing 8051 mikrokontroler. Sayange, mbuwang SPI flash drive ora ana gunane:

  • nalika kode PIN diganti, dump flash drive tetep padha;
  • Sawise tahap inisialisasi, piranti ora ngakses flash drive SPI.

3.2. Sniffing komunikasi

Iki minangka salah sawijining cara kanggo nemokake chip sing tanggung jawab kanggo mriksa komunikasi kanggo wektu / isi kapentingan. Kaya sing wis dingerteni, pengontrol USB-SATA disambungake menyang LCD Cypress PSoC liwat konektor CN1 lan rong pita. Mulane, kita nyambungake probe menyang telung sikil sing cocog:

  • P4, input/output umum;
  • P11, I2C SCL;
  • P13, I2C SDA.

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean

Banjur kita miwiti penganalisa logika Saleae lan ketik ing keyboard: "123456~". Akibaté, kita ndeleng diagram ing ngisor iki.

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean

Ing kana kita bisa ndeleng telung saluran pertukaran data:

  • ana sawetara bledosan singkat ing saluran P4;
  • ing P11 lan P13 - exchange data meh terus.

Zoom ing spike pisanan ing saluran P4 (persegi panjang biru ing gambar sadurunge), kita ndeleng ing ngisor iki:

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean

Ing kene sampeyan bisa ndeleng manawa ing P4 ana meh 70ms sinyal monoton, sing pisanan katon minangka sinyal jam. Nanging, sawise mbuwang sawetara wektu mriksa guess sandi, aku katutup sing iki dudu sinyal jam, nanging stream audio sing output kanggo tweeter nalika tombol dipencet. Mulane, bagean sinyal kasebut dhewe ora ngemot informasi sing migunani kanggo kita. Nanging, bisa digunakake minangka indikator kanggo ngerti nalika PSoC ndhaptar penet tombol.

Nanging, stream audio P4 paling anyar rada beda: iku audio kanggo "PIN ora valid"!

Bali menyang grafik keystroke, nggedhekake ing grafik stream audio pungkasan (ndeleng persegi panjang biru maneh), kita entuk:

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean

Ing kene kita ndeleng sinyal monoton ing P11. Dadi katon kaya iki sinyal jam. Lan P13 minangka data. Elinga carane pola owah-owahan sawise bip rampung. Bakal menarik kanggo ndeleng apa sing kedadeyan ing kene.

Protokol sing bisa digunakake karo rong kabel biasane SPI utawa I2C, lan spesifikasi teknis ing Cypress nyatakake yen pin kasebut cocog karo I2C, sing kita deleng ing kasus kita:

Mbalikake lan hacking Aigo poto-enkripsi drive HDD external. Bagean 1: Dissecting menyang bagean

Chipset USB-SATA terus-terusan jajak pendapat PSoC kanggo maca status kunci, sing minangka standar "0". Banjur, nalika sampeyan menet tombol "1", ganti dadi "1". Transmisi pungkasan sanalika sawise mencet "~" beda yen kode PIN salah ngetik. Nanging, saiki aku durung mriksa apa sing ditularake ing kana. Nanging aku curiga manawa iki ora mungkin dadi kunci enkripsi. Oalah, ndeleng bagean sabanjure kanggo ngerti carane mbusak perangkat kukuh internal PSoC.

Source: www.habr.com

Add a comment