笔记
gdb的使用
IDA的使用
堆栈平衡
特殊函数
mprotect函数
格式:int mprotect(const void *start,size_t len,int port)
作用:能够修改内存的权限为可读可写可执行
参数:第一个参数填写的是起始地址,第二个参数填写的是起始地址后多大的长度,第三个参数填写的是赋予的权限
参数port:1、port_read:内存段可写。2、port_write:内存段可读。3、port_exec:内存段可执行。4、port_none:内存段无法访问。5、port=7:内存段可写、可读、可执行。
要求:指定的内存区间必须包含整个内存页(4K)。区间开始的地址start必须是一个内存页的起始地址, 并且区间长度len必须是页大小的整数倍。
函数调用栈
pwntools
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.