Chris's Blog

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

small bin attack

关于smallbin的利用

最近刷了道有意思的pwn,做个记录分享一下 程序逻辑 Add 函数 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 34 unsigned __int64 sub_1340() { unsigned int v1; // [rsp+4h] [rb...

西湖论剑线下个人赛writeup pwn部分

文件下载 pwn1 简单的stack_pviot,但需注意一点,把rsp迁移到.bss段调用puts时要注意上方的stdin与stout结构体,若在调用puts时,栈空间覆盖到了输入输出流,会导致leak失败。我的解决方案是把rsp迁移到离stdin与stout结构体更远的地方,再执行控制流程。 exp 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...

2019强网杯writeup

PWN+Reverse部分

持续更新中….. Reverse JustRe 1.程序主要逻辑: 输入为26个字符,过两个check即可得到flag: 2.check1: 把前8个字符转成4字节16进制:“12345678” —> 0x12345678 同理下面代码不贴出来了,把第9、10个字符同样转成1字节16进制。 接下来是一系列sse指令操作,伪代码中v21是输入的第9-10位...

2019西湖论剑writeup

0ctf2018heapstorm2

pwn1-story 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 34 35 36 37 38 39 40 41 42 43 44 #/usr/bin/env python # -*- coding: UTF-8 -*- ##简单栈溢出,fsb from...

NCTF2018之homura

不知名的Unsorted_bin利用

这道题有点难度,比赛结束时也没人提交flag,后来有时间自己研究了一下,有了新的思路 CheckSec 1 2 3 4 5 6 7 [*] '/home/chris/homura' Arch: amd64-64-little RELRO: Partial RELRO Stack: Canary found NX: ...

pwnable.tw之D3-a5lr

花式ROP

程序分析 1 2 3 4 5 6 7 [*] '/home/giantbranch/D3-a5lr' Arch: amd64-64-little RELRO: Full RELRO Stack: No canary found NX: NX enabled PIE: No PIE (0x400000) ...

pwnable.tw之un3xp10itabl3

aslr syscall 利用

程序代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0x400544 <main>: push rbp 0x400545 <main+1>: mov rbp,rsp => 0x400548 <main+4>: sub rsp,0x10 0x40054c <main+8>: ...

铁三2018全国总决赛之myhouse

House of force+ 任意地址写1null

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

铁三2018全国总决赛之bookstore

fastbin attack + 整数溢出

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

铁三2018全国总决赛之littlenote

double free +堆块伪造

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