gdb經常使用命令及格式化字符串漏洞

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、格式化字符串漏洞

https://www.dazhuanlan.com/2019/12/27/5e04fdef7abf3/?__cf_chl_jschl_tk__=482074d41e363ddde51046469a67f0469fb6d916-1591701686-0-AXIxk_o_up4RDQRhwuRO02FVzY5MVUXR9_6yuK3mbgUzrt2GGdadKzvSaK9UftjQ2C4VwgC1oPdwKqxBk7Q6Fe2glmVhfzG6gwcQjteeMpD3JGNYcFUJoWftFo1aSkeOIFNkkP4cLC4RYEpubO5n3iA03eP3xrnTAOxx5I-68JInRpkbUkrTk6KHm6v6IgnzYWM4XqyLXFUxR-jdDIFMw3yzASrYNWe47m4Z9YtBDUEMgLik9Fp3D_vN5oVsRq9fFLAcX1R2LkyfwconDR02aZKg9TZHJHym5B1SdQLIMafRcCz7Sv1f_cM1GdzCLmH0hw

emmm,主要有%n,%k$的利用以及利用gdb查看變量位於printf的第幾個參數(加了-m32(做用是指針啥的都是32位)的,printf輸出的那個值通常都位於第6個吧)

全局變量的地址能夠直接經過objdump -t 程序找到,程序編譯的時候可加個參數-no-pie(反正最直接的就是能夠看到使用objdump -t看地址的時候只能看到低4位)

相關文章
相關標籤/搜索