首页
社区
课程
招聘
[求助]小白问题:PE的INT指向的IMAGE_IMPORT_BY_NAME结构是连续的吗?
发表于: 2018-6-21 22:57 4339

[求助]小白问题:PE的INT指向的IMAGE_IMPORT_BY_NAME结构是连续的吗?

2018-6-21 22:57
4339
看《黑客免杀攻防》介绍导入表的时候看到了红框这句话,我觉得有问题啊。。。
看遍历的代码,大概都是OriginalFirstTrunk (RVA)指向一个IMAGE_THUNK_DATA32结构数组,以空的 IMAGE_THUNK_DATA32结束。而(如果按名称导入)每一个 IMAGE_THUNK_DATA32的AddressOfData (RVA)指向一个IMAGE_IMPORT_BY_NAME结构。
我的理解是 OriginalFirstTrunk 指向一个连续的IMAGE_THUNK_DATA32结构数组,但 IMAGE_THUNK_DATA32的 AddressOfData未必指向一个连续的IMAGE_IMPORT_BY_NAME结构数组啊。谁来保证 IMAGE_IMPORT_BY_NAME结构数组一定是连续的,一定以空的 IMAGE_IMPORT_BY_NAME结构结束???

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 2
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
PE文件的格式标准来保证它是连续的,你可以用PE工具去观察一下调入表结构就明了了 
2018-6-26 08:43
0
雪    币: 226
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
用PEView工具查看一下rdata节里的导入表相关结构就可以。
2018-6-26 10:44
0
雪    币: 99
活跃值: (2403)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
lz理解得没错,书上的描述是错误的
2018-6-26 11:04
0
雪    币: 328
活跃值: (39)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
如果纯看结构的话,我感觉是可以不连续的
2018-6-26 12:47
0
雪    币: 1790
活跃值: (3786)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
6
IMAGE_THUNK_DATA32是连续的,而IMAGE_IMPORT_BY_NAME没有要求必须连续。看编译器生成规则了,可能连续也可能不连续。反正我做加壳时不连贯也正常可用。
win2000泄露代码等也都是直接计算偏移逐个去读取的,没有按照求组形式。再说了两点结构的数量都不一致,怎么用索引访问。
2018-6-26 20:53
0
雪    币: 2428
活跃值: (2566)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
谢谢大家,看来我的理解基本是正确的
2018-6-29 03:09
0
游客
登录 | 注册 方可回帖
返回
//