概述

在程序中设置钩子,用来在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相关推荐

  1. 好好说话之Fastbin Attack(1):Fastbin Double Free

    好像拖更了好久...实在是抱歉....主要是fastbin attack包含了四个部分,后面的例题不知道都对应着哪个方法,所以做完了例题才回来写博客.fastbin attack应该也会分四篇文章分开 ...

  2. 堆漏洞挖掘——fastbin attack漏洞

    一.核心思想 通过fastbins链的管理,达到目标地址(target)读写. 二.原理图解 fastbin存储freechunk的单链表结构: fastbins是如何存取fastchunk的,见文章 ...

  3. linux堆内存管理深入分析,【技术分享】Linux堆溢出之Fastbin Attack实例详解

    1. 摘要 在近几年各大CTF比赛中,看到有很多次pwn类别题中出现fastbin攻击的情况,例如今年的defcon,RCTF,胖哈勃杯,0CTF final等等 ,fastbin attack是堆漏 ...

  4. mysql in sql注入_在 SQL 注入攻击中检查数据库

    原文来自:PORTSWIGGER WEB SECURITY >> Web Security Academy >>Examining the database >>E ...

  5. CTF(pwn) Fastbin Attack

    Fastbin Attack Fastbin Double Free 其中linux中会有一个校验对于double free 即会判断当前 fastbin链表的头部,是否和当前释放的fastbin 是 ...

  6. “木马源”攻击影响多数编程语言的编译器,将在软件供应链攻击中发挥巨大作用...

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 专栏·供应链安全 数字化时代,软件无处不在.软件如同社会中的"虚拟人",已经成为支撑社会正常运转的最基本元素之一,软件的安全 ...

  7. 从工控网络安全攻击中学习的经验

    从工控网络安全攻击中学习的经验 一.摘要 ​ 自1980年代以来,我们观察到一系列针对工业控制系统 (ICS) 的网络攻击,其中一些已经影响到关键国家基础设施 (CNI) .虽然围绕以 ICS 为重点 ...

  8. 跳板攻击中如何追踪定位攻击者主机(上)

    前段时间西北工业大学遭受NAS攻击事件中,TAO在针对西北工业大学的网络攻击行动中先后使用了54台跳板机和代理服务器,主要分布在日本.韩国.瑞典.波兰.乌克兰等17个国家,其中70%位于中国周边国家, ...

  9. shiro 721 反序列化漏洞复现与原理以及Padding Oracle Attack攻击加解密原理

    文章目录 1. 前置知识 1.1 shiro550利用条件 原理 1.2 shiro721利用条件 原理 shiro-721对cookie中rememberMe的值的解析过程 1.3 基于返回包的sh ...

最新文章

  1. ORCLE 表中列的修改(非常全面哦)
  2. 众所周知,YouTube是个学习网站
  3. java 异常抛出 顺序_java异常抛出时间顺序
  4. Access数据库创建字段类型无效问题
  5. (八)linux驱动之ioctl的使用
  6. php饿死,中国第一懒人:父母去世后,23岁的他饿死家中
  7. (47)System Verilog数组排序
  8. git Gui从服务器拉去项目
  9. 如何在矩池云GPU云中跑DeepFaceLab
  10. 普及下Oracle hints语法
  11. js 判断是否为mac电脑 、还是windows操作系统
  12. 以业务流程为框架的企业组织设计
  13. 【智慧城市】GIS数据获取-获取道路/水路数据
  14. pyHook pyHook3 区别_“get+过去分词”表被动语态与系表结构的三大区别及四大特点...
  15. 想要学习C++,就必须要学习C语言吗?
  16. 2017 ECNA Regional Contest-G:Question of Ingestion(dp)
  17. JAVA使用HttpURLConnection请求HTTPS网站,不需要证书验证的DEMO教程
  18. 荣耀20手机不升级鸿蒙经验
  19. 自定义皮肤进服务器不显示,我的世界自定义皮肤为什么不能显示 我的世界自定义皮肤如何显示...
  20. EasyUI之表单验证

热门文章

  1. 揭秘阿里人工智能实验室首款智能音箱——天猫精灵X1
  2. 中兴通讯已在多个国家和地区商用了安全领域的解决方案
  3. 买了又扔 戴尔放弃vworkspace虚拟桌面
  4. arp的***和防御
  5. 眼见为实:.NET类库中的DateTimeOffset用途何在
  6. Hejr 6-8 - aamsaafanqs Blog - Blogster
  7. 【温故知新】CSS学习笔记(链接伪类选择器)
  8. 【MM 模块】 Optimized Purchasing 优化采购 3
  9. 2019年需要探究的十大战略性技术趋势
  10. 【PP操作手册】运行MRP产生计划订单