srop 发表于: 2024-07-28 分类于: PWN/Stackoverflow[TOC] 一些重要理解 rsp必须必须指向fake_frame的底部,不然sigreturn无法正常执行 fake_frame中的rip的值就是sigr
stack_migration 发表于: 2024-07-28 分类于: PWN/Stackoverflow[TOC] 栈迁移 栈迁移的核心是leave_ret指令,要清楚leave_ret指令的作用 栈迁移:rbp覆盖为我们想要转移到的地址-8(注意有个pop
stderr 发表于: 2024-07-28 分类于: PWN/堆攻击IO_FILE在打IO攻击的时候经常需要用到malloc_assert,要打stderr,这里区分一下几个概念 1.直接打_IO_2_1_stderr_ 如果
stdout 发表于: 2024-07-28 分类于: PWN/堆攻击IO_FILE[TOC] 遇到puts或printf,就会将_IO_write_base指向的内容打印出来。实际操作中发现如果是write函数还不行 stdout原理
system_execve函数 发表于: 2024-07-28 分类于: PWN/PWN笔记[TOC] system函数 system("$0") system(“sh”) system("/bin/sh") system("/bin//sh")都可以拿到shell cat *:是一个在命令行中使用的Unix/L
tcache stashing unlink attack 发表于: 2024-07-28 分类于: PWN/堆攻击tcache[TOC] 学习时参考的博客 一篇讲原理的博客 例题博客 例题博客 例题博客 1.获得任意地址target_addr的控制权 2.在任意地址target_addr
tcache_perthread_struct 发表于: 2024-07-28 分类于: PWN/堆攻击tcache[TOC] tcache_perthread_struct可以free掉,在libc2.30以下的版本tcache_perthread_struct大
templates 发表于: 2024-07-28 分类于: PWN/PWN笔记[TOC] recv canary=int(sh.recvuntil(b"00").decode(),16) buffer= int(p.recv(14), 16) 两个十六进制是一个字节,但是printf函数打印是一个字符一个字符的打印,一个字符是一个字节,所以0x7ffec1484618也
tls 发表于: 2024-07-28 分类于: PWN/堆攻击tcache[TOC] 参考文章 对于tcache 修改线程tcache变量 在tls区域,有一个线程变量tcache,如果能用largebin attack修改tcac