Ubuntu下常用的反汇编工具与用法
一 常用工具清单
二 快速上手示例
objdump
sudo apt update && sudo apt install binutilsobjdump -d /path/to/appobjdump -d -j .text --start-address=0x401000 --stop-address=0x401100 /path/to/appobjdump -d -M intel /path/to/app(Intel 语法)gdb
sudo apt install gdbgdb /path/to/app(gdb) disassemble function_name(gdb) disassemble 0x401000,0x401100radare2
sudo apt install radare2r2 /path/to/appaaapdfpdf function_namepdf @ 0x401000ndisasm(x86/x86-64 裸二进制)
sudo apt-get install nasmndisasm -b 32 shellcode.binndisasm -b 64 shellcode.binCapstone(Python 示例)
pip install capstonefrom capstone import *md = Cs(CS_ARCH_X86, CS_MODE_32)for i in md.disasm(b"\x55\x89\xe5\xb8\x90", 0x1000):
print("0x%x:\t%s\t%s" % (i.address, i.mnemonic, i.op_str))sudo apt install libcapstone-dev三 如何选择
四 合规与提示