这道题是湖湘杯2019的一道QEMU pwn,题目下载(提取码: 4wag)。QEMU pwn题目一般是基于QEMU源码进行修改或者添加,在QEMU模拟的PCI设备中引入漏洞,选手需要利用漏洞读取宿主机上的flag文件。
解压文件,查看内容:
调试Qemu CVE-2016-4952
发表于
Edited on
x64通用ROP gadget
发表于
Edited on
这是一道Redpwn CTF 2019很简单的溢出题,主要考察ROP exp的编写。
[srnr](https://pan.baidu.com/s/174jiewXQISoHb08Aqisy7Q 提取码: yt2r)
对二进制文件进行逆向分析,可以看到程序先读入了一个数字作为文件描述符,再从文件描述符中读取100000个字符,而buf是rbp-9,只要读超过17个字符就会覆盖到ret:
Tcache利用入门
发表于
Edited on
Tcache介绍
tcache是libc2.26之后引入的一种新机制,与fastbin类似,是一个LIFO的单链表,每条链上最多有7个chunk,free的时候先放入tcache,tcache满了再放入fastbin,unsorted bin,libc2.29之前不会检查double free。malloc的时候先去tcache找,其相关结构体如下:
1 | typedef struct tcache_entry |
复现思科IOS系统远程代码执行漏洞CVE-2017-6736
发表于
Edited on
Syzkaller Fuzz Android Kernel
发表于
Edited on
在Syzkaller官网上有关于如何对Android Kernel进行fuzz的方法,但是按照上面的步骤有很多不清楚的地方。
我的环境如下:
Android设备:Pixel
Android系统:Anroid9.0.0_r33
Android10内核调试
发表于
Edited on
Syzkaller Crash Demo
发表于
Edited on
gcc编译 替换库函数
发表于
Edited on
移植AFL到ARM架构
发表于
Edited on
说是移植AFL,其实是移植android-afl,因为AFL的插桩代码都是汇编写的,原版都是ATT汇编,要直接写ARM汇编有点难度,android-afl里有这部分内容,所以改起来容易一些。但是Android和普通Linux还是有一些区别的,我用的是树莓派3B,Raspberry系统。