专栏名称: 蚁景网络安全
致力于为你带来更实用的网络安全技术内容!
今天看啥  ›  专栏  ›  蚁景网络安全

realloc函数应用 泄露体验

蚁景网络安全  · 公众号  ·  · 2024-10-21 17:31

文章预览

本题主要介绍realloc函数,平时我们使用realloc最多便是在打malloc_hook-->onegadget的时候,使用realloc_hook调整onegadget的栈帧,从而getshell。 在realloc函数中,也能像malloc一样创建堆,并且比malloc麻烦一些,但是倒是挺有趣的 realloc realloc(realloc_ptr, size)有两个参数,并且在特定参数有特定效果 1.  size == 0  ,这个时候等同于free。也就是 free(realloc_ptr) ,并且返回空指针。即没有uaf 2.  realloc_ptr == 0 & & size > 0  , 这个时候等同于malloc,即 malloc(size) 3.  malloc_usable_size(realloc_ptr) >= size , 这个时候等同于edit 4.  malloc_usable_size(realloc_ptr) < szie , 这个时候才是malloc一块更大的内存,将原来的内容复制过去,再将原来的chunk给free掉 stdout泄露 这里我只给出结论,具体可以 参考 1. 设置 _flags & _IO_NO_WRITES = 0 2. 设置 _flags & _IO_CURRENTLY_PUTTING = 1 3. 设置 _flags & _IO_IS_APPENDIN ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览