一条新的glibc IO_FILE利用链:_IO_obstack_jumps利用分析

7resp4ss / 2022-11-28

众所周知,由于移除了__malloc_hook/__free_hook/__realloc_hook等等一众hook全局变量,高版本glibc想要劫持程序流,离不开攻击_IO_FILE。而笔者近期在国外大佬博客中发现一条新的可利用的函数调用链,与house of apple2一样,只需要一次地址任意写,而且适用于目前所有的glibc版本,故在此结合源码和自己的理解总结分享,也感谢roderick师傅和whiter师傅的指导与支持。如果有哪里不对恳请师傅们斧正!

fuzzer AFL 源码分析(四)-监控

f0cus77 / 2022-11-15

上一部分对afl如何实现反馈进行了较为详细的介绍,本文将对afl如何实现监控进行分析。监控是指afl能够成功运行目标程序、获取目标程序的反馈信息(运行状态)并判定此次运行是否有效(此次运行的样例是否增加了模糊测试的覆盖率、是否崩溃或超时),以更有效的指导下一次模糊测试及保存崩溃。

M

2022 USTC Hackergame WriteUp 0x03

MiaoTony / 2022-11-07

这是 喵喵 2022 Hackergame WriteUp 的第三篇,主要也是一些难度稍大的题目,以及喵喵的碎碎念。

M

2022 USTC Hackergame WriteUp 0x02

MiaoTony / 2022-11-07

这是 喵喵 2022 Hackergame WriteUp 的第二篇,主要包括一些难度稍大的题目,以 binary 类型为主。

希望师傅们看了都能有所收获喵~

fuzzer AFL 源码分析(五)-变异

f0cus77 / 2022-11-02

前面几篇文章将afl的大部分内容都已经覆盖到了(编译、反馈到监控),最后一个部分主要讲afl是如何挑选样本并针对样本的数据进行变异的。通过之前的分析我们已经知道,编译的种子通过链表的形式形成种子队列,种子经过变异后如果能够触发目标程序新的行为,会作为新的种子队列存入到链表中。但是对于新一轮的模糊测试,挑选哪个种子进行变异以及如何变异尚未解决,本文主要阐述afl是如何挑选种子进行变异以及如何变异。

内联缓存机制浅析与由此而来的类型混淆利用原理

TokameinE / 2022-10-19

今年六月份见到了 CVE-2022-1134 ,这是 V8 在 Turbofan 中另一个很有意思的攻击面,提交者在这之后很详细的介绍了这个漏洞的利用方式,它的利用方法同之前的 Turbofan 有着很不一样,但却相当有意思的地方。

glibc2.35后门执行研究:tls_dtor_list攻击劫持exit执行流程

dreamcat / 2022-09-29

从今年4月份开始,慢慢接触高版本的glibc,高版本glibc的堆题也使得国内ctf比赛进入到一个新的时期

fuzzer AFL 源码分析(三)-反馈

f0cus77 / 2022-09-26

上一部分对afl-fuzz的总流程进行了概要性的阐述,接下来将会对关键的代码模块进行详细的分析。

先对afl-fuzz过程中反馈与监控机制的实现进行分析,反馈是指afl在对目标程序的模糊测试过程中,目标程序可以将本次运行过程中的状态反馈给afl。本文主要介绍该afl是如何具体实现分支信息的记录以及更高效的运行目标程序的。

PPL利用

Drunkmars / 2022-09-22

PPL表示“受保护的流程”,但在此之前,只有“受保护的流程”。Windows Vista / Server 2008引入了受保护进程的概念,其目的不是保护您的数据或凭据。其最初目标是保护媒体内容并符合DRM(数字版权管理)要求。Microsoft开发了此机制,以便您的媒体播放器可以读取例如蓝光,同时防止您复制其内容。当时的要求是映像文件(即可执行文件)必须使用特殊的Windows Media证书进行数字签名(如Windows Internals的“受保护的过程”部分所述)。

零基础要如何破除 IO_FILE 利用原理的迷雾

TokameinE / 2022-09-20

好久以前,在我完成 Glibc2.23 的基本堆利用学习以后,IO_FILE 的利用就被提上日程了,但苦于各种各样的麻烦因素,时至今日,我才终于动笔开始学习这种利用技巧,实属惭愧。

近几年,由于堆利用的条件越来越苛刻,加之几个常用的劫持 hook 被删除,IO 的地位逐渐有超过堆利用的趋势,因此为了跟上这几年的新潮,赶紧回来学习一下 IO 流的利用技巧。

codeql实践之查找house_of_kiwi利用点

kkkbbb / 2022-09-06

codeql是一款强大的静态扫描工具,通过codeql强大的自定义规则我们可以编写sql语句来搜索源码中我们可能感兴趣的代码。ctf中高版本libc的利用方法中很多都用利用了IO函数,即利用stdin/stdout/stderr->vtable 修改虚表指针指向对我们有用的伪造的vtable又或者其他存在可利用函数的_IO_xxx_jumps虚表,如:house_of_kiwi,因此我便诞生了使用codeql查找libc中所有跳转到IO的函数调用的想法,更方便的分析libc中的利用点,也看看能不能找出house_of_kiwi中使用的malloc_assert->fflush利用点。

fuzzer AFL 源码分析(二)-fuzz流程

f0cus77 / 2022-09-01

第一部分介绍了afl插桩编译的过程,思考了很久才定下第二部分写些什么。本来打算第二部分详细解释插桩部分和forkserver的代码的,但是感觉如果对afl-fuzz的整体流程没有大致掌握的话,直接去描述细节会让人不理解为什么afl这部分要这样去设计,因此决定在第二部分将afl-fuzz的主要流程(main)和部分不是关键代码的函数给说清楚,后续再逐步对关键代码模块进行详细分析,j继而实现对afl模糊测试的解析。

H

UAC 原理与检测

HaCky / 2022-08-30

任何需要管理员访问令牌的程序都必须征得同意(即UAC弹窗),但是存在一个意外,即父进程和子进程之间存在关系,即子进程从父进程中继承访问令牌,这是UAC 绕过的基础。本文将选择UACME中的3种不同的ByPass UAC的例子,为各位讲解ByPass UAC的原理。然后分析UAC的基本基本原理,继而寻找ByPass UAC的通用检测策略,本文行文仓促,如有错误,请各位积极指正。

V

基于USMA的内核通用EXP编写思路在 CVE-2022-34918 上的实践

veritas501 / 2022-08-22

书接上回《CVE-2022-34918 netfilter 分析笔记》

在上一篇文章中,我将360在blackhat asia 2022上提出的USMA利用方式实践于 CVE-2022-34918的利用过程中,取得了不错的利用效果,即绕过了内核诸多的防御措施。

但唯一的缺点是,上次的利用脚本需要攻击者预先知道内核中的目标函数偏移,而这往往是实际利用中最难获得的。这也正是DirtyCow,DirtyPipe这些逻辑类漏洞相比于内存损坏类漏洞最大的优势。

这篇文章我们再以CVE-2022-34918为模板,尝试让USMA在利用过程中不再依赖内核中的地址偏移,从而内存损坏型漏洞的exp能够和逻辑类漏洞一样具有普适性。

PowerPC PWN从入门到实践

ayoung / 2022-08-08

前段时间2022虎符决赛结束,赛后从学长那看到了题目,其中出现了一道PowerPC64架构的pwn题,从架构方面来说比较少见,刚好之前看过一道PowerPC架构32位栈溢出的题目,于是放到一起整理一下。

投稿

随机分类

Exploit 文章:40 篇
Ruby安全 文章:2 篇
Android 文章:89 篇
企业安全 文章:40 篇
浏览器安全 文章:36 篇

扫码关注公众号

WeChat Offical Account QRCode

最新评论

路人甲@@

https://github.com/ice-doom/CodeQLRule 代

S

shungli923

师傅,催更啊!!!

1

1ue1uekin8

6

素十八

F

f0zz

给大佬点赞

RSS订阅