首页
社区
课程
招聘
[求助]加密与解密第2版第8章P290,DllDemo.DLL的重定位数据为何有4个而不是2个?
发表于: 2008-6-3 20:30 4182

[求助]加密与解密第2版第8章P290,DllDemo.DLL的重定位数据为何有4个而不是2个?

2008-6-3 20:30
4182
具体参见第二版P290面,我用LordPE也得出四个重定位数据,如下:
重定位数据1:0F30
重定位数据2:2330
重定位数据3:0000
重定位数据4:0000

书上提到第三个是为了对齐,但如果是为了使每个段4字节对齐,那么到重定位数据2的时候这个重定位段已经有8+2*2=12个字节了,已经对齐了,为何后面还加两个ABSOLUTE的重定位数据3和4呢?

我的理解是只要非对齐的重定位数据个数为偶数时,就不需要添加任何ABSOLUTE的重定位数据。若为偶数,只需添加一个以对齐4字节。

以上结论我用LordPE打开User32.dll后得到了验证。

但是这里的例子,就让我有些奇怪。不知道是哪里理解错了,请各位指教!多谢先!

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
可能高手们没有注意到。呵呵
2008-6-4 09:26
0
雪    币: 107
活跃值: (12)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
3
最初由incrediman发布
重定位数据1:0F30
重定位数据2:2330
重定位数据3:0000
重定位数据4:0000

我的理解,你所说的重定位数据3:0000 是重定位块结束标识。
没有重定位数据4.
2008-6-4 12:51
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
呵呵,可书上说的就是有4个重定侠块呢。哎,真是郁闷了。先谢谢你了!
2008-6-4 16:18
0
雪    币: 107
活跃值: (12)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
5
请看如下帖子的5.13 问题,或许能帮到你
http://bbs.pediy.com/showthread.php?t=65620
我没有书,不知道怎样写的,学习方法是活读书不是死读书。万一书上由于疏忽写错了或者漏写了什么,你在那里死刻就不值得了,能前后贯穿起来,掌握其要领为目标。
2008-6-4 20:29
0
雪    币: 44229
活跃值: (19960)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
6
你没有理解错。
00 10 00 00 0c 00 00 00 0f 30 23 30

可以把后面4个字节的0删除,同时你修正Size OfBlock为0c

另外,别忘了将IMAGE_BASE_RELOCATION的Size设置成0c
2008-6-4 21:23
0
游客
登录 | 注册 方可回帖
返回
//