Kingston 16GB USB 983AA89276 / SolidStateSystems

Image

Šī USB atmiņa ir monolīta, kas ievietota metāla korpusā. Lai to izņemtu, jāizvelk plastmasas ķīlis.

Image

Kontakti NAND pieslēgumam ir 6x6. Šoreiz bija jāpielodējas pie kontaktiem.

Image

  

  • Model: Monolith DDR
  • Vendor: Toshiba
  • Identifier: 983AA89276 
  • Page size: 9216 bytes
  • Block size: 2377728 bytes (258 pages)
Image

 Šai atmiņai ir viens kristāls. Nolasot atmiņu, iegūstam apmēram 20GB lielu datu masīvu.

BCR - bojāto baitu kolonna

Image

Aplūkojot bitu karti redzams, vertikāli ar nullēm aizpildīts taisnstūris, kura platums ir 2 baiti. Tas ir bad-column - no aprites izņemts datu apgabals.

Tā augstums norāda uz loģiskā bloka izmēru, t.i., 258 lapas (horizontālās bitu līnijas). Tas ļauj sarēķināt bloka izmēru 258 x 9216 = 2377728 baiti.

Attēlā redzams, ka bad-column izraisa nobīdi, kas ir jānovērš, lai sekmīgi turpinātu datu apstrādi. Redzams arī, ka pa vertikāli šis "caurums" atkārtojas ik pēc 4 blokiem. Tas norāda uz 4 plāksnēm (ang. plane).

Izmantojot BCR bloku, izņem ārā šīs kolonnas.

Lapas struktūra

Lai darbotos ar datu transformēšanu, ir jādefinē lapas struktūra. Tas ir, jāpasaka, kur atrodas lietotāja datu sektori, kur SA (servisa apgabals), kur ECC (kļūdu korekcijas kods).

Image

XOR atslēga

XOR atslēgas meklēšana bija interesanta ar to, ka sākumā, meklējot pēc BCR pārveides, neuzrādīja nevienu atslēgu. Taču, izmantojot baitu inversiju, tika atpazītas daudz atslēgas ar C20DC3 parakstu.

Pielietojot XOR atslēgu, inversija nav nepieciešama. Atslēga no datu bāzes ir SSS6698(9216b_258p_1140_xoredSA_ECC)_C20DC3.xor

SolidStateSystems(SSS) kontrolieris. Tā kā kontrolieriem ir savas īpatnības, tas palīdzēs sakārtot blokus loģiskā secībā.

Image

Pēc XOR transformācijas redzama lietotāju datu struktūra un dokumentu failos var salasīt tekstu. Tas norāda, ka lietas virzās uz pareizo pusi.

Vienīgi SA izskatās neierasti. SSS kontrolieri neizmanto LBN (loģisko bloku numerāciju).

ECC

ECC tika atrasts datu bāzē. SolidStateSystem(SSS)\SSS6698_9216(ecc112b)_8_X.bch

Image

Pēc tam, izmantojot ECC, tika izkoriģēts datu masīvs un izlabotas bitu kļūdas.

Tukšās lapas

Aplūkojot uzmanīgi blokus, var redzēt, ka tie ir atdalīti ar baltu līniju. Tā ir lapa, kura satur nulles vērtības. Ir skaidrs, ka šī lapa nepieder pie datiem un ir jāizņem ārā.

Image

To var izdarīt ar Offset rīku. 

  • Area size: 2377728 (bloka izmērs).
  • Offset 1: 0 - 9216
  • Offset 2: 2368512 - 9216

Pēc šīs darbības loģiskā bloka izmērs tagad ir 256. Struktūra atbilstoši jāpielabo, norādot jauno bloka izmēru - 2359296 (256 x 9216).

Pair

Nākamā transformācija balstās uz novērojumu, ka četros sekojošos blokos dati izskatās līdzīgi. Lai pārbaudītu līdzību, ņemam četrus Offset rīkus un "izgriežam" katru ceturto bloku.

Tagad šos blokus var novietot blakus un salīdzināt.

Image

Kā redzams attēlā, bloki ir līdzīgi. Tas nozīmē, ka jāpielieto Pair pārveidotājs ar šādiem parametriem.

  • Number of planes 4
  • Moveable block size 9216 (page size)
  • Area size 9437184 (block size x 4)

Logic image

Pēdējais solis - loģiskais image, kur pareizā secībā sakārtoti bloki. Kā jau augstāk tika minēts, SSS kontrolieris neizmanto LBN. Šajā gadījumā nosakām blokus, kuri satur datus, un redzam, ka SA sākas ar 00B8.

Pēc šīs vērtības atlasam tikai šos blokus. Tālāk laižam Assembler un skatāmies, kādus failus izdevās sakombinēt.

Šajā gadījumā izdevās atgūt apmēram 5GB attēlu.