从gyctf_2020_some_thing_exceting复习double free机制(glibc-2.23源码分析向

本文探讨了一次doublefree攻击时遇到的非预期错误,通过分析ELF文件结构和glibc源码,揭示了freechunk过程中如何导致错误。错误源于freechunk的size字段被错误地设置为大数值,影响了chunk管理,特别是fastbin的处理。文章强调了在进行doublefree攻击时,需谨慎处理与管理堆块大小相同的chunk的分配和释放。此外,还介绍了如何编译调试glibc源码以及查看ELF文件的符号表。

前言

本文主要记录在double free攻击的时候碰到了非预期的错误,第一次尝试进行逐步分析,同时继续理解ELF的文件结构和glibc源码。
欢迎各位师傅交流、指正。

gyctf_2020_some_thing_exceting题目漏洞分析

ida查看可以看到,程序在一开始执行的时候就将flag文件读入了内存当中。同时byte_6020a0处设置了0x60的大小,这一点让我们可以构造fakechunk。
在这里插入图片描述
另外在free chunk的时候存在UAF漏洞,马上就可以想到利用double free操作修改fastbin链表来获得flag 附近内存的控制。
在这里插入图片描述

exp

题目详细分析文章地址, 我们截取开头一部分的exp。
可以看到首先进行了两次申请,后面马上做了double free的攻击,此处的double free是正常的。
在这里插入图片描述
但是当修改exp如下的时候,就会遇到double free的错误了。


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值