Linux에서 어셈블리 코드용 바이너리 실행 파일 디스어셈블
바이너리 실행 파일에서 어셈블리 코드를 추출하는 작업에 직면했을 때 디스어셈블러는 다음과 같은 역할을 합니다. 귀중한 도구로. gcc에는 이 기능이 기본적으로 통합되어 있지 않을 수 있지만 objdump는 GNU 개발 생태계 내에서 적합한 후보로 떠오릅니다.
디스어셈블리에 objdump를 효과적으로 활용하려면 다음 명령 구문을 사용하세요.
$ 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
이 접근 방식을 사용하면 개발자는 어셈블리 코드를 성공적으로 추출할 수 있습니다. 바이너리 실행 파일에서 기본 기계 명령어에 액세스합니다.
위 내용은 objdump를 사용하여 Linux의 바이너리 실행 파일에서 어셈블리 코드를 추출하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!