三十功名尘与土,八千里路云和月
08
11
09
堆管理器原理 堆管理器原理
获取堆空间的两种方式 主线程可以用brk,也可以用mmap 子线程只能用mmap 主线程如果申请的区域过大的话,会直接用mmap在mmap段拿到一段大的空间,如果申请的比较小的话,就直接用brk在data段上面扩展一段空间就可以了。
2024-08-09 0x00dream
08
格式化字符串漏洞 格式化字符串漏洞
漏洞功能泄露栈上的内容%p 泄露任意地址内容%s 篡改栈内存%n %hn %hhn %n:把已打印的字符的个数写入目标地址 payload = p32(x_addr) + b"%11$n" # 本题的key是x=4,因为x_addr
2024-08-08 0x00dream
06
pwn相关工具使用 pwn相关工具使用
checksec查看程序的保护 checksec --file='./vul' ROPgadget查看程序中指令片段地址 ropgadget --binary ./vul --only 'pop|ret' | grep
2024-08-06 0x00dream
06
栈溢出之exp 栈溢出之exp
首先加载库函数 (pwntools) from pwn import * 常用函数shellcraft.sh() # 字符串类型的shellcode asm() asm(shellcraft.sh()) # 将字符串打包
2024-08-06 0x00dream
02
内存泄漏 内存泄漏
姿势int a = new int; a = 1; free(a); 原理:如果free掉该内存后,仍然访问该内存地址,导致泄露
2024-08-02 0x00dream
01
AFL AFL
比较有名的Fuzz工具 Fuzz流程 AFL原理 fork-server作用:如上图,相当于目标程序和afl-fuzz的中间媒介,相当于一个传递测试用例和执行结果的管道。 优化 AFL 在模糊测试中执行目标程序的方式,从而加速测试过程并降低
2024-08-01 0x00dream
07
30
3 / 3