自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 2025N1CTF PWN题目复现

N1CTF2025 PWN 复现 4/5

2025-12-11 15:46:36 686

原创 从一道题目来学习C++异常处理机制漏洞 #PWN

该漏洞来源于C++中的try catch语法。C++ 里的 try-catch 本质上是“异常传播与捕获”机制:一般对于可能发生异常的代码我们会使用 try 将其包裹,但是当该段代码在运行时检测到“无法就地修复”的错误,就抛出一个对象(throw);执行流会立即跳出当前函数,沿调用栈一路回退,直到遇到第一个“能处理该对象类型”的 catch 块;如果最终也没找到,std::terminate() 会被调用,程序终止。而 throw 抛出的异常必定需要通过某种方式被识别吧?

2025-12-10 23:23:03 665

原创 2025强网杯PWN个人打通题目简单总结

存在溢出,可以向后覆盖可以覆盖这里,有格式化字符串漏洞具体汇编是这样的但利用完之后我们面临flcose,symbol=1的风险,我们不想看到这个现象!于是我们这一次格式化字符串的攻击需要改fclose的got表,改成main函数,顺便泄露出堆上地址,(因为我在pwndbg中发现,flag被存储到了堆上)接下来再来一遍main函数,就很轻松得到flag了。

2025-10-20 16:42:32 455

原创 house of some

但是,为了防止未来这个检查的修复,Csome师傅发明了house of some利用手法,并编写了houseofsome自动化攻击库。house of apple2是针对如今高版本一把梭控制IO刷新流的好方法,其主要利用漏洞为。四:house of some利用思路 (不强求理解原理,可以跳过)三:house of some利用优点(相对于apple2)五:houseofsome自动化脚本攻击。一:house of some诞生背景。二:house of some利用条件。处的任意函数指针实现。

2025-09-10 18:41:59 415

原创 数据结构代码大全---C语言版本---或许是全网最全版本?

markdown文档一共4200行,或许是全网最全?2.1单链表2.2双链表2.3循环单链表2.4循环双链表3.1顺序栈3.2顺序共享栈3.3链式栈4.1队列4.2顺序循环队列4.3链式队列5.1串6.1树单纯的树的代码意义不大,更详细的分类在后面

2025-09-09 20:05:15 281

原创 格式化字符串总结

直接用下面这种形式,n代表想要泄露的地址是的第几个参数。$后面代表输出的格式。%n$x。

2025-08-30 23:06:29 473

原创 house of cat

1.fp.mode!= 02.fp->_mode <= 0 && fp->_IO_write_ptr > fp->_IO_write_base 或者 _IO_vtable_offset (fp) == 0 && fp->_mode > 0 && (fp->_wide_data->_IO_write_ptr > fp->_wide_data->_IO_write_base)

2025-08-30 17:17:19 808

原创 house of apple2

house of apple2属于House of apple利用手法大家庭,总体可分为三种调用方式,分为了IO_FILE->_wide_data 进行利用。_IO_FILE。

2025-08-16 11:24:48 1123

原创 Unlink

Unlink攻击是一种利用堆内存管理机制的漏洞利用技术。当进行smallbin或unsorted chunk合并时,系统会执行unlink操作将目标块从链表中移除。攻击者通过伪造目标块的fd和bk指针,可以篡改指针表中的地址,实现任意地址读写。主要攻击方式有两种:1)利用UAF漏洞修改堆块指针;2)通过堆溢出伪造fake chunk并修改相邻chunk的pre_size和inuse位。攻击成功后可以修改关键指针.

2025-08-14 09:35:28 692

原创 unsortedbin attack

本文介绍了unsortedbin的基本概念及其在内存管理中的作用,重点分析了unsortedbin attack利用技术。unsortedbin作为空闲chunk的缓冲区,采用FIFO机制管理。当满足特定条件时,攻击者可通过控制bk指针实现任意地址写入。文章详细讲解了unlink机制的攻击原理,并提供了针对magicheap题目的实际利用代码,演示了如何通过edit_heap操作修改chunk头部,触发unsortedbin attack向目标地址写入大数,最终完成题目要求的条件判断。

2025-08-14 08:53:39 868

原创 largebin attack

在2.30以前,缺少对largebin attack的检查,所以我们可以大胆的进行伪造,在插入一块新的largebin时,会将当前堆块的bk->fd和bk_nextsize->fd_nextsize写成当前堆块的地址,如下图,所以如果根据下图把bk构造成targetaddr1-0x10,bk_nextsize构造成targetaddr2-0x20,即可在插入largebin时触发unlink进行同时改写两处地址为heapaddr。largebin的chunk在fd的遍历顺序中,按照由大到小的顺序排列。

2025-08-13 21:26:58 954

原创 PWN的学习顺序推荐 | pwn学习指北

Pwn是一种在网络安全和黑客竞赛(如CTF,夺旗赛)中常见的技术类型。它主要涉及对程序漏洞的利用,以实现对目标系统的控制或获取敏感信息。

2025-03-03 23:32:20 1758 4

原创 pwn的一道题-- ezsyscall,题型是ret2csu+ret2syscall

(正常来说可以放read的got表的地址这样的话我们就可以直接调用一步read函数,但因为抹除了got表,所以我们需给寄存器赋值syscall)所以我们需要ROPgadget来给寄存器赋值(其实ROPgadget不能给rdx赋值,给rdx赋值需要进行ret2csu,这是后话)但是,不难看出,一旦csu之后,就没办法给rax赋值了,所以我们提前一步给rax赋值为59(execve的系统调用号)*X64程序中有限按照一下顺序使用rdi,rsi,rdx,r8,r9寄存器来传递参数,rax是系统调用号。

2024-12-10 14:33:06 998 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除