
Guerra psicológica em engenharia reversa
: Guerra Psicológica em Engenharia Reversa
github.com/xoreaxeaxeax/repsych // domas // @xoreaxeaxeax
O conjunto de ferramentas REpsych é uma prova de conceito que ilustra a geração de imagens por meio do grafo de controle de fluxo (CFG) de um programa.
| O CFG de uma função típica | Um CFG gerado pelo REpsych |
|---|---|
![]() | ![]() |
O projeto não tem um propósito específico (além de mostrar que isso pode ser feito), mas possíveis aplicações (não sérias) estão descritas na apresentação da DEF CON.
O programa funciona de forma confiável com todas as versões testadas da ferramenta de engenharia reversa IDA Pro e de forma parcialmente confiável com outros visualizadores de CFG (Hopper, BinNavi, radare2, etc).
O conjunto de ferramentas converte imagens de origem em programas funcionais, de modo que o
grafo de controle de fluxo do programa gere a imagem de origem.
Para gerar um novo programa a partir de uma imagem:
Dois programas funcionais serão criados: repsych_v1 e repsych_v2. Cada um usa uma estratégia diferente para garantir que o renderizador de CFG posicione corretamente os nós do CFG.
A ferramenta criará um bloco básico (nó do CFG) para cada pixel da imagem de origem; portanto, tente usar imagens de origem pequenas (não maiores que 100x100) e talvez seja necessário aumentar o número de nós permitidos no seu visualizador de CFG.
Ao usar uma imagem de texto como entrada para a ferramenta, primeiro converta a imagem para um bitmap preto e branco de 2 BPP e depois para um bitmap de 24 BPP; isso removerá cores que não sejam preto e branco e dará os melhores resultados no grafo de controle de fluxo.





A técnica é descrita em detalhes na apresentação da DEF CON.
Os slides da apresentação estão disponíveis aqui.
REpsych é uma prova de conceito de Christopher Domas (@xoreaxeaxeax).