
Kit de ferramentas assembler em Python puro para criar shellcode, aplicar patch dinamicamente em binários e instrumentar imagens de firmware para depuração e fuzzing nas arquiteturas ARM, PPC, RISC-V e IA-32.
Flopz é um kit de ferramentas de montagem escrito em Python puro. Use-o para:
Se você gostaria de ver outra arquitetura implementada, sinta-se à vontade para entrar em contato a qualquer momento - nós adoramos fazer isso!
Em vez de apenas transformar strings de assembly em bytes, o Flopz visa facilitar a correção interativa e a instrumentação de firmware. Para isso, ele fornece uma API de baixo nível de instruções e registradores que permite construir shellcode, módulos e funções diretamente em Python, sem lidar com strings de sintaxe de assembly.
Em testes de segurança embarcada, nenhum dispositivo é igual a outro: Por causa disso, fornecemos uma abordagem orientada a objetos para definir alvos personalizados, para que o maior número possível de componentes possa ser reutilizado em projetos envolvendo diferentes dispositivos e arquiteturas de processadores.
Como o Flopz foi escrito do zero em Python puro, pode não suportar tantas arquiteturas quanto outras ferramentas (como as baseadas em Clang/LLVM). No entanto, nosso objetivo é cobrir exatamente aquelas arquiteturas que importam para profissionais de segurança embarcada e que podem não ser cobertas por outras ferramentas. Além disso, estender o Flopz é menos desafiador graças a um conjunto mantido de testes unitários e documentação de código.
O Flopz é projetado para funcionar em conjunto com outras ferramentas. Em particular, existe uma Extensão Ghidra que ajuda a instrumentar firmware diretamente no Ghidra.
A documentação fornecida facilita o trabalho com o Flopz e o uso de sua interface em seus projetos.