
C में लिखा गया न्यूनतम ELF निरीक्षक, त्वरित बाइनरी लेआउट निरीक्षण के लिए।
न्यूनतम ELF निरीक्षक इंटरैक्टिव REPL के साथ त्वरित बाइनरी विश्लेषण के लिए
यह readelf या objdump का विकल्प नहीं है। बस आम RE प्रश्नों के लिए एक त्वरित, केंद्रित उपकरण है:
साथ ही C में पठनीय ELF पार्सिंग उदाहरण के रूप में कार्य करता है। स्ट्रिप्ड और केवल-सेगमेंट बाइनरी को अच्छी तरह से हैंडल करता है।
(elfpeek:ls).dynsym और .symtab दोनों<elf.h>make
वैकल्पिक: REPL में कमांड इतिहास के लिए libreadline-dev इंस्टॉल करें।
./elfpeek
./elfpeek /bin/ls # show headers, sections, symbols
./elfpeek /bin/ls 0x6760 # resolve address
सेक्शन:
.text, .plt).data, .bss).rodata)हेक्सडंप:
00)20-7E)01-1F)80-FF)tests/ में नमूना ELF फ़ाइलें हैं:
relocs कमांड - रिलोकेशन दिखाएँgot/plt विश्लेषणMIT
| कमांड | उपनाम | विवरण |
|---|
open <path> | o | ELF फ़ाइल खोलें |
close | मौजूदा फ़ाइल बंद करें | |
info | i | ELF हेडर दिखाएँ |
sections | s | सेक्शन हेडर सूचीबद्ध करें |
phdr | p | प्रोग्राम हेडर सूचीबद्ध करें |
entry | e | एंट्री पॉइंट दिखाएँ |
symbols [dyn|sym] | sym | सिंबल टेबल डंप करें |
resolve <addr> | r | वर्चुअल एड्रेस रिज़ॉल्व करें |
dump <.sec|@off> [n] | d | हेक्स डंप (सेक्शन या ऑफ़सेट) |
help | ? | मदद दिखाएँ |
quit | q | बाहर निकलें |
| फ़ाइल | विवरण |
|---|
elf32_le.bin | 32-बिट लिटिल-एंडियन (i386) |
elf32_be.bin | 32-बिट बिग-एंडियन (PowerPC) |
elf64_be.bin | 64-बिट बिग-एंडियन (PowerPC64) |
elf64_le_pie.bin | PIE निष्पादन योग्य |
elf64_le_static.bin | स्टैटिकली लिंक्ड |
elf64_le_dynsym_only.bin | स्ट्रिप्ड, केवल dynsym |
elf64_le_so.bin | शेयर्ड ऑब्जेक्ट |
elf64_le_segments_only.bin | कोई सेक्शन हेडर नहीं |