섹션 헤더 없이(프로그램 헤더만) ELF 바이너리를 분해하려면 objdump를 사용하세요.

섹션 헤더 없이(프로그램 헤더만) ELF 바이너리를 분해하려면 objdump를 사용하세요.

프로그램 헤더 테이블에 두 개의 LOAD 섹션(코드용 섹션과 데이터용 섹션)만 포함된 ELF 바이너리 파일이 있습니다. readelf -a섹션 제목이 없다고 뜹니다.

ARM 크로스 binutils를 사용하여 내 amd64 시스템에서 ARM 바이너리를 분해하려고 하면 올바른 출력이 제공되지 않습니다. 그러나 내가 이해한 바에 따르면 이 질문은 ELF와 관련되어 있으므로 바이너리 아키텍처는 이 질문과 관련이 없어야 합니다.

$ file ./binary
./binary: ELF 32-bit LSB executable, ARM, EABI5 version 1 (GNU/Linux), statically linked, stripped

$ arm-linux-gnueabi-objdump -d ./binary 

./binary:     file format elf32-littlearm

$ arm-linux-gnueabi-objdump -x ./binary 

./binary:     file format elf32-littlearm
./binary
architecture: arm, flags 0x00000102:
EXEC_P, D_PAGED
start address 0x0004c8d8

Program Header:
    LOAD off    0x00000000 vaddr 0x00010000 paddr 0x00010000 align 2**16
         filesz 0x0003d27e memsz 0x0003d27e flags r-x
    LOAD off    0x00005c78 vaddr 0x00085c78 paddr 0x00085c78 align 2**16
         filesz 0x00000000 memsz 0x00000000 flags rw-
   STACK off    0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**4
         filesz 0x00000000 memsz 0x00000000 flags rw-
private flags = 5000400: [Version5 EABI] [hard-float ABI]

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
SYMBOL TABLE:
no symbols

objdump가 ELF 세그먼트를 분해하도록 하는 방법이 있습니까?

관련 정보