firmware – Descompilación del enrutador

Pregunta:

Estoy tratando de extraer el sistema de archivos squashfs de mi enrutador. Aquí está el firmware .

Primero, descomprimí el archivo. A continuación, ejecuté binwalk para obtener información sobre el archivo.

DECIMAL     HEX         DESCRIPTION
-------------------------------------------------------------------------------------------------------
58          0x3A        TRX firmware header, little endian, header size: 28 bytes,  image size: 6656000 bytes, CRC32: 0x2B1713B2 flags/version: 0x10000
86          0x56        LZMA compressed data, properties: 0x5D, dictionary size: 65536 bytes, uncompressed size: 3614368 bytes
1282426     0x13917A    Squashfs filesystem, little endian, non-standard signature,  version 3.0, size: 5367357 bytes,  853 inodes, blocksize: 65536 bytes, created: Wed Aug  7 05:08:47 2013 

Luego ejecuté binwalk -e para extraer el contenido del archivo. Tengo tres archivos:

.
├── 13917A.squashfs
├── 56
└── 56.7z

La ejecución de unsquashfs en 13917A.squashfs falló, diciendo que no pudo encontrar el bloque mágico. Esto se debió a que el archivo estaba usando una magia no estándar. Cambiar la magia a una estándar hizo que unsquashfs y file detectaran como un sistema de archivos squashfs. Pero unsquashfs no se completó con éxito:

caff@UbunutuX2:~/Netgear/test$ unsquashfs 13917A.squashfs 
Reading a different endian SQUASHFS filesystem on 13917A.squashfs
Filesystem on 13917A.squashfs is (768:0), which is a later filesystem version than I support!

También intenté extraer el sistema de archivos usando el Firmware Mod Kit de Jeremy Collake . Esto falló también:

caff@UbunutuX2:~/Netgear/test$ /opt/firmware-mod-kit/trunk/unsquashfs_all.sh 13917A.squashfs 
Attempting to extract SquashFS .X file system...


Trying ./src/others/squashfs-3.4-nb4/unsquashfs-lzma... Skipping others/squashfs-hg55x-bin (wrong version)...
File extraction failed!

¿Cómo extraigo este sistema de archivos squashfs?

Respuesta:

Después de descomprimir el archivo, ejecute binwalk con

binwalk -eM *.chm

Marcar e significa extraer automáticamente, y M para --matryoshka o escanear y extraer recursivamente.

Después de algunos desempaquetados recursivos, obtendrás un directorio raíz de squashfs con lo que quieres, supongo.

Por lo que vale, probé esto con binwalk versión 1.2.1.

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım