134 votes

Comment désassembler un exécutable binaire sous Linux pour obtenir le code assembleur ?

On m’a dit d’utiliser un désassembleur. Y a-t-il `` quelque chose d’intégré? Quel est le moyen le plus simple de le faire?

200voto

Michael Mrozek Points 44120

Je ne pense pas qu’il y ait un drapeau pour cela, car c’est principalement un compilateur, mais un autre des outils de développement GNU le fait. prend un drapeau / ```` :

Le démontage ressemble à ceci:

61voto

Miroslav Franc Points 1132

Une alternative intéressante à objdump est gdb. Vous n’avez pas besoin d’exécuter le fichier binaire ou d’avoir debuginfo.

Avec des informations de débogage complètes, c’est encore mieux.

objdump a une option similaire (-S)

6voto

jcomeau_ictx Points 15736

il y a aussi le ndisasm, qui a quelques bizarreries, mais peut être plus utile si vous utilisez nasm. Je suis d’accord avec Michael Mrozek pour dire que l’objdump est probablement le meilleur.

[plus tard] vous voudrez peut-être aussi consulter ciasdis d’Albert van der Horst: http://home.hccnet.nl/a.w.m.van.der.horst/forthassembler.html. il peut être difficile à comprendre, mais a des fonctionnalités intéressantes que vous ne trouverez probablement nulle part ailleurs.

4voto

ta.speot.is Points 15157

Utilisez IDA Pro et le décompilateur.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X