当前位置:Gxlcms > 数据库问题 > gdb用法

gdb用法

时间:2021-07-01 10:21:17 帮助过:3人阅读

敲gdb进入gdb-peda

file pwn1 #选择加载的文件

gdb -q

# -q 静默模式

gdb: r(run ) #执行

gdb:disas main   #反编译main()函数 经常用

技术分享图片

 

gdb:b (break) #设置断点

b func_name #对函数下断点

b *addr   #对地址下断点

info b   # 查看断点

技术分享图片

分别对应寄存器取值情况/代码/栈的情况

info r(egister) #查看寄存器情况

ni #单步调试

si #step into 步进 进到某个函数里面

bt  #backtrace 查看现在的堆栈情况   对于了解程序执行比较有用

c  #continue 继续执行到下一个断点

 


打印地址的值

x/wx adress #打印该地址的值,w代表 word.在32位嵌入式系统中,一个字WORD占32bit,即4个字节,1个字节=bit。

如x/10wx 0xffffce90 #10代表打印10个,w代表32位,可以换为b/h/g 分别对应1  2  8byte, x可以替换为 u (unsigned int ) s(string) d(10进制) i(指令)

 


 

set *addr =value #设置地址的值

list  #列出源码

print val_name #打印变量值

info locals #查看所有局部变量的值

在cmp eax edx处下断点 然后r执行

set $eax=$edx 敲击回车。。


gdb-peda 版本中的好用的功能

elfsymbol #可以把程序中的函数以及地址列出来 做ROP特别有用

vmmap #查看进程中的权限

技术分享图片

readelf  #查看section

find 字符串  #查找在内存中查找字符串 如/bin/sh(就是shell)

 

 

gdb用法

标签:函数   查看   backtrac   字节   mic   ros   strong   命令行   功能   

人气教程排行