欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

fastbin attack攻击中关于 malloc__hook

发布时间:2025/3/20 44 豆豆
生活随笔 收集整理的这篇文章主要介绍了 fastbin attack攻击中关于 malloc__hook 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

概述

在程序中设置钩子,用来在malloc,,对其进行检查,可以看到对应的函数调用后的地址是什么。

malloc__hook 也位于libc中的data段

它是一个地址

当调用 malloc 的时候 它会发生跳转到malloc__hook 所指向的地址

当我们把malloc__hook 所指向的地址 改为 system(“bin/sh”)

再次调用 malloc 的时候 就会发生跳转到 system() 处

操作

上述前提是获取 malloc__hook 的地址

有一个固定的偏移 (libc2.23 // ubuntu16): main_arena+0x58 = unsortbin表头的地址

接着获取malloc__hook的地址: main_arena - 0x10 = malloc__hook

即 malloc__hook=unsortbin表头地址-0x58-0x10

第二种方法:这里还有一个固定结论 偏移0x3c4b78

**

libc_base=(程序里的main_arena+88)-0x3c4b78(0x3c4b0+88,一般2.23_64的偏移都是这个,不同libc版本会有不同)

**

show(1) libc_base = u64(p.recvuntil('\x7f')[-6:].ljust(8,'\x00')) -0x3c4b78 malloc_hook = libc_base + libc.symbols['__malloc_hook']

主线程的arnea称为“main_arena”。子线程的arnea称为“thread_arena”。

这里需要我们先获取unsortbin的地址

即 unsortbin attack (leak libc)

主要是利用堆溢出的原理

步骤过程如下

这是chunk的结构组成部分




大致过程是这样的





prev-size 站位大小是8

总结

以上是生活随笔为你收集整理的fastbin attack攻击中关于 malloc__hook的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。