Editor hexadecimal multiplataforma para engenharia reversa e análise de arquivos binários, com uma linguagem de padrões para interpretar estruturas de arquivos.
onekey-sec/unblob
Ferramenta de linha de comando que extrai recursivamente arquivos de mais de 78 formatos de arquivo compactado, compressão e sistema de arquivos, além de separar trechos desconhecidos em blobs binários.
- Estrelas
- 2,637
- Forks
- 159
- Issues abertas
- 56
- Último commit
- há 4 horas
O que é?
unblob recebe um blob binário desconhecido, como uma imagem de firmware, e identifica os formatos de contêiner contidos nele. Analisa formatos conhecidos de arquivo compactado, compressão e sistema de arquivos, incluindo SquashFS, JFFS2, UBI/UBIFS, ext, CPIO, ZIP, 7-Zip, gzip, XZ e LZMA, e então extrai o conteúdo recursivamente até uma profundidade configurável.
Dados que não correspondem a nenhum formato conhecido são separados como trechos desconhecidos; preenchimentos com valores nulos e 0xFF são identificados automaticamente. A análise de entropia e qui-quadrado desses trechos ajuda a localizar regiões criptografadas ou compactadas. Um relatório JSON registra os offsets, tamanhos, entropia, propriedade, permissões e timestamps dos trechos.
A ferramenta é executada como usuário comum e, por padrão, usa vários núcleos de CPU. Handlers personalizados para formatos podem ser carregados em tempo de execução por meio de um caminho de plugins. Ela pode ser instalada via pip, Docker, Nix e pacotes do Kali Linux, e depende de vários utilitários externos de extração.
Recursos principais
- 01Oferece suporte a mais de 78 formatos de arquivo compactado, compressão e sistema de arquivos, como SquashFS, JFFS2, UBIFS e ZIP.
- 02Extrai contêineres aninhados recursivamente até uma profundidade configurável.
- 03Detecta os offsets de início e fim de cada trecho de acordo com o padrão do formato.
- 04Separa dados desconhecidos e identifica automaticamente preenchimentos com valores nulos ou 0xFF.
- 05Calcula a entropia de Shannon e os valores de qui-quadrado dos trechos desconhecidos.
- 06Gera relatórios JSON com offsets, tamanhos, propriedade e permissões.
- 07Aceita handlers personalizados para formatos por meio de um caminho de plugins em tempo de execução.
Casos de uso
- Descompactar imagens de firmware para inspecionar seus sistemas de arquivos durante a engenharia reversa.
- Localizar regiões criptografadas ou compactadas em um blob binário usando os resultados de entropia.
- Extrair em lote arquivos compactados incorporados em dumps de dispositivos em um pipeline de CI ou análise.
- Adicionar suporte a um formato de contêiner proprietário por meio de um handler personalizado.
Início rápido
- 1
Instale unblob do PyPI com pip
pip install unblob - 2
Instale as ferramentas externas de extração necessárias no Ubuntu/Debian
sudo apt install android-sdk-libsparse-utils e2fsprogs p7zip-full unar zlib1g-dev liblzo2-dev lzop lziprecover libhyperscan-dev zstd lz4 - 3
Verifique se todas as ferramentas de extração estão disponíveis
unblob --show-external-dependencies - 4
Extraia um arquivo de firmware
unblob firmware.bin
Antes de usar
- Se não usar o Docker, será necessário instalar várias ferramentas externas de extração separadamente.
- O suporte a SquashFS requer a instalação separada de uma ferramenta adicional, o sasquatch.
Em coleções
Tópicos
Perguntas frequentes
- O que é unblob?
- Ferramenta de linha de comando que extrai recursivamente arquivos de mais de 78 formatos de arquivo compactado, compressão e sistema de arquivos, além de separar trechos desconhecidos em blobs binários. unblob recebe um blob binário desconhecido, como uma imagem de firmware, e identifica os formatos de contêiner contidos nele. Analisa formatos conhecidos de arquivo compactado, compressão e sistema de arquivos, incluindo SquashFS, JFFS2, UBI/UBIFS, ext, CPIO, ZIP, 7-Zip, gzip, XZ e LZMA, e então extrai o conteúdo recursivamente até uma profundidade configurável.
- unblob é gratuito? Qual é a licença?
- unblob é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- unblob ainda é mantido?
- Manutenção ativa. O último commit de unblob foi em 7 de nov. de 2026.
- Para que posso usar unblob?
- Descompactar imagens de firmware para inspecionar seus sistemas de arquivos durante a engenharia reversa. Localizar regiões criptografadas ou compactadas em um blob binário usando os resultados de entropia. Extrair em lote arquivos compactados incorporados em dumps de dispositivos em um pipeline de CI ou análise. Adicionar suporte a um formato de contêiner proprietário por meio de um handler personalizado.
- Como instalar unblob?
- Instale unblob do PyPI com pip: pip install unblob Instale as ferramentas externas de extração necessárias no Ubuntu/Debian: sudo apt install android-sdk-libsparse-utils e2fsprogs p7zip-full unar zlib1g-dev liblzo2-dev lzop lziprecover libhyperscan-dev zstd lz4 Verifique se todas as ferramentas de extração estão disponíveis: unblob --show-external-dependencies Extraia um arquivo de firmware: unblob firmware.bin
- Onde consigo unblob?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/onekey-sec/unblob
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Framework livre de engenharia reversa e conjunto de ferramentas de linha de comando para analisar, desmontar, depurar e emular binários em sistemas do tipo Unix.
Framework de engenharia reversa para sistemas UNIX-like e conjunto de ferramentas de linha de comando para analisar binários, desassemblar código e depurar programas.
Ferramenta de análise de firmware escrita em Rust que identifica e, opcionalmente, extrai arquivos e dados incorporados em outros arquivos.
App para desktop e CLI que extrai arquivos ZIP, 7z, tar e arquivos divididos enormes no próprio local, liberando espaço à medida que os arquivos são extraídos e reduzindo o espaço livre necessário no disco.
Uma CLI de terminal para compactar, descompactar e listar arquivos em vários formatos, detectando o formato pela extensão do arquivo.