能力值:
( 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出来,还原导入表、重定位表等重构自己就行了
参考这个 4d7K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6Y4L8r3#2U0k6r3!0F1j5g2)9J5c8W2m8J5L8$3y4W2M7%4y4Q4x3X3c8p5N6h3#2H3
|
能力值:
( 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 楼
3c8K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3u0D9L8$3N6Q4x3X3g2U0M7$3c8F1i4K6u0W2L8X3g2@1i4K6u0r3k6r3q4D9k6i4u0C8k6q4)9J5c8X3q4J5N6r3W2U0L8r3g2Q4x3V1k6V1k6i4c8S2K9h3I4K6i4K6u0r3y4e0l9$3z5o6R3%4z5e0l9`.
给出了详细的步骤说明,相信按照其你可以得到你想要的。
而我身边并没有现在的包。
|
能力值:
( LV7,RANK:110 )
|
-
-
16 楼
你是不是,是想自己加载自己的DLL之后,动态更改其中的代码,然后将更改的代码写回原文件?这个简单啦!根据PE文件的内存对齐值和文件对齐值,将代码在的内存地址转换成文件上的指针,然后写入就行了!
|
|
|