Jak odczytać zawartość pamięci wewnętrznej stacji multimedialnej Phantom 1331G
dd
. Architektura i lokalizacja pamięci
• Phantom DVM-1331G i6 pracuje pod Androidem 4/5 na SoC klasy Rockchip/Allwinner.
• Pamięć systemowa to wlutowany układ eMMC BGA (typowo 8 GB–16 GB, pinout eMMC 5.0).
• Oprogramowanie dzieli eMMC na partycje: boot
, recovery
, system
, userdata
, misc
, cache
+ blok wirtualnego zmieniacza CD (ISO).
Metody programowe
a) ADB bez roota
– Włącz „Opcje programisty” → „Debugowanie USB”.
– Sprawdź połączenie: adb devices
.
– Skopiuj dane użytkownika: adb pull /sdcard …
.
Ograniczenie: brak dostępu do partycji systemowych.
b) ADB z uprawnieniami root
– Znajdź sprawdzony exploit/obraz root (fora XDA-Developers, 4PDA).
– Po su
zidentyfikuj urządzenie blokowe: ls -l /dev/block | grep mmcblk0
.
– Utwórz pełny dump na kartę SD/pendrive:
dd if=/dev/block/mmcblk0 of=/storage/external_sd/phantom_full.img bs=4M
sync
– Zweryfikuj hash MD5/SHA-256 obrazu.
c) Menu serwisowe / aktualizacja OTA
– Niektóre egzemplarze pozwalają zapisać plik FW na kartę SD / USB i wykonać „backup Nand”.
– Dostęp przez kod w menu (np. 126 → „Factory Settings”) – zależne od wersji.
Metody sprzętowe
a) ISP (eMMC pinout)
Narzędzia: Easy-JTAG Plus / UFI Box, mikrolutownica, lupa 10×.
• Na PCB odnajdź test-pointy: CLK, CMD, DAT0, VCC, VCCQ, GND.
• Podłącz przewody 0,1 mm do programatora (tryb 1-bit DAT0, takt 15 MHz).
• Odczytaj EXT-CSD, następnie pełny dump (typowo 8 GiB ≈ 20 min).
Zaletą jest brak demontażu układu, wadą – trudne lutowanie i ryzyko zwarć.
b) Chip-off
• Gorące powietrze 330 °C, dysza Ø 6 mm, czas ≈ 60 s.
• Po wylutowaniu oczyść kulki, włóż w adapter BGA153.
• Programator -> „Identify” → „Read Full (User + Boot1/2 + RPMB)”.
Metoda pewna, ale najbardziej ryzykowna (możliwe termiczne uszkodzenie eMMC lub PCB).
Analiza obrazu
• Binwalk/Scalpel do detekcji plików ISO (wirtualny zmieniacz CD), plików APK i partycji ext4.
• Mount obrazu:
losetup -Pf phantom_full.img
mount /dev/loop0p5 /mnt/rootfs
• Wirtualne płyty CD znajdują się zwykle w /mnt/rootfs/vendor/virtual_cd/track*.iso
.
Teoretyczne aspekty bezpieczeństwa
• Bootloader może mieć włączony eMMC Secure Boot; w starszych i6 zwykle wyłączony.
• Partycja RPMB (Replay Protected Memory Block) jest kryptograficznie chroniona – niedostępna do odczytu bez klucza.
dd
kopiuje bit-po-bicie; zmiana bs
powyżej 4 MiB może zakończyć się „Input/output error” na słabszym SoC. Odczyt pamięci Phantom 1331G zaczynaj od soft-metod (ADB, menu serwisowe). Gdy konieczny jest pełny obraz systemu lub urządzenie się nie uruchamia – przejdź do ISP lub chip-off, korzystając z programatora eMMC. Zawsze kopiuj dane 1:1 na zewnętrzny nośnik, weryfikuj sumy kontrolne i respektuj ograniczenia prawne.
Odpowiedź odnosi się do systemu Android, moja stacja wyposażona jest w system Windows CE, na ile to zmienia podejście do zagadnienia?
dd
) są bezużyteczne. EBOOT.nb0
, NK.bin
, „ResidentFlash”, rejestr w postaci hive), więc analiza dumpu wymaga innych parserów. Kluczowe punkty
• brak ADB i typowych partycji ext4
• monolityczny obraz NK.bin
zamiast katalogu /system
• komunikacja PC ↔ urządzenie przez ActiveSync/WMDC lub UART/JTAG
• przy odzysku danych najpierw próbujemy menu serwisowego / backup na kartę SD, dopiero potem ISP/chip-off
Cecha | Android | Windows CE / WEC | Konsekwencje dla serwisu |
---|---|---|---|
Jądro | Linux | własne, modularne (pre-emptive) | brak ADB, odmienne API narzędzi debug |
Organizacja pamięci flash | wiele partycji ext4/F2FS + metadata eMMC | kilka bloków BINFS, IMGFS, FAT, ObjectStore | parser dumpu musi rozpoznawać NK.bin , registry.hv |
Start systemu | bootloader → kernel → init/ramdisk | bootloader (EBOOT/U-Boot/RedBoot) → NK.bin w RAM |
menu serwisowe często w bootloaderze |
Pliki konfiguracyjne | /system/build.prop , /data |
rejestr RAM-based + pliki *.hv | zmiana ustawień wymaga edycji hive lub Remote Registry |
• CPU: Samsung S3C24xx, Telechips TCC8902/8920, MStar 21xx, i.MX25/35/6
• Flash:
– starsze: NAND TSOP48 128 MB – 1 GB
– nowsze: eMMC 4–16 GB (BGA153/169)
• RAM: 64-256 MB SDR/DDR
3.1 ActiveSync / WMDC
– instalacja WMDC (Windows 7–11 wymaga ręcznego patcha usług).
– po podłączeniu USB stacja pojawia się jako „Urządzenie przenośne”; kopiujemy tylko ResidentFlash
(mapy, multimedia).
3.2 Menu serwisowe / aktualizacja z karty SD
– typowa sekwencja: przytrzymaj [VOL+] + [POWER] ⇒ bootloader ładuje update.img
/ backup.cmd
z SD.
– część loaderów (np. Telechips) udostępnia polecenia backup all
, restore all
.
3.3 KITL (Platform Builder Remote Tools)
– wymaga kompilacji obrazu z włączonym KITL; rzadko aktywne w produktach komercyjnych, ale jeśli jest ‑ pozwala na zdalny debug, podgląd rejestru i systemu plików.
3.4 UART shell bootloadera
– konwerter USB-TTL 3,3 V, zwykle 115 200 bps.
– przerwanie autobootu (spacja) odsłania komendy nand dump
, tftp
, ymodem get
.
4.1 ISP do eMMC
– wystarczy podlutować się do punktów DAT0–DAT7, CLK, CMD, VCCQ, GND; często dostępne test-pointy.
– Easy-JTAG/UFI/Medusa → odczyt RAW, zachowując mapę uszkodzonych bloków.
4.2 JTAG
– Windows CE częściej zostawia aktywne piny JTAG; można zrzucić NAND przez nand read
w GDB/OpenOCD.
4.3 Chip-off NAND
– ryzykowny, ale gwarantuje pełny dump. Potrzebny programator obsługujący ECC (NAND Reader, RT809H).
NK.bin
(XIP kernel + obraz systemu)system.hv
, user.hv
)ResidentFlash
) Binwalk
, nk.bin parser
(LZX), ImgFSExtractor
, CEGetFileSystem
. /My Device/iGO8/Content/
. • Execute-In-Place (XIP) – część kodu wykonywana bezpośrednio z flash → trzeba zachować offsety przy repacku.
• Brak ochrony integralności (Secure Boot) w większości modeli, ale nowsze NK mogą wymagać podpisu OEM (catalog-signed).
• Registry w RAM – utrata zmian po twardym resecie, jeżeli nie zapisane do hive.
• Analogią do Androidowego boot.img
jest tutaj NK.bin
, lecz zawiera jednocześnie kernel, sterowniki i część aplikacji (monolit).
• „ResidentFlash” ≈ /data
– chronione słabiej, zazwyczaj FAT.
• Jeśli moduł eMMC ma wyprowadzone piny, ISP można wykonać bez wylutowywania – wystarczy odciąć zasilanie SoC (np. wyjęcie bezpiecznika VCORE) i zasilić samą kość.
NK.bin
zawierają licencjonowany kod Microsoft; ich publiczne udostępnianie narusza EULA Windows CE. catalog signatures
) i możliwość wgrywania własnego NK.bin
(np. z odblokowanym KITL). Przesiadka z Androida na Windows CE całkowicie zmienia narzędzia i workflow: zamiast ADB korzystasz z ActiveSync, menu bootloadera lub KITL; zamiast partycji ext4 analizujesz monolityczny NK.bin
i Object Store. Metody fizycznego odczytu flash (ISP, chip-off) pozostają te same, lecz interpretacja danych jest inna. Zacznij od miękkich sposobów (WMDC, menu serwisowe), a sprzętowe zachowaj jako ostatnią deskę ratunku.