Categories

Post List

5.2k words 5 mins.

# AkasecCTF2024 WriteUp-Pwn # yapping # 题目分析 一个纯汇编搓的程序,也就没有动态链接了。 没有栈溢出 但是能够覆盖栈上面保存的循环使用的 i 变量。用过修改这个变量实现一次任意地址写。 存在后门函数:win 函数 但是需要先修改 bss 上面的变量才能通过检查拿到 flag。 因此我们需要干的事情就是: 1. 修改 bss 上面的变量 2. 劫持程序执行流到 win 函数。 # 解题思路 但是我们只有一次写地址机会,如果直接劫持 vuln 函数的返回地址肯定无法干那么多事情。 我们于是开始尽可能利用现有的 buf 他调用 read 函数没有直接...
2.7k words 2 mins.

# 鼠鼠也是手搓过 VM 薯薯的啦 # 题目分析 未知 libc 版本,这里按照 2.35 的 Glibc 进行操作。 实现的 VM 只有一个寄存器,但是可以利用 unsorted bin 残留的 libc 指针实现任意地址读写。 但是只有一个寄存器有点鸡肋,于是采用栈的方法依次修改。 就是首先把所有操作以及地址存到栈上面,最后通过 pop 进行各自的读写操作。 由于末尾添加了 exit 函数,got 表不可写 (Full RELRO),绕过 got 进行栈上劫持执行流是不行了。 高版本 hook 基本都没了 exithook...
1.1k words 1 mins.

# Gaylgame - 第一次出题的尝试 # 题目连接 附件下载: PwnBase-Click2Download Download-Attachments 靶机链接: nc platform.akyuu.space 6666 也可以直接去这里看看: PwnBase-By-AkyOI CTF-Database of PWN # 出题想法 其实是 3 月出的题目。 有点类似剧情 heap 题目小南梁~ 自从见到堆题目开启随机化之后被恶心到之后就想着恶心出题人去(手动滑稽,我就不信出题人不做题) 而且出题的时候刚好学了高版本 IO 攻击,于是就整了个题玩。(本来是为了放在校内月赛的...
4.5k words 4 mins.

# [DASCTF X GFCTF 2024 | 四月开启第一局] pwn_wp # Control IDA 识别有点问题,重新识别后是个静态链接的题目。能拿到 syscall 的地址,而且没有开沙箱,所以想到直接 syscall 来 execve ('/bin/sh',0,0). 利用栈溢出漏洞就需要通过 exception 的 catch。但是好像程序定位 catch 段是依靠 ret 的地址的,所以程序返回地址就不能修改了,所以只修改一个 rbp 指向的数值就栈迁移了。 但是迁移到 gift 那里 0x10 太小,所以看到 main 函数读取 gift 的时候是先设置...
20k words 19 mins.

# GeekCTF2024 - WriteUp # 得分总览 Rank 19/633 Category 题目名称 得分 解题人数 Misc Welcome 17 612 Misc WhereIsMyFlag 104 95 Misc RealOrNot 333 23 Misc Boy's...
13k words 11 mins.

# NKCTF-pallu # 分析 一个 2.23 的 heap 实现的功能就是能创造几个种类的 chunk,可以自定义一个种类的 chunk,包括名称,size(根据两个现有的大小取平均值)等。。。 但是 size 的限制就是小于 0x4ff 的堆块不能被 free,也不能用它得到另外一个 size 的 chunk。 在 setlabel 函数里面可以使用堆溢出漏洞,但是前提是布置好对应 size 的 chunk。此外,还有记录使用次数的变量,一旦使用过这个漏洞 2...
11k words 10 mins.

# house of cat # Why cat? 众所周知,自从 glibc2.34 以后,glibc 的一堆 hook 都被删除了。比如 malloc_hook free_hook realloc_hook。为了应对这种情况,于是利用 IO_FILE 来攻击结构体来 getSHELL cat 直到最新的 libc 都是可以用的!!! # Prepare:Largebin Attack after 2.30 众所周知,自从 2.30 的 glibc 之后,添加了对 largebin 的检查 cif (__glibc_unlikely...
21k words 19 mins.

# shakticon-ctf-WP # 总览 rank 8/596 solved 20/28 很水的国外比赛,只有前三名全是女生的队伍才有奖金,最高 512,最低100,最低100,最低100 感觉适合拿来招新赛。 PWN 方向题目,过于简单,以至于太 friendly,不到半小时 ak 了 reverse 那里最难的那一道题思路 100% 正确,但是写出来的脚本是半自动的,手动的时候估计又小错误然后 flag 中间就有一点错误导致 500pts 没了,这题只有 4 人解出。 感觉在 re 方面还是有学习价值的,PWN 方面就算了,全是水题。接着就看看 pearlctf 了。那里还有个...
7.6k words 7 mins.

# 持续更新 ing... ... # Origin... 之前打 OI 的时候接触了缺省源这个东西,现在打 CTF 的时候某些模板语句都懒得写,到别的文件去 Copy,但是这样无疑还能够压榨时间。于是想把高中 DEV-C++ 的缺省源类似的东西运用到 VSCode 编写 EXP 的过程里面,于是就有了今天这篇文章。 原来你也玩缺省源 # SourceCode 没啥好解释的,就是写一个 prefix 然后按下 tab 就能自动产生你设置的对应的代码段。这样既可以避免手搓代码导致的腱鞘炎,又可以节省 Copy...
10k words 10 mins.

# [HGAME2024] Week4-EldenRingFinal # 题目描述 年轻人的第一道 IO_FILE 题目 结构体比较复杂的 heap,看似 free 函数之后没有清空指针会有 uaf 漏洞,但是由于 chunk 之间采用链表链接,取出 chunk 也就没法遍历到了,所以就相当于清空指针的作用。而且创建指向内容的 chunk 的 chunk 在 malloc 之后也写入了新东西,所以没法直接 UAF。 add_note 函数在往 chunk 写入内容的时候有 Off-By-One 漏洞,因此我们能使用 chunk extend 来覆盖之后的 chunk 实现 UAF...