Chris's Blog

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

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/chris/Pwn/blind' Arch: amd64-64-little RELRO: Full RELRO Stack: Canary found NX: NX enabled PIE: No PIE (0x400000)...

网鼎杯Pwn之babyheap

unlink+uaf+fastbin attack

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

32位fmtstr漏洞利用

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

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

网鼎杯Pwn之GUESS

ssp leak + environ泄露

0x00 代码分析 1,检查保护 1 2 3 4 5 6 gdb-peda$ checksec CANARY : ENABLED FORTIFY : disabled NX : ENABLED PIE : disabled RELRO : Partial 开了CANARY 和 NX 2,使用IDA分析程序流程 程序将本地的fla...

360春秋杯之smallest

SROP利用

0x00 代码分析 很有意思的pwn题目,思路很新颖。 代码如下: 1 2 3 4 5 6 .text:00000000004000B0 xor rax, rax .text:00000000004000B3 mov edx, 400h ; count .text:00000000004000B8 ...

pwnable.kr之uaf

虚表利用

题目地址:http://pwnable.kr/play.php 连接 ssh uaf@pwnable.kr -p2222 (pw: guest) 0x01 程序分析 源代码 uaf.cpp 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33...

pwnable.kr之unlink

堆还是栈?

题目地址:http://pwnable.kr/play.php 连接 ssh unlink@pwnable.kr -p2222 (pw: guest) 0x01 程序分析 它直接给出了源代码unlink.c 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30...