能力值:
( LV12,RANK:760 )
|
-
-
2 楼
为毛要释放文件?
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
貌似好久没见VXK大神了,
释放文件肯定是有别的用途,哈哈,讨论下标题的问题,
|
能力值:
( LV5,RANK:60 )
|
-
-
4 楼
既然都释放啦,为什么不直接加载呢
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
PS:
sxpp
使用环境的限制
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
这个……直接让宿主释放呀
或者根据hinstance直接dump下来?
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
根据描述,这个dll不是LZ写的
所以LZ是想把dll文件提取出来分析
综合判断,LZ有做病毒分析或做反外挂之嫌疑
|
能力值:
( LV4,RANK:50 )
|
-
-
8 楼
你这个DLL本身就是自己(宿主)加载的,是自定义方式加载的
标准windows API当然无法获取名字之类的信息(宿主可以给些HOOK之后的对应API来模拟,但就你的描述的情况显然不是这样)
要从内存中获取保存到文件,就只能dump重建PE,这涉及到很多PE知识,跟写壳、脱壳差不多
重建难度跟这个DLL修改程度相关,比如他抹去了PE头你就要重构PE头等,反正就是还原成标准PE
如果他没修改,只是自己加载的,直接用loadpe等工具dump dll即可(更简单的,procmon找到原始文件复制一份)
如果你只需要代码段,直接用工具dump出内存就行了(自己写代码就用VirtraulQuery相关函数获取长度)
|
能力值:
( LV4,RANK:50 )
|
-
-
9 楼
DLL是你自己的?完整未修改的PE文件?
自己dump自己,这个需求真有点奇葩
那用VQM系列函数获取内存中个个节,dump出来,还原导入表、重定位表等重构自己就行了
参考这个 https://github.com/glmcdona/Process-Dump
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
既然是内存加载DLL, 那就找Loader的代码啊 ,找到后 在加载前钩住不就有DLL了.
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
你们语文明显学的不好啊,回答的都不合题目.
具体点就是用DLLBOX加载的DLL,在DLL中实现个将DLL本身释放到硬盘上,就这么个意思.
|
能力值:
( LV4,RANK:50 )
|
-
-
12 楼
楼上没说错,找Loader代码 在没加载前DUMP出来 就是文件
加载后还原为文件 难度较大。
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
内存加载前 就备份一块DLL文件内存
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
是自己的DLL先备份在写出来
|
能力值:
( LV4,RANK:50 )
|
-
-
15 楼
http://blog.csdn.net/dalerkd/article/details/50688790
给出了详细的步骤说明,相信按照其你可以得到你想要的。
而我身边并没有现在的包。
|
能力值:
( LV7,RANK:110 )
|
-
-
16 楼
你是不是,是想自己加载自己的DLL之后,动态更改其中的代码,然后将更改的代码写回原文件?这个简单啦!根据PE文件的内存对齐值和文件对齐值,将代码在的内存地址转换成文件上的指针,然后写入就行了!
|
|
|