Note: I'm aware of the technical and legal implications of reverse-enginneering binaries.
I have the firmware for a Netgear WGR614v7 router, in the form of a .chk file, coming from Netgear themselves, and I wish to unpack the file. My understanding is that a firmware .chk file is a header before a TRX image, and I've tried to untrx the ile I had sans header, or with header as well. Neither that nor binwalk
succeeded. Two useful strings are seen very close to the beginning of the file:
- AH00I8
- U12H064T00_NETGEAR
Inspecting the file in a hex editor, I'm unable to find the TRX file signature (I was looking for ASCII HDR0
). I also cannot find any sort of compression magic values, except fairly far into the file where they're not likely to signify the beginning of the actual content I'm looking for.
Am I looking for the wrong filetypes? Is anything about this structure known that I haven't found yet?
Edit: The firmware has been downloaded from Netgear's site. I tried chopping off various lengths but cannot find a reasonably-located compression or TRX header. The characteristic ff ff ff ff
of IMG images used as a method of preventing a repetitive boot firmware is also not existent.
Edit 2: I did some searching of my own, and found a decompression utility. When I chopped the file such that sqz
had been the first characters, that utility seemed to find valid Huffman structures but incur a size mismatch. A result of the decompression yielded 11 bytes, while the program warned me:
Warning: Unpacked file should be 7537274 bytes but is 396409921 bytes! at ./unpack.pl line 61, <STDIN> line 3.
Of course, it could be that many kinds of data that is corrupt might be partially readable as huffman giving me strange results as seen here.