首页
社区
课程
招聘
[讨论]如何不释放资源DLL到硬盘并注入别的进程运行
发表于: 2014-5-7 23:33 13899

[讨论]如何不释放资源DLL到硬盘并注入别的进程运行

2014-5-7 23:33
13899
内存加载资源DLL的看到蛮多的了
不晓得如果注入的话要如何实现
假设现有现成的DLL
不对DLL做任何改写
仅把DLL作为资源或数组形式写在自身文件
如何编程实现

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

收藏
免费 0
支持
分享
最新回复 (28)
雪    币: 257
活跃值: (67)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
可执行文件,都是从硬盘加载到内存的
不排除一些非常规手段,类似PE装载器,可以从自身加载
2014-5-8 00:45
0
雪    币: 2161
活跃值: (750)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
3
从系统的角度讲,任何镜像都是从文件加载的
都是经过ZwOpenFile,ZwCreateSection,ZwMapViewSection,再插入LDR来实现的
如果你不想释放文件,只能自己模拟镜像的加载,而模拟加载的镜像是不能被系统所承认的
在系统看来,模拟加载的镜像仅仅是一块普通的内存而已
2014-5-8 01:04
0
雪    币: 215
活跃值: (90)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
用dll劫持
2014-5-8 08:58
0
雪    币: 13269
活跃值: (4321)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
自身加载的看到论坛上有不少人发过了
但这样的注入方法能否实现呢
2014-5-8 13:19
0
雪    币: 13269
活跃值: (4321)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
看来实现的难度挺大
2014-5-8 13:20
0
雪    币: 13269
活跃值: (4321)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
想实现硬盘上不存在DLL的注入法
2014-5-8 13:21
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
8
写个shellcode远程内存LoadDLL就行了~把DLL作为一块内存投递给shellcode就行了~
在目标进程申请一大块内存,把DLL复制进去
在目标进程申请另一个大块内存,把shellcode复制进去
远程线程在目标进程运行 shellcode,参数是dll那大块内存。
然后问题就解决了~
2014-5-8 13:37
0
雪    币: 74
活跃值: (248)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
←_←不知道这个想法可不可行, 首先 ,申请一块内存 ,把dll 按照peloader的方式加载到这块内存中.   然后申请一块 Mapping File ,吧dll那块内存拷贝到Mapping File里, 然后对目标进程创建远线程,远线程里执行包括申请一块内存,读取Mapping File并拷贝到那块内存中,再重定位和修复导入表.......
2014-5-11 14:58
0
雪    币: 341
活跃值: (143)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
10
从网络加载DLL到内存。。。
2014-5-11 15:36
0
雪    币: 13269
活跃值: (4321)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
大块内存法
2014-5-11 18:10
0
雪    币: 13269
活跃值: (4321)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
同大块内存法的思路
2014-5-11 18:11
0
雪    币: 13269
活跃值: (4321)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
貌似都是要用shellcode才能实现了
2014-5-11 18:13
0
雪    币: 2664
活跃值: (3401)
能力值: ( LV13,RANK:1760 )
在线值:
发帖
回帖
粉丝
14
恩,分析过类似样本是通过shellcode来实现的
2014-5-14 14:05
0
雪    币: 13269
活跃值: (4321)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
难怪找不到相关源码
高大上的技术
2014-5-14 17:36
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
www.rohitab.com/discuss/topic/40160-inject-code-into-other-processes-using-pe-injection/
没有dll,所有功能都在exe中实现,无需释放文件到磁盘
2014-5-27 10:49
0
雪    币: 223
活跃值: (516)
能力值: ( LV13,RANK:520 )
在线值:
发帖
回帖
粉丝
17
J师傅,上次不是给你发了一个load 的 shellcode吗.
2014-5-27 11:18
0
雪    币: 13269
活跃值: (4321)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
找了个还需要获取地址的
这个竟然不用获取地址
2014-5-27 18:34
0
雪    币: 13269
活跃值: (4321)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
那个是LOAD硬盘DLL吧
2014-5-27 18:35
0
雪    币: 223
活跃值: (516)
能力值: ( LV13,RANK:520 )
在线值:
发帖
回帖
粉丝
20


不用啊,传的一个参数是内存地址.
2014-5-27 19:54
0
雪    币: 26
活跃值: (26)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
21
可以考虑采用代码注入,注入的代码中包含PeLoader代码.
2014-5-28 17:25
0
雪    币: 23
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
可以无dll,也不用写shellcode
用数据结构,里面全是指针,往目标进程里写入多次,写好多,就用两段结构相减,就是要写大小。
原理就是kernel32.dll里的函数的地址,都一样。
2014-6-8 18:43
0
雪    币: 272
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
同求一份。。。。8爷发个附件吧!
2014-6-8 19:54
0
雪    币: 223
活跃值: (516)
能力值: ( LV13,RANK:520 )
在线值:
发帖
回帖
粉丝
24
那是一个朋友写的.
只支持xp.
2014-6-8 23:09
0
雪    币: 54
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
简单说 就是在程序里申请一块内存 然后根据PE加载的格式 把你的DLL填入内存就行了。
2014-6-9 00:22
0
游客
登录 | 注册 方可回帖
返回
//