随笔分类 -  复现

摘要:#### 前言 IDA和Ghidra对**mips64**架构的识别貌似不是很友好,赛场上由于反编译实在难看,所以很难静下心来去逆,于是赛后在期末考试前稍微花点时间做了一下复现。 #### 准备 **checksec**一下,发现是**mips64 大端**,没开**Canary RELRO**,可 阅读全文
posted @ 2023-06-06 12:36 狒猩橙 阅读(539) 评论(0) 推荐(0)
摘要:前言 拿到一个iot设备,笔者比较喜欢先去看一下它的历史漏洞,也许可以从中得到一些启发。发现Cisco之前修补过这个系列设备的命令注入漏洞。 https://sec.cloudapps.cisco.com/security/center/content/CiscoSecurityAdvisory/c 阅读全文
posted @ 2023-04-07 12:25 狒猩橙 阅读(329) 评论(0) 推荐(2)
摘要:前言 RealWorld CTF 5th 里的一道iot-pwn,根据真实设备固件改编而成,觉得题目贴近iot实战且很有意思,故在此记录一下复现过程。 题目分析 题目描述 Hello Hacker. You don't know me, but I know you. I want to play 阅读全文
posted @ 2023-01-27 10:30 狒猩橙 阅读(560) 评论(0) 推荐(2)
摘要:2022强网拟态 only 比赛的时候没做得出来,赛后复现一下。只有一次double free的机会,好在用的是seccomp开的沙盒,使得一开始就有很多空闲堆块,里面也残留有libc指针,通过堆风水去打stdout泄露libc,然后劫持__free_hook进行栈迁移即可。 exp: from p 阅读全文
posted @ 2022-11-07 14:13 狒猩橙 阅读(176) 评论(0) 推荐(0)
摘要:1.2.2 musl pwn 几个结构 __malloc_context(与glibc中的main_arena类似) struct malloc_context { uint64_t secret; #ifndef PAGESIZE size_t pagesize; #endif int init_ 阅读全文
posted @ 2022-10-18 07:55 狒猩橙 阅读(209) 评论(0) 推荐(1)
摘要:利用msg_msg实现任意地址读写 msgsnd和msgrcv的源码分析 内核通过msgsnd和msgrcv来进行IPC通信。内核消息分为两个部分,一个是消息头msg_msg(0x30),以及后面跟着的消息数据。整个内核消息的长度是从kmalloc-64到kmalloc-4096`。 /* one 阅读全文
posted @ 2022-09-26 15:56 狒猩橙 阅读(1216) 评论(1) 推荐(1)
摘要:利用ldt_struct 与 modify_ldt 系统调用实现任意地址读写 ldt_struct与modify_ldt系统调用的介绍 ldt_struct ldt是局部段描述符表,里面存放的是进程的段描述符,段寄存器里存放的段选择子便是段描述符表中段描述符的索引。和ldt有关的结构体是ldt_st 阅读全文
posted @ 2022-09-14 18:29 狒猩橙 阅读(739) 评论(1) 推荐(2)
摘要:利用userfaultfd + setxattr堆占位 很久之前便看到过这个技术的名字,但是由于自己的摆烂,一直没有管。今天终于找到时间好好看一下这个技术的利用方式。利用userfaultfd + setxattr算是内核里一种比较通用的利用技术,在实际场景中通常和堆喷射技术结合起来。但是在某些CT 阅读全文
posted @ 2022-09-05 12:53 狒猩橙 阅读(773) 评论(1) 推荐(1)
摘要:2022CISCN-satool 打国赛的时候自己还并不了解LLVM PASS pwn,前几天正好学习了一下LLVM PASS pwn,于是就顺便来复现一下这道题目。 首先找到二进制文件的重写函数的主体并对其进行分析。 开始就是限制了函数的参数和基本块的个数必须为1。 然后是先把一块区域变成可写可执 阅读全文
posted @ 2022-08-25 12:19 狒猩橙 阅读(140) 评论(0) 推荐(1)
摘要:堆喷射(heap spraying) 用2021QWB-notebook这一题来复习了Userfault的用法,以及初识内核堆喷射。同时也学习了work_for_cpu_fn这个函数的利用方法。它可以很稳定地绕过KPTI,执行commit_creds(prepare_kernel_cred(0))。 阅读全文
posted @ 2022-07-22 10:20 狒猩橙 阅读(421) 评论(0) 推荐(0)
摘要:摆烂很长时间之后,终于下定决心来看点新的东西。正好 winmt 师傅前不久把他 pig 修好的附件发给我了,我就借此来学习一下新版本的 IO_FILE 及 house of pig。 新版本的 IO_FILE 利用的函数是老版本中喜欢用的 _IO_str_overflow,我们来看一下 glibc 阅读全文
posted @ 2022-03-11 12:16 狒猩橙 阅读(442) 评论(3) 推荐(1)
摘要:看 glibc 2.32 源码: /* Safe-Linking: Use randomness from ASLR (mmap_base) to protect single-linked lists of Fast-Bins and TCache. That is, mask the "next 阅读全文
posted @ 2022-02-20 15:11 狒猩橙 阅读(220) 评论(0) 推荐(2)
摘要:推迟了好久的复现,那就在情人节这个特殊的日子复现一波吧。这题除了 ora 之外特别的地方就是用到了 retf 来进行 32 位和 64 位的切换。参考了 winmt 师傅的博客复现了一下。 import time from pwn import * context.arch = 'amd64' #c 阅读全文
posted @ 2022-02-14 12:37 狒猩橙 阅读(87) 评论(0) 推荐(1)