摘要:
AWDP typo 一道2.31的堆题 漏洞点位于edit功能,snprintf函数把用户输入作为format,导致了堆溢出以及格式化字符串漏洞 fix 从程序的代码不难看出分配出来的堆,前面八个字节是堆的size,后面的空间才是数据域 这里原意是修改heap的size,但是用错了函数,我们修改最大 阅读全文
摘要:
程序分析 第一眼菜单堆题,但程序自己实现了一个数据结构:表结构(page)储存Record 逆向出的page结构体如下,记录分配的内存以及record记录。然后堆内还存在一个数据结构records。两个结构之间的关系如图(请忽略我粗劣的画工) struct TablePage { void *mem 阅读全文
摘要:
MIPS PWN调试环境配置&工具安装(Ubuntu 22.04) 安装 qemu qemu 是一个支持跨平台虚拟化的虚拟机,有 user mode 和 system mode 两种配置方式。其中qemu 在system mode配置下模拟出整个计算机,可以在qemu之上运行一个操作系统。qemu 阅读全文
摘要:
protobuf pwn 准备工作 安装protobuf编译器 sudo apt-get install libprotobuf-dev protobuf-compiler 安装python依赖库 pip3 install grpcio pip3 install grpcio-tools googl 阅读全文
摘要:
[CISCN2024]华中半决赛 PWN部分题解 这次比赛中我攻击了2道,防御了3道 note 一道2.31堆题,保护全开,存在UAF漏洞 攻击 先填满tcache bin然后利用unsorted bin泄露libc地址,再UAF修改tcache的fd指针为free_hook,再将system函数的 阅读全文
摘要:
maybe_xor 感觉这道逆向题与其说是考逆向水平,倒不如说是考编写脚本的能力 首先题目给了个远程地址,nc连接会回显ELF: 接一串base64编码的东东,解码后发现是ELF文件。 用IDA打开发现是从数据段读取24个字节到栈上并进行异或,每个字节异或的值都不同,但异或后的结果不会写回栈 程序的 阅读全文
摘要:
[CISCN 2022 东北]hana 脱壳过程 首先看一下程序信息 程序检测到了UPX的特征,但是下面的特征又显示是VMP壳 使用010 Editor打开文件 将两个VMP0和VMP1改成UPX0和UPX1并保存文件,接下来使用UPX脱壳 分析程序 这里需要用到一个易语言反编译插件以及一个易语言函 阅读全文
摘要:
PWN 环境配置(Ubuntu系统) 如果不清楚从github上下载的工具的使用方法,可以在项目根目录下查看README文档 vscode 在Ubuntu 软件中心下载vscode(记得换成国内源,不会的话去搜索教程) 下载之后启动并安装python扩展 pip换源(阿里源) pip config 阅读全文
摘要:
题目详解 查看保护机制,地址随机化未开启 Arch: amd64-64-little RELRO: Full RELRO Stack: Canary found NX: NX enabled PIE: No PIE (0x400000) 查看main函数,题目给出了一个栈地址,同时还有个很明显的字符 阅读全文
摘要:
ez_apkk 解题过程: 将apk拖入jadx,查看MainActivity,发现是简单RC4加密,密钥是“55667788”,最后再将加密结果+1 public String Encrypt(String plainText, String key) { int[] S = new int[25 阅读全文