首页
社区
课程
招聘
[求助]为什么HeapCreate()创建堆的开始地址是00520000?
2008-11-18 11:44 8520

[求助]为什么HeapCreate()创建堆的开始地址是00520000?

2008-11-18 11:44
8520
在Ch6(堆溢出利用)中图6.2.5,标明:
    Address    Size
    ...         ...
   00520000   00001000 ;实验中HeapCreate()所创建的堆(原书注释)
    ...         ...

Q1:如何知道00520000是实验中HeapCreate所创建的堆?
Q2:当P151页的程序运行到_asm int3时,在图6.2.6上显示:
   Base                Block         Size      Description
      ...               ...           ...          ...
   00520000           005206B8        16          used
      ...               ...           ...          ...

   可是在我做这个实验中,00520000处的Description一直为"Free"状态。

请问这是什么原因?谢谢!

[培训]《安卓高级研修班(网课)》月薪三万计划,掌 握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 0
打赏
分享
最新回复 (7)
雪    币: 2056
活跃值: (13)
能力值: ( LV13,RANK:250 )
在线值:
发帖
回帖
粉丝
vxasm 6 2008-11-18 14:23
2
0
1 HeapCreate的返回值。
2 00520000是整个堆区的起始,包含了多个堆块,在多次调用HeapAlloc之后就会出现书中所显示的状态。
雪    币: 209
活跃值: (10)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
mathewzhao 2008-11-18 22:41
3
0
1.00520000这个值应该和具体环境有关?
  我在电脑得到的是00390000,所以有此一问

2.我再看一看

谢谢!
雪    币: 2056
活跃值: (13)
能力值: ( LV13,RANK:250 )
在线值:
发帖
回帖
粉丝
vxasm 6 2008-11-19 12:12
4
0
返回值的确和环境有关,这个不必强求一样。关键是要从这个例子中学习到堆的结构及Exploit思路。
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
曹冲 2008-12-18 14:16
5
0
用WIN NT内核,应该都一样的!
雪    币: 215
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
snowwalf 2009-2-12 20:25
6
0
我做的也是0x00390000
和平台环境有关的,作者用的是win2000
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
JINN 2009-3-20 22:22
7
0
我想你大概没有注意到P154下边,6.2.3识别堆表的第二段。
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
独自望海 2009-7-7 10:54
8
0
其实我也在疑惑这个问题
后来才发现 在不同的环境下 堆得地址也不一样啊 得看 EAX返回值是多少
游客
登录 | 注册 方可回帖
返回