Je cherche un décompilateur pour un programme C. Le binaire est un exécutable Linux x86 32 bits. Objdump fonctionne bien, donc je cherche fondamentalement quelque chose qui tente de reconstruire la source C à partir de la source asm.
Soutenir les rayons Hex, mais si vous ne pouvez pas justifier ce coût, Boomerang pourrait fonctionner.
Si vous avez de l'argent à dépenser, Hex-Rays Decompiler pourrait en valoir la peine. :-)
Même si IDA peut être utile, cela coûte beaucoup d’argent. Vous n'êtes pas sûr de votre cas d'utilisation spécifique mais Plasma semble faire l'affaire "Plasma est un désassembleur interactif pour x86/ARM/MIPS. Il peut générer un pseudo-code avec une syntaxe colorée."
Si vous cherchez quelque chose de plus semblable à IDA, je vous recommande fortement Radare2 . Il y a aussi ODA le dissembleur en ligne au cas où vous ne voudriez rien installer.
Une nouvelle addition est Binary Ninja et bien que cela ne soit pas encore proche des capacités de IDA ou de Radare, c'est un utilitaire bon marché et bon pour les débutants.
Mise à jour: Depuis ce commentaire, le NSA a publié Ghidra , qui est entièrement open source et gratuit. Il s’agit d’un framework RE à promesses complètes avec décompilateur haut de gamme.
Pour la décompilation binaire, j'ai acheté une licence personnelle de Hopper https://www.hopperapp.com .
Les avantages sont:
OMI, le rapport coût/qualité bat assez facilement les rayons IDA/Hex, et laisse dans la poussière les autres décompileurs commerciaux (ou gratuits).
De plus, vous pouvez l'essayer ou utiliser la version de démonstration pour vous en faire une idée et décompiler (très) de petits exécutables gratuitement.
À partir de maintenant (mars/2019), au lieu de cela, vous avez également Ghidra de la NSA. Ghidra fonctionne sous Linux, Mac et Windows tant que JDK 11 est installé. Il est présenté "comme un outil gratuit comparable aux rayons X".
Ghidra se sent plus puissant, mais Hopper semble toujours plus intuitif.
Voir aussi: PepperMalware Blog - Analyse rapide d'un échantillon Trickbot avec le framework Ghidra SRE de la NSA
Snowman ( http://derevenets.com ) a l'air sympa. Le code généré est un désordre, mais fonctionne.