
Ferramenta de Análise de Firmware
Binwalk é uma ferramenta rápida e fácil de usar para analisar, fazer engenharia reversa e extrair imagens de firmware.
Este fork nasceu para corrigir alguns problemas pendentes do binwalk v2 e, de modo geral, para mantê-lo em bom estado. Ele cumpriu seu propósito, ajudando usuários e empacotadores de distros. No entanto, como o autor original recentemente reescreveu o binwalk em Rust e está em desenvolvimento ativo novamente, não há mais necessidade de manter o binwalk v2. Usuários e colaboradores devem migrar para o binwalk v3. Esta nova versão também fornece uma biblioteca em Rust, veja https://github.com/ReFirmLabs/binwalk/wiki/Using-the-Rust-Library.
Como resultado, este repositório estará efetivamente em fim de vida (EOL) em 12/12/2025, momento em que este repositório poderá ser arquivado ou removido.
Este é um fork do código original da ReFirmLabs. Este fork é mantido pela comunidade e não há relação entre os mantenedores deste fork e os autores originais ou a empresa original (embora apreciemos muito o trabalho deles).
Se você quiser contribuir, sinta-se à vontade para abrir issues, pull requests, ou até mesmo pedir para ser adicionado ao repositório para ajudar na revisão e mesclagem de PRs.
Parece existir uma alternativa bem mantida chamada unblob. De acordo com alguns relatos, ela tem melhores capacidades de extração (é capaz de extrair mais dados e com mais rapidez). A desvantagem é que ela não detecta tantos tipos de arquivo quanto o binwalk. Outra diferença importante é o número de dependências: enquanto o binwalk não exige nenhuma dependência (elas são opcionais), o unblob depende de quase 20 pacotes.
Antes do Binwalk v2.3.3, arquivos extraídos podiam criar symlinks que apontam para qualquer lugar no sistema de arquivos, potencialmente resultando em um ataque de travessia de diretórios se utilitários de extração subsequentes seguirem cegamente esses symlinks. De forma mais geral, o Binwalk utiliza muitos utilitários de extração de terceiros que podem ter problemas de segurança não corrigidos; o Binwalk v2.3.3 e versões posteriores permitem que ferramentas de extração externas sejam executadas como um usuário sem privilégios usando a opção de linha de comando run-as (isso exige que o próprio Binwalk seja executado com privilégios de root). Além disso, o Binwalk v2.3.3 e versões posteriores se recusarão a realizar extração como root, a menos que --run-as=root seja especificado.
Mais informações em Wiki