首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏安恒网络空间安全讲武堂

    堆利用之double-free

    再谈double-free漏洞原理 Double Free其实就是同一个指针free两次。虽然一般把它叫做double free。其实只要是free一个指向堆内存的指针都有可能产生可以利用的漏洞。 好清记住这两个漏洞,下面开始利用double-free进行漏洞利用。 ? double-free漏洞利用 首先泄露libc地址,并计算相关函数地址 Add(0x80,'AAAA') #0 Add(0x100,'AAAA') #1 Add(0x10, 之后再将chunk 6 free一次,造成double-free,触发unlink向后合并 Delete(6) 由于我们已经设置了fd和bk,unlink成功,最终bss中保存chunk double-free重要的是需要寻找一块保存当前堆块的内存地址。 -END-

    3.4K40发布于 2018-06-26
  • 来自专栏FreeBuf

    由恶意GIF文件引发的RCE漏洞,超过40000个应用受影响

    新加坡安全研究员@Awakened披露了关于WhatsApp(2.19.244之前版本)存在的RCE漏洞(CVE-2019-11932)利用的文章,该漏洞由Android-gif-Drawable开源库中double-free 因此,double-free错误的存在影响的应该远远不止WhatsApp。凡使用该GIF开源库进行GIF图像解析的安卓应用(APP)都可能受此漏洞影响。

    1.1K20发布于 2019-11-01
  • 来自专栏信安之路

    how2heap总结-上

    翻译: 这个程序展示了一个利用fastbin进行的double-free攻击. 攻击比较简单. 1st malloc(8): 0x1f89420 2nd malloc(8): 0x1f89440 3rd malloc(8): 0x1f89420 ---- 这里展示了一个简单的double-free = =) 关于double-free更具体的利用在下面介绍. 0x05 fastbin_dup_into_stack 源码: ? 输出: ? (8): 0x220f420,将栈地址放到free-list上. 4th malloc(8): 0x7ffef0f6a078 成功返回栈地址. ---- 这个程序和上个程序差不多,区别在于,这个程序在double-free 通过double-free后的第三次malloc将伪造的堆块地址放在了free-list,效果如下 ? 也许有人会有疑问,为什么链表上还会多出来一个地址?

    67800发布于 2018-08-08
  • 来自专栏tea9的博客

    whatsapp-CVE-2019-11932

    RCE demo.avi LINKS WhatsApp UAF 漏洞分析(CVE-2019-11932) 关于Android-gif-Drawable开源库存在远程代码执行漏洞的安全公告 How a double-free

    67620编辑于 2022-09-08
  • 来自专栏Seebug漏洞平台

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

    3、由于WhatsApp会显示每个媒体(包括收到的GIF文件)的预览,因此将触发double-free错误和我们的RCE利用。 ,连续两个帧的gifFilePtr->Image.Width或者gifFilePtr->Image.Height为0,可以导致reallocarray调用reallo调用free释放所指向的地址,造成double-free 在经过double-free掉0xa8大小内存后,第二次解析中,首先创建一个大小为0xa8的info结构体,之后将会调用DDGifSlurp解码gif,并为gif分配0xa8大小的内存,因为android

    1.1K20发布于 2019-10-31
  • 来自专栏知道创宇

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

    3、由于WhatsApp会显示每个媒体(包括收到的GIF文件)的预览,因此将触发double-free错误和我们的RCE利用。 ,连续两个帧的gifFilePtr->Image.Width或者gifFilePtr->Image.Height为0,可以导致reallocarray调用reallo调用free释放所指向的地址,造成double-free 0xa8: 经过reallocarray后将会调用DGifGetLine解码LZW编码并拷贝到分配内存: 第一帧数据如下,info->rasterBits = 0x6FDE75C580: 在经过double-free

    1.4K20发布于 2019-10-24
  • 来自专栏字节流动

    Native (C++) 开发中如何使用 ASan 检测内存错误

    重复释放指针 //double-free static void DoubleFree() { int *arr = new int[1024]; arr[0] = 11; delete arr; delete [] arr; LOGCATE("UseAfterFree arr[0]=%d",arr[0]); } ASan 检测结果(crash log)中出现关键字 double-free 13 20:02:16.475 6102 6102 I com.byteflow.learnffmpeg: ==6102==ERROR: AddressSanitizer: attempting double-free

    4.2K20发布于 2021-06-09
  • 来自专栏FreeBuf

    上传恶意文件时无意泄露两个0-day,被研究人员抓个正着

    包含特制 JPEG2000 图像的 button 对象在 Adobe Acrobat/Reader 中触发 double-free 漏洞; ? 5.

    60610发布于 2018-07-30
  • 来自专栏全栈程序员必看

    memwatch

    一、简介 memwatch可以跟踪程序中的内存泄漏和错误,能检测双重释放(double-free)、错误释放(erroneous free)、没有释放的内存(unfreed memory)、溢出(Overflow

    49520编辑于 2022-09-07
  • 来自专栏信安百科

    CVE-2024-26809|Linux提权漏洞(PoC)

    利用nft_pipapo_destroy()函数中的双重释放(double-free)漏洞实现本地提权。

    44010编辑于 2025-07-30
  • 来自专栏字节流动

    NDK(C++)开发中如何使用 ASan 检测内存错误

    重复释放指针 //double-free static void DoubleFree() { int *arr = new int[1024]; arr[0] = 11; delete arr; delete [] arr; LOGCATE("UseAfterFree arr[0]=%d",arr[0]); } ASan 检测结果(crash log)中出现关键字 double-free 13 20:02:16.475 6102 6102 I com.byteflow.learnffmpeg: ==6102==ERROR: AddressSanitizer: attempting double-free

    3.8K40发布于 2021-05-14
  • 来自专栏Postgresql源码分析

    Postgresql源码(121)事务状态中childXids的作用

    = NULL) pfree(s->childXids); /* We must reset these to avoid double-free if fail later in commit *

    30800编辑于 2024-02-19
  • 来自专栏全栈程序员必看

    内存调试MEMWATCH

    MEMWATCH 支持 ANSI C,它提供结果日志纪录,能检测双重释放(double-free)、错误释放(erroneous free)、没有释放的内存(unfreed memory)、溢出和下溢等等

    75640编辑于 2022-09-14
  • 来自专栏FreeBuf

    潜伏7年的Linux内核漏洞CVE-2017-2636曝光,可本地提权

    问题导致了double-free漏洞。 Double Free其实就是同一个指针free两次。

    1.5K80发布于 2018-02-23
  • 来自专栏数通

    SSH 安全致命漏洞:渗透路径与防御策略

    漏洞利用链:针对 CVE-2024-6387,攻击者可利用信号处理程序竞争条件,通过精心构造的请求触发 Double-Free 内存错误,最终以 root 权限执行任意代码。

    1K10编辑于 2025-03-11
  • 微软要“消灭 C/C++”,靠 AI 每月写 100 万行 Rust —— 是史诗级重构,还是史诗级翻车现场?

    borrowchecker辩论3小时letbuffer=String::from(userInput);//✅编译通过,且没有UB(UndefinedBehavior)//告别:Use-After-Free、Double-Free

    21910编辑于 2025-12-25
  • 来自专栏代码GG之家

    android native内存检测方案(二)

    Out-of-bounds accesses to heap, stack and globals Use-after-free Use-after-return (to some extent) Double-free

    5K100发布于 2018-02-02
  • 来自专栏Rust 编程

    Rust生态安全漏洞总结系列 | Part 2

    parse_duration 通过用太大的指数解析 Payload 来拒绝服务(DOS) RUSTSEC-2021-0053:算法库中 merge_sort::merge() 导致实现 Drop 的类型 双重释放( double-free RUSTSEC-2021-0053:算法库中 merge_sort::merge() 导致实现 Drop 的类型 双重释放( double-free) 漏洞类型:Vulnerability 漏洞分类:memory-corruption

    1.1K70发布于 2021-06-10
  • 来自专栏PHP饭米粒

    Swoole v4.5.3 版本发布

    (#3484) (@matyhtf) 修复 alpine 环境下 nullptr_t 没有被声明的问题 (#3488) (@limingxinleo) 修复 HTTP Client 下载文件的时候,double-free

    78920发布于 2020-09-10
  • 来自专栏FreeBuf

    一个漏洞能潜伏多少年?细数那些有名的高龄安全漏洞

    7年:Linux系统double-free漏洞 今年3月研究人员曝光一个Linux内核漏洞,这个漏洞影响的范围涵盖大多数主流的Linux发行版,包括Red Hat Enterprise Linux 6, 这个内核驱动负责处理高级数据链路控制(High-Level Data Link Control或简称HDLC)数据,这就导致了double-free漏洞。 7年:Samba远程代码执行漏洞 ?

    1.8K60发布于 2018-02-28
领券