首页
社区
课程
招聘
[旧帖] [求助]DLL加壳调用问题 0.00雪花
发表于: 2008-9-11 10:18 3066

[旧帖] [求助]DLL加壳调用问题 0.00雪花

2008-9-11 10:18
3066
程序流程为:

Test.exe加载(1.dll和2.dll),并且1.dll也加载(2.dll)。

根据OllyDbg观察,Test.exe先加载1.dll,然后1.dll加载2.dll.

但是如果对2.dll进行加壳处理,处理了输入表/输出表等,那么运行

Test.exe时,会弹出“无法定位输入点xxx于动态连接库2.dll上。”

根据OllyDbg观察,Test.exe加载1.dll时,1.dll会首先去加载

2.dll,此时,2.dll虽然被映射到了内存中,但是并不会执行到

壳的OEP。也就是说没能够对2.dll进行输入表/输出表恢复,1.dll

就对其进行了函数地址获取。小弟对此感觉非常奇怪,为什么1.dll在

系统默认加载2.dll时,没用进入壳的OEP,不运行2.dll的自我恢复。

另外奇怪的是:如果对1.dll和2.dll用同样的方法一起加壳,那么

Test.exe就能够运行正常。也就是Test.exe加载1.dll,1.dll自我

恢复后加载2.dll,2.dll自我恢复,所有Dll加载都成功,程序运行

正常。这说明加壳处理应该问题不大,否则一起加壳的方式也无法成功。

而且加壳时注意处理了输入表/输出表/重定位/单次加载dll等问题。

由于无法调试系统默认加载函数,请高手指点该如何调试去解决这个问题?

在处理Dll加壳时,还应该注意什么问题?

谢谢

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//