/img/avatar.gif

Wings

Pwn Ptmalloc2 Fastbin Double Free

原理如未特殊说明, 均假定 libc 2.23, 64 位. FastbinFastbin 是 Ptmalloc2 的一种堆管理机制. 设计的目的在于分配内存时, 快速利用已有的合适 chunk. 大小小于 0x80 的 chunk free 后会被放在对应的 fastbin 中

2022 强网杯 Pwn devnull

一些废话:

混了强网杯, 贡献为 0. 太菜了, 啥也不会, 坐大牢.

一开始去搞的 pokemogo, 凭着高超的 Google 技巧, 找到了对应的资料, 然而不会. 稍微看了一下, 能懂个非常粗的原理. 然后 bb 一个下午 + 半个晚上给打穿了, orz. UserManager RBTree + musl heap, 逆不出来, 也不会利用, 爬了. devnull 被打穿了, 但是我对着它看了很久, 都不知道 /dev/null 能有啥漏洞 (以为要往里写东西啥的), 然后去 Google 无果. (后来 cor1e 学姐打出来了, 太强了) limiter 喊我看 qwarmup, 看了很久也看不出 leak 的方法, 遂寄.

Pwn Ptmalloc2 Unlink

终于进堆了. 先扯一点题外话. 感觉这段时间学堆, 颇有之前刚入门硬学 Linux 链接装载那方面的知识的感觉, 难啃. 其实一早就做过 CTF Wiki 上的 Off By One, 觉得不太好写. 现在倒是想明白了, 漏洞和攻击是两种不同的概念, CTF Wiki 的内容组织还是不够人性化. 把攻击方式没讲就先讲漏洞, 导致漏洞明白了, 怎么攻击完全不知道. 那我就从攻击方式来写了, 漏洞穿插在里面讲就行. 关于堆的基础知识, 应该不会总结, 因为自己都不明白. 边学着, 说不定哪天豁然开朗, 再来总结总结.