b0ldfrev's Blog

If you are proficient in assembly, everything is open source.

铁三2018全国总决赛之myhouse

House of force+ 任意地址写1null

checksec 1 2 3 4 5 6 7 [*] '/home/b0ldfrev/myhouse' Arch: amd64-64-little RELRO: Partial RELRO Stack: Canary found NX: NX enabled PIE: No PIE (0x400000) ...

铁三2018全国总决赛之bookstore

fastbin attack + 整数溢出

checksec 1 2 3 4 5 6 7 8 b0ldfrev@ubuntu:~$ checksec myhouse [*] '/home/b0ldfrev/myhouse' Arch: amd64-64-little RELRO: Partial RELRO Stack: Canary found NX: NX enab...

铁三2018全国总决赛之littlenote

double free +堆块伪造

铁三这次全国总决赛的个人赛给了三道Pwn题,littlenote 算得上里面相对简单的一道 下面看程序ida代码 checksec 1 2 3 4 5 6 7 8 b0ldfrev@ubuntu:~/Pwn$ checksec littlenote [*] '/home/b0ldfrev/Pwn/littlenote' Arch: amd64-64-little ...

南邮NCTF2018之smallbug2

X64 FmtStr

最近刷了一下南邮的CTF比赛,1000分的动态积分,pwn了两道800分的,有一道是关于vsyscall的,还有一道就是关于64位格式化字符串利用的,说它简单其实并不简单…毕竟最后只有4人提交了flag… 关于fmtstr的骚操作有很多,比如泄露,写got表,写ret,写.fini_array,栈迁移到堆等 32的fmtstr任意地址写很容易实现,因为地址中不含”\x00”,pr...

2018湖湘杯Reverse之Replace

简单加密

程序分析 用exeinfope查壳,加了UPX 载入od,发现程序基地址被随机化,开了aslr 用aslr_disabler干掉aslr方便调试,再载入程序 看到pushad,我直接用esp定律找OEP了,找到OEP后用ollyDump脱壳,本来是想着用ImportREC工具重建IAT的,结果发现ollyDump的重建输入表功能也挺好用的,到这里就脱壳成功。 用IDA的f5...

House of orange🍊

无free的堆利用

为了学习”传说中”的House of orange🍊,我去把glibc源码的malloc.c genops.c关于内存分配和I/O Operations的源码研究了一下,梳理了整个流程,我把研究的一些细节的东西写下来,供分享。 House of orange 概述 House of Orange 的利用比较特殊,首先需要目标漏洞是堆上的漏洞但是特殊之处在于题目中不存在 free ...

网鼎杯Pwn之pesp

多方法解题

文件下载 0x00 检查保护 堆利用常规保护 0x01 代码分析 经分析,程序每add一个item,就会将其 长度和分配的mem地址分别 放入itemlist的itemlist[n]与itemlist[n+1] (n从0开始) change函数存在明显的溢出,可任意长度的溢出。 remove函数执行free时有置零处理。 0x02 利用思路 change函数有溢...

网鼎杯Pwn之blind

_IO_FILE 利用

0x00 代码分析 1,检查保护 1 2 3 4 5 6 [*] '/home/b0ldfrev/Pwn/blind' Arch: amd64-64-little RELRO: Full RELRO Stack: Canary found NX: NX enabled PIE: No PIE (0x4000...

网鼎杯Pwn之babyheap

unlink+uaf+fastbin attack

0x00 代码分析 1,检查保护 1 2 3 4 5 6 [*] '/home/b0ldfrev/Pwn/babyheap' Arch: amd64-64-little RELRO: Full RELRO Stack: Canary found NX: NX enabled PIE: No PIE (0x4...

32位fmtstr漏洞利用

记一32位格式化字符串漏洞利用

0x00 代码分析 1,检查保护 1 2 3 4 5 6 [*] '/home/b0ldfrev/Pwn/pwn4' Arch: i386-32-little RELRO: Partial RELRO Stack: No canary found NX: NX enabled PIE: No PIE (0x...