# 1. 查看汇编代码
objdump -t XXX : 查看程序中使用到的函数
objdump -d XXX :查看程序中函数的汇编代码
objdump -d -j .plt XXX : 查看 plt 表
-j 的参数有:.text - 代码段
.const - 只读数据段(有些编译器不使用此段,将只读数据并入.data 段
.data - 读写数据段
.bss -bss 段
objdump -d -M intel 程序名 |grep 函数名:查看某程序内某函数地址
objdump -d -j .plt ./filename |grep system : 查找程序中 plt 表中函数地址
# 2.gdb 调试
disass XXX : 查看某函数的反汇编
b *(地址)在此地址下断点
set *(地址)= 地址 改变某地址内容
# 3. 常见漏洞
1)格式化输出字符串漏洞
printf (“my name is % s”, 参数)
一般来说,printf ()
# 4.ROPgadget
ROPgadget -binary ./filename --only “pop|ret” |grep “eax”
查找 pop eax ;ret 代码片段
ROPgadget --binary ./filename --string “/bin/sh”
查找字符串 "/bin/sh" 地址