pwn工具箱之house of force

本文介绍了House of Force这种堆利用技术,主要思想是修改top chunk大小以控制内存分配,实现对特定位置的写入。利用难点包括更改top chunk大小、计算差值和控制分配大小。详细讨论了当malloc从top chunk分配时,如何通过控制top chunk来间接控制内存分配,以达到数据篡改的目的。
摘要由CSDN通过智能技术生成

house of force

基本信息

  • 利用类型:堆利用
  • 堆利用类型:top chunk相关
  • 利用思想:通过修改top chunk大小,使得分配任意大小都是从top chunk里边切出来,这样分配一个大小占满想要写的位置和当前分配位置top chunk的差,下一个分配就可以分配出想要写的位置

利用难点

  1. 需要有办法能够更改到top chunk大小
  2. 需要能够知道当前位置和要写位置的差值
  3. 需要能够自由控制将要分配的chunk的大小,也就是malloc的参数值
  4. 分配后,要能够修改分配出来的内容,这个技巧只负责分配出想要的位置。

详细信息

当相应的bins没有可分配的chunk的时候,malloc会从top chunk去切一部分作为分配的结果。如果top chunk不够大,将会调用sysmalloc向系统申请空间放入top chunk,然后再从top chunk进行分配:

      victim = av->top;
      size = chunksize (victim);

      if ((unsigned long) (size) >= (unsigned long<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值