能力值:
( LV2,RANK:10 )
|
-
-
2 楼
看到两个附件分别两次下载,也不知是去用了,还是帮我研究去了
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
哪位大神研究出结果了,给个回音呀
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
下载看了一下,易语言已经给出了内存加载的例子,证明是可以内存加载的. 你的内存加载代码在DllMain出有问题,证明你的代码在申请内存的时候没有设置内存执行权限 , 你可以看一下你的内存DllMain地址 是否具有PAGE_EXECUTE_READWRITE
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
我看了一下代码,原来申请内存设置的权限是PAGE_READWRITE,但是设置成PAGE_EXECUTE_READWRITE还是同样的异常。应该不是这个问题,入口地址是126BA5,总是在141604处抛出写内存0x00000000异常(UPX压缩过的DLL也是断在这儿),我看了下解压后的DLL文件,显示没有IAT数据,估计是IAT是原因。
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
qxyfw
我看了一下代码,原来申请内存设置的权限是PAGE_READWRITE,但是设置成PAGE_EXECUTE_READWRITE还是同样的异常。应该不是这个问题,入口地址是126BA5,总是在141604 ...
那是你的内存加载代码有问题.
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
试了几款github上的内存加载dll的C++源码,都没有正常运行解压后的WmCode.dll。能帮我处理这个问题吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
用OD跟踪过WmCode.dll,0x10141604处的代码可以正常过
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
qxyfw
用OD跟踪过WmCode.dll,0x10141604处的代码可以正常过 你那个压缩包里面有现成的易语言可以加载的代码. 你直接翻译就行了. 自己能做的事情
最后于 2022-1-19 23:22
被Mxixihaha编辑
,原因:
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
Mxixihaha
qxyfw
用OD跟踪过WmCode.dll,0x10141604处的代码可以正常过 你那个压缩包里面有现成的易语言可以加载的代码.&n ...
下载了个易语言5.6版,代码很少也没看懂整个内存加载流程
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
Mxixihaha:易语言我还得从头学习,你熟悉C++的话,帮我翻译成C++代码吧。
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
哪位朋友下载了附件并脱壳了WmCode.dll,发我邮箱一份吧,我自己用UPX解压后的,LoadLibrary可以加载使用,内存直接加载就不行了,用PE工具查看了一下,发现IAT为0,是这方面的问题吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
我从github上下载Joachim Bauch的0.0.4版本内存加载dll代码发现一个问题,大部分时候都会抛出写异常退出,偶尔会正常加载并且成功调用导出函数,我用的dll版本是用upx解压后的(不是用其他脱壳工具脱的),还有个疑惑,我现在有WmCode.dll三种文件,原始的428k(upx3.91压缩过的)、upx解压后的1.56M左右、手动脱壳后修复不完整的1.76M左右,这三种形态的动态库在我写的程序里显式加载都可以正常使用,但是手脱后的在附带的例子程序中无法加载使用。
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
推荐使用Enigma Virtual Box 打包
|
|
|