首页
社区
课程
招聘
[求助]关于DLL注入
发表于: 2009-10-16 09:26 7147

[求助]关于DLL注入

2009-10-16 09:26
7147
偶尔对一些软件进行小patch,需要注入自己写的dll.但是dll的注入总觉得找不到一个趁手的办法.
1.消息钩子:缺点,需要等GUI线程开始才能进入,此外,可能被一些进程保护软件拦截.
2.转发dll:
   2.1  msimg32.dll,需要程序调用此dll,一般是涉及渐变填充,Alpha绘图的程序才会加载
  2.2  lpk.dll vista后系统默认无法加载
  2.3  wsock32.dll,需要进程涉及网络应用
  2.4  ddraw.dll,需要进程调用direct draw,似乎进程启动时当前路径不是程序根目录,不一定会加载此文件
3.作为loader,直接注入:缺点必须由我们的loader启动,如果是别人创建进程,就无效了.
4.远程线程,或通过修改线程EIP来加载dll,类似消息钩子,可以在大多数时候奏效,但都需要作为loader,或daemon才能实施这个操作.此外,大多数杀毒软件会拦截远程线程的行为.

希望达到通过任意程序启动都能加载,还有别的办法么?

补充:
1.最好是不修改目标文件,否则,灵活性大大降低了.(修改文件往往会涉及:版本兼容,自校验等等)
2.避免使用驱动,因为如果使用驱动,意味着权限必须够高,到了Vista64位还得数字签名.能不用ring0,则不用ring0.

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

收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 636
活跃值: (174)
能力值: ( LV9,RANK:260 )
在线值:
发帖
回帖
粉丝
2
把exe改了吧,开始先来个LoadLibrary试试呢?
2009-10-16 09:52
0
雪    币: 367
活跃值: (20)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
3
在不改文件的前提下的注入啦.
如果改文件,那就是任意发挥了.
2009-10-16 11:20
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
一看就是游戏注入...
2009-10-16 11:27
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
5
用小学生的方法注入就行了~
驱动投递APC注入DLL
2009-10-16 12:11
0
雪    币: 7651
活跃值: (523)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
6
KeUserModeCallback也行,你不用全局钩子那个ApiIndex就可以了
2009-10-16 12:16
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
7
也可以用那个Index吧,只是参数变一下DLL~
2009-10-16 12:17
0
雪    币: 171
活跃值: (23)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
用输入法管理器就可以加载DLL!
  
小弟不才,网上找的,
  这方法测试过,确实有效
  过360保险箱,过NP
2009-10-16 12:55
0
雪    币: 367
活跃值: (20)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
9
如果没记错的话,只有安装了中日韩等复杂文字支持的系统才有输入法相关逻辑的.
我google了一下,这个办法确实比较另类,也很可靠,采用loader/daemon方式可以实现注入.
转发dll看来还是最便利的.
2009-10-16 13:09
0
游客
登录 | 注册 方可回帖
返回
//