Linux で実行可能ファイルを逆アセンブルする方法
バイナリ実行可能ファイルをアセンブリ コードに逆アセンブルすると、基礎となる機械命令についての洞察が得られます。よくある誤解は、gcc には逆アセンブラが組み込まれているというものですが、gcc は主にコンパイラであるため、そうではありません。
GNU objdump ツールは、逆アセンブリを実行する便利な方法を提供します。 -d/--disassemble フラグを指定して objdump を呼び出すと、指定した実行可能ファイルのアセンブリ コード表現を取得できます。
たとえば、「/path/to/binary」にあるバイナリを逆アセンブルするには、次のようにします。次のコマンドが実行されます:
$ objdump -d /path/to/binary
逆アセンブリの出力は次のようになります:
080483b4 <main>: 80483b4: 8d 4c 24 04 lea 0x4(%esp),%ecx 80483b8: 83 e4 f0 and xfffffff0,%esp 80483bb: ff 71 fc pushl -0x4(%ecx) 80483be: 55 push %ebp 80483bf: 89 e5 mov %esp,%ebp 80483c1: 51 push %ecx 80483c2: b8 00 00 00 00 mov x0,%eax 80483c7: 59 pop %ecx 80483c8: 5d pop %ebp 80483c9: 8d 61 fc lea -0x4(%ecx),%esp 80483cc: c3 ret 80483cd: 90 nop 80483ce: 90 nop 80483cf: 90 nop
この逆アセンブリでは、実行可能ファイルのアセンブリ コード命令の詳細な表現が提供され、分析とデバッグが可能になります。複雑なソフトウェア
以上がLinux で objdump を使用して実行可能ファイルを逆アセンブルするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。