1、gdb命令html
set argsspa
break3d
b(break) 1.c:6 在1.c文件的第6行设置断点指针
b(break) func printf也算一个func??htm
b 地址blog
info字符串
显示各类信息的
get
info all-register
it
info line main
编译
x
很好用,能够查看各类变量包括寄存器栈(rbp)里面的变量等
https://www.cnblogs.com/adamwong/p/10538019.html
2、格式化字符串漏洞
emmm,主要有%n,%k$的利用以及利用gdb查看变量位于printf的第几个参数(加了-m32(做用是指针啥的都是32位)的,printf输出的那个值通常都位于第6个吧)
全局变量的地址能够直接经过objdump -t 程序找到,程序编译的时候可加个参数-no-pie(反正最直接的就是能够看到使用objdump -t看地址的时候只能看到低4位)