x 按十六进制格式显示变量 。d 按十进制格式显示变量 。u 按十六进制格式显示无符号整型 。o 按八进制格式显示变量 。t 按二进制格式显示变量 。a 按十六进制格式显示变量 。c 按字符格式显示变量 。f 按浮点数格式显示变量 。s 按字符串显示 。b 按字符显示 。i 显示汇编指令 。
x /10gx 0x123456
//常用,从0x123456开始每个单元八个字节,十六进制显示10个单元的数据x /10xd $rdi
//从rdi指向的地址向后打印10个单元,每个单元4字节的十进制数x /10i 0x123456
//常用,从0x123456处向后显示十条汇编指令
p fun_name
//打印fun_name的地址,需要保留符号
p 0x10-0x08
//计算0x10-0x08的结果
p &a
//查看变量a的地址
p *(0x123456)
//查看0x123456地址的值,注意和x指令的区别,x指令查看地址的值不用星号
p $rdi
//显示rdi寄存器的值,注意和x的区别,这只是显示rdi的值,而不是rdi指向的值
p *($rdi)
//显示rdi指向的值
disass 0x123456
//显示0x123456前后的汇编指令x /10i
//我一般喜欢用x显示指令
- list//查看当前附近10行代码,要有源码,list指令pwn题中几乎不用,但为了完整性还是简单举几个例子
list 38
//查看38行附近10行代码list 1,10
//查看1-10行list main
//查看main函数开始10行
set $rdi=0x10
//把rdi寄存器的值变为0x10set *(0x123456)=0x10
//0x123456地址的值变为0x10,注意带星号set args "abc" "def" "gh"
//给参数123赋值set args "python -c 'print "1234\x7f\xde"'"'
//使用python给参数赋值不可见字符
search rdi
//从当前位置向后查包含rdi的指令,返回若干search -h
//查看search帮助,我也不太长用这个指令find "hello"
//查找hello字符串,pwndbg独有ropgadget
//查找ropgadget,pwndbg独有,没啥用,可以用其他工具
arena
//显示arena的详细信息
arenas
//显示所有arena的基本信息arenainfo
//好看的显示所有arena的信息
bins
//常用,查看所有种类的堆块的链表情况fastbins
//单独查看fastbins的链表情况largebins
//同上,单独查看largebins的链表情况smallbins
//同上,单独查看smallbins的链表情况unsortedbin
//同上,单独查看unsortedbin链表情况tcachebins
//同上 , 单独查看tcachebins的链表情况tcache
//查看tcache详细信息
heap
//数据结构的形式显示所有堆块,会显示一大堆heapbase
//查看堆起始地址heapinfo
、heapinfoall
//显示堆得信息,和bins的挺像的,没bins好用parseheap
//显示堆结构,很好用
tracemalloc
//好用,会跟提示所有操作堆的地方
其他pwndbg插件独有指令
cyclic 50
//生成50个用来溢出的字符,如:aaaabaaacaaadaaaeaaafaaagaaahaaaiaaajaaakaaalaaama$reabse
//开启PIE的情况的地址偏移b *$reabse(0x123456)
// 断住PIE状态下的二进制文件中0x123456的地方codebase
//打印PIE偏移,与rebase不同 , 这是打印,rebase是使用
stack
//查看栈retaddr
//打印包含返回地址的栈地址canary
//直接看canary的值plt
//查看plt表推荐阅读
- 四十一 增删查改分页 Java开发学习----MyBatisPlus标准数据层开发
- 中 学习ASP.NET Core Blazor编程系列十——路由
- CC1,3,6回顾
- 图学习【参考资料2】-知识补充与node2vec代码注解
- 二十四 设计模式学习:Spring 中使用到的设计模式
- Java安全之CC3
- TensorFlow深度学习!构建神经网络预测股票价格!?
- JUC学习笔记——共享模型之管程
- Seata Server 1.5.2 源码学习
- 2022极端高温!机器学习如何预测森林火灾?? 万物AI