首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏赤道企鹅的博客

    hacknote (UAF)

    // 节点清空 puts("Success"); // 释放content和节点之后并没有把节点列表的指针设置为NULL,存在UAF 只要往里面写入backdoor函数的地址,再执行print函数(UAF)显示index 1的内容,就可以get flag了。 完整exp #!

    45820编辑于 2022-08-01
  • 来自专栏nginx遇上redis

    UAF你懂吗?

    产生原因: UAF漏洞的成因是一块堆内存被释放了之后又被使用。又被使用指的是:指针存在(悬垂指针被引用)。这个引用的结果是不可预测的,因为不知道会发生什么。 分析方式:   触发UAF漏洞需要一系列的操作,而不是像传统的溢出一个操作就会导致溢出。IE浏览器中的DOM标签由一个对象来表示,并且IE自带的类中存在了一些对象管理的方法。 分析UAF漏洞的要点在于搞清楚对象是在哪里被分配的,哪里被释放的,哪里被重用的。UAF的异常触发点是很明显的,就是对已释放的对象进行操作导致的异常。所以异常点也就是重用点。 而由于是对对象的操作,可以列出这个对象的所有方法,找出分配和释放的方法,对其下断来分析到底是怎么发生的UAF过程。 比如一个对象的指针,如果这个对象已经被释放或者回收但是 指针没有进行任何的修改仍然执行已被释放的内存,这个指针就叫做悬垂指针   2.UAF漏洞:Use-After-Free是一种内存破坏漏洞,简单的说

    1.2K20发布于 2019-10-15
  • 来自专栏逢魔安全实验室

    UAF Writeup - pwnable.kr

    0x00 UAF — pwnable.kr是一个韩国的CTF练习的网站,有很多经典的CTF题目供爱好者练习。 UAF(Use After Free)释放后重用,其实是一种指针未置空造成的漏洞。 故在重新分配时会出现UAF。 0x03 Solution — 这个题目涉及C++程序的逆向,我们可以看一下C++中的继承是怎么体现的,以Man为例 ? 通过UAF可以完成m对象指向的内存空间的修改。 但是,释放内存空间的过程是先释放m再释放w。 delete m;delete w; 通过一次UAF只能修改w指向的内存空间,而在引用的时候却先引用了m指向的内存空间。

    1.1K60发布于 2018-03-29
  • 来自专栏Seebug漏洞平台

    WhatsApp UAF 漏洞分析(CVE-2019-11932)

    一、新加坡安全研究员Awakened在他的博客中发布了这篇[0]对whatsapp的分析与利用的文章,其工具地址是[1],并且演示了rce的过程[2],只要结合浏览器或者其他应用的信息泄露漏洞就可以直接在现实中远程利用,并且Awakened在博客中也提到了:

    1.1K20发布于 2019-10-31
  • 来自专栏小刀志

    CVE-2015-2546 UAF Analysis and Exploitation

    This article will analyze a UAF vulnerability in win32k Window Manager (User) Subsystem in Windows: CVE is Windows 7 x86 SP1 basic virtual machine. 0x0 Abstract This article analyzes the CVE-2015-2546 UAF validation before passing the address as a parameter to function xxxMNHideNextHierarchy, which causes the UAF custom message procedure. ---- #2 Free Target Popup Menu Object In order to trigger use-after-free (UAF System user identity. ---- Postscript Both this vulnerability and CVE-2017-0263 are use-after-free (UAF

    62610编辑于 2022-12-12
  • 来自专栏sickworm

    FIDO UAF Authenticator Commands v1.0

    本文档制定了UAF Authenticators应该实现的用于支持UAF协议的底层的功能。 (译者注:目前UAF协议1.2版本只支持这一个断言方案) 整个UAF Protocol的架构和其操作定义在[UAFProtocol]中。 UAF_CMD_STATUS_ACCESS_DENIED UAF_CMD_STATUS_USER_CANCELLED UAF_CMD_STATUS_ATTESTATION_NOT_SUPPORTED 6.2.3.3 Status Codes UAF_CMD_STATUS_OK UAF_CMD_STATUS_ACCESS_DENIED UAF_CMD_STATUS_USER_NOT_ENROLLED UAF_CMD_STATUS_USER_CANCELLED UAF_CMD_STATUS_CANNOT_RENDER_TRANSACTION_CONTENT UAF_CMD_STATUS_ERR_UNKNOWN

    1.6K40发布于 2019-02-27
  • 来自专栏sickworm

    FIDO UAF各文档主要内容介绍

    比如Android是Client自己获取的facetID,Web好像是想把UAF直接做成W3C标准,让浏览器实现。由UAF Client主动获取的方式来实现,就不用担心伪造了。 fido-uaf-client-api-transport 主要介绍app如何发现和调用UAF Client。 fido-uaf-overview FIDO UAF协议的概述。 fido-uaf-protocol 主要介绍UAF Server和UAF Client之间的通信协议与各自的处理流程。 UAF Server和UAF Client中间通过app作为中介,app先向UAF Server发送操作请求,获得请求信息;然后发给UAF Client,并接收回复;再把回复发送给UAF Server, fido-uaf-reg 主要介绍规范中定义的常量,包括它们的意义和值。

    2K30发布于 2019-02-27
  • 来自专栏知道创宇

    WhatsApp UAF 漏洞分析(CVE-2019-11932)

    新加坡安全研究员Awakened在他的博客中发布了这篇[0]对whatsapp的分析与利用的文章,其工具地址是[1],并且演示了rce的过程[2],只要结合浏览器或者其他应用的信息泄露漏洞就可以直接在现实中远程利用,并且Awakened在博客中也提到了:

    1.4K20发布于 2019-10-24
  • 来自专栏sickworm

    FIDO UAF中4种Authenticators的区别

    在FIDO UAF中一共有4种Authenticators(认证设备): * first-factor bound authenticator(第一因素绑定认证设备) * second-factor 注意:4种Authenticators的分类并不是规范,在厂商不需要和其他厂商的FIDO UAF软硬件联合使用时,厂商可以自行选择Authenticator的实现方法。

    1.5K20发布于 2019-02-27
  • 来自专栏Seebug漏洞平台

    CVE-2017-16943 Exim UAF漏洞分析——后续

    2017年12月13日 上一篇分析出来后,经过@orange的提点,得知了meh公布的PoC是需要特殊配置才能触发,所以我上一篇分析文章最后的结论应该改成,在默认配置情况下,meh提供的PoC无法成功触发uaf 比上一篇分析中复现的步骤,只需要多一步,注释了/usr/exim/configure文件中的control = dkim_disable_verify 然后调整下poc的padding,就可以成功触发UAF string_get -> store_get(0x64) #define PDKIM_MAX_BODY_LINE_LEN 16384 //0x4000 在上一篇文章中说过了,无法成功触发uaf yield_length全局变量的值变为了0,导致了之后store_get(0x64)再次申请了一块堆,所以有了两块堆放在了heap1的上面,释放heap1后,heap1被放入了unsortbin,成功触发了uaf

    1.5K80发布于 2018-03-16
  • 来自专栏Seebug漏洞平台

    CVE-2017-16943 Exim UAF漏洞分析--后续

    知道创宇404实验室 上一篇分析出来后,经过@orange的提点,得知了meh公布的PoC是需要特殊配置才能触发,所以我上一篇分析文章最后的结论应该改成,在默认配置情况下,meh提供的PoC无法成功触发uaf 比上一篇分析中复现的步骤,只需要多一步,注释了 /usr/exim/configure 文件中的 control = dkim_disable_verify 然后调整下poc的padding,就可以成功触发UAF string_get -> store_get(0x64) #define PDKIM_MAX_BODY_LINE_LEN 16384 //0x4000 在上一篇文章中说过了,无法成功触发uaf yield_length 全局变量的值变为了0,导致了之后 store_get(0x64) 再次申请了一块堆,所以有了两块堆放在了heap1的上面,释放heap1后,heap1被放入了unsortbin,成功触发了uaf

    88160发布于 2018-03-30
  • 来自专栏sickworm

    FIDO UAF Client端工作流程介绍

    本文将介绍FIDO UAF的运作流程。 根据FIDO UAF文档介绍,FIDO UAF在移动设备上的实现将分为三层:Client,ASM,Authenticator。 ? ? 然后,App调用UAF Client并传入Server的数据执行注册,签名,注销灯操作。UAF Client收到请求后,选择合适的ASM下发,ASM选择合适的UAF Authenticator下发。 对于Android: 多个UAF Client可能同时存在,通过指定Intent寻找(UAF Client以Activity或Service的形式提供服务,这是官方给出的2种方案)。 最终App只会选择一个UAF Client进行通讯。可以使用PackageName来辨别UAF Client。 多个ASM可能同时存在,通过指定Intent寻找(同上)。 具体请看:FIDO UAF中4种Authenticators的区别

    5.2K30发布于 2019-02-27
  • 来自专栏Seebug漏洞平台

    CVE-2017-16943 Exim UAF漏洞分析

    作者:Hcamael@知道创宇404实验室 发表时间:2017年12月1日 感恩节那天,meh在Bugzilla上提交了一个exim的uaf漏洞:https://bugs.exim.org/show_bug.cgi id=2199,这周我对该漏洞进行应急复现,却发现,貌似利用meh提供的PoC并不能成功利用UAF漏洞造成crash 漏洞复现 首先进行漏洞复现 环境搭建 复现环境:ubuntu 16.04 server # 从github上拉取源码 $ git clone https://github.com/Exim/exim.git # 在4e6ae62分支修补了UAF漏洞,所以把分支切换到之前的178ecb: 直接用pip装就好了,两个PoC的区别其实就是padding的长度不同而已 然后就使用PoC进行测试,发现几个问题: 我的debug信息在最后一部分和meh提供的不一样 虽然触发了crash,但是并不是UAF 所以,本来一次简单的漏洞应急,变为了对该漏洞的深入研究 浅入研究 UAF全称是use after free,所以我在free之前,patch了一个printf: # src/store.c ......

    2.5K50发布于 2018-03-15
  • 来自专栏Seebug漏洞平台

    CVE-2017-16943 Exim UAF漏洞分析

    感恩节那天,meh在Bugzilla上提交了一个exim的uaf漏洞:https://bugs.exim.org/show_bug.cgi? id=2199,这周我对该漏洞进行应急复现,却发现,貌似利用meh提供的PoC并不能成功利用UAF漏洞造成crash 漏洞复现 首先进行漏洞复现 环境搭建 复现环境:ubuntu 16.04 server # 从github上拉取源码 $ git clone https://github.com/Exim/exim.git # 在4e6ae62分支修补了UAF漏洞,所以把分支切换到之前的 直接用pip装就好了,两个PoC的区别其实就是padding的长度不同而已 然后就使用PoC进行测试,发现几个问题: 我的debug信息在最后一部分和meh提供的不一样 虽然触发了crash,但是并不是UAF 所以,本来一次简单的漏洞应急,变为了对该漏洞的深入研究 浅入研究 UAF全称是use after free,所以我在free之前,patch了一个printf: # src/store.c

    1.4K60发布于 2018-03-30
  • 来自专栏小刀志

    UAF 漏洞 CVE-2016-0167 的分析和利用

    这篇文章将对 Windows 释放后重用(UAF)内核漏洞 CVE-2016-0167 进行一次简单的分析并构造其利用验证代码。 0x0 前言 这篇文章分析了发生在窗口管理器(User)子系统的菜单管理组件中的 CVE-2016-0167 释放后重用(UAF)漏洞。 并在第二次调用期间销毁目标弹出菜单对象;当执行流回到第一次调用的函数中时,目标弹出菜单对象已被销毁,但函数将在缺少必要的验证的情况下直接对目标弹出菜单对象的成员域进行访问甚至执行重复释放的操作,这将导致 UAF 0x3 验证 接下来编写验证代码以重现释放后重用(UAF)漏洞。 到当前这篇文章为止,已连续分析了多个弹出菜单 tagPOPUPMENU 对象的释放后重用(UAF)漏洞,因此文章中一些内容存在与前几篇文章内容重复的地方,但漏洞触发原理和细节、漏洞触发的条件不尽相同。

    1.3K30编辑于 2022-12-12
  • 来自专栏FreeBuf

    CVE-2018-8174:从UAF到任意地址读写

    poc中首先定义了两个数组array_a和array_b,并声明了一个类Trigger,Trigger中重载了析构函数Class_Terminate,在UAF函数中,创建了一个Trigger的实例赋值给数组 0x02 漏洞利用 UAF漏洞利用的关键是如何使用这个悬挂指针操作内存。 可以理解为下图,通过UAF MyClass1 和MyClass2都指向VBScriptClass的内存,同时MyClass1 MyClass2的变量也都保存在NameTbl中,如果MyClass1 MyClass2 首先在UAF函数中创建了一些VBScriptClass对象占据系统堆碎片为后面UAF准备,然通过触发漏洞获得指向已释放的Trigger对象内存的array_b,接着通过“Set mycls2 = New

    1.2K00发布于 2018-07-30
  • 来自专栏小刀志

    UAF 漏洞 CVE-2015-2546 的分析和利用

    win32k 内核模块窗口管理器子系统中的 CVE-2015-2546 漏洞,与上一篇分析的 CVE-2017-0263 漏洞类似地,这个漏洞也是弹出菜单 tagPOPUPMENU 对象的释放后重用(UAF 0x0 前言 这篇文章分析了发生在窗口管理器(User)子系统的菜单管理组件中的 CVE-2015-2546 UAF(释放后重用)漏洞。 从而在内核中直接释放菜单窗口对象关联的弹出菜单对象;当执行流返回到内核上下文时,寄存器 ebx 中存储的地址指向的内存已被释放,而函数在将该地址作为参数传递给函数 xxxMNHideNextHierarchy 之前缺少必要的验证,这将导致 UAF ---- #2 释放目标弹出菜单对象 要想在漏洞所在位置触发释放后重用(UAF)漏洞,则需要在适当时机执行对目标弹出菜单 tagPOPUPMENU 对象的释放。

    1.8K10编辑于 2022-12-12
  • 来自专栏信安之路

    UAF 实例-RHme3 CTF 的一道题

    堆的题目基本都是选择菜单,这里可以添加,删除,选择,编辑,展示球员,还可以显示队伍,功能看着很多啊

    1.1K00发布于 2018-08-08
  • Linux内核UAF漏洞利用实战:Holstein v3挑战解析

    PAWNYABLE UAF漏洞解析(Holstein v3)引言作者分享了学习Linux内核漏洞利用的历程,重点介绍了PAWNYABLE平台提供的学习资源。 (struct inode *inode, struct file *file) { kfree(g_buf); // 释放缓冲区但未置空 return 0;}通过多次打开/关闭驱动描述符,可创建UAF tty_struct的magic值(0x5401)使用特定消息类型(0x1337)标识msg_msg结构修复清理函数指针避免内核崩溃完整利用代码包含以下关键组件:/dev/ptmx喷射实现堆风水多阶段UAF

    37410编辑于 2025-08-19
  • 来自专栏Seebug漏洞平台

    Mozilla Firefox UAF 漏洞 - Seebug 每周一洞-2016-04-15

    image.png 漏洞概要 这个模块利用了一个 Mozilla Firefox 3.6.16use-after-free 漏洞。 一个对象元素, mChannel, 可以通过使用 nsIChannelEventSink 接口释放 OnChannelRedirect . mChannel 当设置 OBJECTs 数据属性,成为一个悬空指针且可被重复使用,在 Mac OS X 10.6.6, 10.6.7,10.6.8, 10.7.2 and 10.7.3测试成功. 推荐语 Mozilla Firefox,

    1.1K70发布于 2018-03-29
领券