House of Lore | Small bin Attack
基本信息
代码
这个不起作用
即使尝试绕过一些检查也不起作用,会出现错误:
malloc(): unaligned tcache chunk detected
目标
在小型 bin 中插入一个伪造的小块,以便可以分配它。 请注意,添加的小块是攻击者创建的伪造块,而不是任意位置的伪造块。
要求
创建 2 个伪造块并将它们链接在一起,并与小型 bin 中的合法块链接:
fake0.bk
->fake1
fake1.fd
->fake0
fake0.fd
->legit
(您需要通过其他漏洞修改释放的小型 bin 块中的指针)legit.bk
->fake0
然后您将能够分配 fake0
。
攻击
分配一个小块(
legit
),然后分配另一个块以防止与顶部块合并。然后,释放legit
(将其移动到未排序的 bin 列表中),然后分配一个较大的块,将legit
移动到小型 bin 中。攻击者生成一对伪造的小块,并进行必要的链接以绕过完整性检查:
fake0.bk
->fake1
fake1.fd
->fake0
fake0.fd
->legit
(您需要通过其他漏洞修改释放的小型 bin 块中的指针)legit.bk
->fake0
分配一个小块以获取合法块,将
fake0
移入小型 bin 的顶部列表再分配一个小块,获取
fake0
作为一个块,从而有可能读取/写入其中的指针。
参考资料
Last updated