常回家看看之tcachebin-attack 常回家看看之tcachebin-attack自从glibc2.26之后出现了新的堆管理机制,及引用了tcachebin机制,tcachebin也是主要分配小堆块的,有40条bin链(0x10 - 0x410) 那么这样的分配有很多和smallbin 和fastbin重叠的部分,及malloc申请之后free掉的小堆块优先进入tcachebin中,这样的分配减小的分配堆时候的开销,而且加速了堆的分配 2024-08-03 #PWN!
glibc2.23——house of orange glibc2.23——house of orange什么是house of orange,这个名字的由来是2016年一道题目,它里面的内容跟orange有关,因此这个手法也就相应而出现,其实house of orange 有两个阶段 第一阶段有的时候程序限制了你申请堆块的限制(导致不能申请到unsortbin),或者直接不给你free功能,那么泄露libc地址就成了一个麻烦,但是house of 2024-08-02
常回家看看之fastbin_attack 常回家看看之fastbin_attack原理分析fastbin属于小堆块的管理,这里说的fastbin_attack大多指glibc2.26之前的手法,因为自glibc2.26以后,glibc迎来了一位新成员tcachebin,它减少了堆的开销,使堆管理变得迅速而高效,而且申请的小堆块会优先进入tachebin中,只有tachebin其中一个链表满了再次申请一个相同大小的堆块,若是小堆块再次fre 2024-08-02
DASCTF2022.07赋能赛PWN部分WP DASCTF2022.07赋能赛PWN部分WPeyfor程序保护情况 64位ida逆向可以看见是一个随机数的逻辑,只要我们猜不对4次就可以进入漏洞函数,但是我感觉这原本可能是==号,让用随机数的 那我们就4次不输入一个数就可以进入漏洞函数,这里注意这个a1就是我们进入漏洞函数之前要输入的值,可以看见在read的时候使用的是un int 而判断的是int,那么这里就存在一个类型 2024-08-02 赛题WP #赛题复现
glibc.2.24-2.26——house of orange glibc.2.24-2.26——house of orange上次说到glibc2.23的house of orange 以及相关的FSOP手法,由于在glibc2.24之后加入了对vtable的检查,导致之前那种方法失效,2.24的检查是IO_validate_vtable要求我们的vtable必须在__stop___libc_IO_vtables和__start___libc_IO_vtab 2024-08-01
DASCTF X GFCTF 2022十月挑战赛-PWN-WP 1!5!题目保护情况 64位ida逆向 题目很明确让我们写shellcode,但是做了一些检查我们进入函数看看 分析那么思路很明确就是可见字符shellcode的编写,先看看我们能用什么 那么可以看见,我们可以用异或,没有pop rsi;pop rdi;还有syscall等命令可以用,pop rdi的机器码是\x5f,而pop rsi的机器码是\x5e,syscall的机器码是\x0f\x05 2024-07-27 赛题WP #赛题复现
常回家看看之off_by_one ❗off_by_one这个漏洞比较特殊,它不像上一期的堆溢出,可以溢出很多字节,它只能溢出一个字节,在栈里面也可以通过这个漏洞修改返回地址什么的,在堆里面我们主要利用它来修改堆块的大小,形成fake_chunk也就可以进行堆的重叠,在64位的时候如果申请0x18,0x28,0x38这样的堆它的size位是0x21,0x31和0x41,那为什么,头部0x10加申请的0x18大小已经是0x28大小了为 2024-06-22