Skip to content

Add more file formats for Container Browser to unpack/decompress #8519

Description

@UvuvDev

What is the feature you'd like to have?
One of the most tedious things to do is extract the runtimes out of firmware. If it is not a simple binwalk -E ./firmware.bin, and instead is multiple layers of compression and filesystems, it is really annoying to have to deal with it. Example: the Google Pixel 11 Pro modem.img has 11 layers of transforms/extractions. I would like to either add a plugin to do the extraction, or expand on the container browser system to support this.

Architecture is kind of the issue here: how do we support 50+ formats without creating an insane amount of technical debt? Of course dependencies are a good option until licensing gets involved. Things like ZIP, TAR, should be easy enough, but proprietary Android filesystems? And how aggressive should we be with recursive extraction/decompression? How do we handle false positives?

I am currently working on a plugin to do this but I'm not sure the costs vs benefits of using a plugin vs integration into core, besides licensing. I am basically just adding platforms and support until something breaks / gives, and if it doesn't then I'll put it out and we could integrate it as a core plugin.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions