摘要:
bi0s CTF 2023 Pwn部分wp notes 程序未开启Canary和PIE防护 首先可以看到main函数启动了两个线程,传递的参数heapInfo(给参数起这个名字是因为我一开始以为这是一道堆题......)为一个内存块的地址,通过shmat函数分配。func线程就是一个简单的数据存储功 阅读全文
摘要:
[CTF_Pwn堆漏洞利用] 2.基础知识——堆相关数据结构 我一直都计划开个专题,重新整理一下堆的知识点——这一部分我学的实在是太模糊了。 这篇博客的内容主要讲解堆的基础知识,依托于glibc源码进行剖析讲解。本文以glibc2.23版本作为用例,内容集中于通用的堆基础知识,诸如tcache等高版 阅读全文
摘要:
DASCTF_2022_11 Pwn WP 比赛那两天正好学校遣返学生,忙着跑毒没看比赛,后来做了一下,感觉挺有意思。 有的题还没做完,长期更新。 签个到 开了canary和PIE,但是没开NX,也不知道NX不开是什么意思,反正我没用到。 审计代码发现先读了一个name,这里有个越界的问题,虽然想的 阅读全文
摘要:
强网拟态2022 webheap 比赛没看,上周日精神内耗很严重,有点抑郁......后来摆脱这种状态了,但是又感冒了......题拖了很久才开始做 这是一道很恶心人的c++协议逆向题,这个协议逆向的过程我暂时不想写出来(ddl太多了),先发帖占个坑位。 关键函数是sub_1C7C和sub_18a3 阅读全文
摘要:
DASCTF_2022_10 坐牢捏坐牢捏 菜鸡只能看官方wp做题 1!5! 一道shellcode题 限制非常严格,只允许使用字符1 5 a 和除T之外的大写字母来编写shellcode。 0x5? 开头的是一系列的push和pop,可以直接使用 而0x31和0x35对应的是异或操作,第一个是将内 阅读全文
摘要:
汇编指令机器码对应列表 白嫖的,链接: 汇编指令机器码对应列表 l reg8: 8位寄存器。 l reg16: 16位寄存器。 l mem8: 8位内存数值。 l mem16: 16位内存数值。 l immed8: 8位立即数值。 l immed16: 16位立即数值。 l immed32: 32位 阅读全文
摘要:
IsThisHeap2? NewStar CTF 2022 公开赛赛道第四周 pwn 前言 这题的难度要高于IsThisHeap,算是前一道题的加深版,建议各位师傅在已经弄懂前一题或者已经NB到不需要看前一题的情况下再往下看。 话说就这个难度......这真的是新生赛吗? (由于本题涉及到了IO_F 阅读全文
摘要:
IsThisHeap? NewStar CTF 2022 公开赛赛道第四周 pwn 前言 一道披着堆题外衣的题,实际上和堆没啥大关系。但是这玩意对于新生来说多少有点难吧...... 这是给新生出的题??? 攻击思路整理 checksec一下发现是Partial RELRO,got表可写。另外程序未开 阅读全文
摘要:
IO_FILE结构体利用技巧 如果你是一个练习时长达到半年以上的Pwn手,你应该就会知道Pwn中很多进阶的题目都涉及到对于IO_FILE结构体的运用(当然你可能暂时还不了解这个技巧)。利用好IO_FILE结构体,学习相关技巧,你会不可思议地发现居然可以通过这些手段实现任意读写以及程序执行流的劫持。 阅读全文
摘要:
[BUUCTF] jarvisoj_itemboard 这是一道非常有意思的堆题 反编译代码审计 checksec一下看看开启的防护机制,发现没开Canary,但是对于堆题来说Canary往往是无关紧要。 另外这题是Ubuntu 16环境,没有tcache。 先看一下这个数据结构: typedef 阅读全文