工具命令参数

objdump

  • -h 查看段信息
  • -x 打印更多更复杂的信息
  • -s 将所有段内容以16进制打印出来
  • -d 将所有包含指令的段反汇编
  • -t 提取库文件信息

readelf

  • -h 查看文件头 (ELF header)
  • -S 查看 Section Headers Table(段表)
  • -s 查看符号表信息
  • -l 查看Segment
  • -d 查看 .dynamic (动态符号表) 信息
  • -sD 查看动态符号表及其对应的哈希表
  • -r 查看重定位表 (.rel.*)

gcc

  • -g 编译时加上调试信息相关的段
  • -c 只编译不链接
  • -fno-builtin 关闭内置函数优化
  • -ffunction-sections|-fdata-sections 将函数和数据保持在独立段
  • -verbose 打印出链接的中间步骤

ld

  • -verbose 查看详细指令,单独使用查看默认链接脚本
  • -T 指定使用的链接控制脚本
  • -e 指定入口函数
  • -static 静态链接
  • -o 指定输出文件名
  • -s 禁止产生符号表

objcopy

-I 指定二进制文件
-o 指定输出文件
-B 指定架构

gdb

  • r 运行
  • start 运行到main处停止
  • ni 下一个指令
  • step 单步进入
  • c continue
  • finish 运行到ret
  • x/wx | /s | /... 加上 地址 以不同形式查看目标地址的值
  • set *addres=value 设置某地址的值
  • p addres 输出某地址的值 也可以用%加寄存器输出变量的值
  • disas (symbol_name(func)) 反汇编

peda

  • checksec 查看保护
  • elfsymbol 查看符号
  • vmmap 查看内存映射
  • find 查找内存中的字符串

pwngdb

  • heapinfo 查看 free后的管理链表
  • heapinfoall
  • chunkinfo [pointer to chunk] 查看对应chunk的详细信息

你可能感兴趣的:(工具命令参数)