首页
社区
课程
招聘
[求助]关于x64内核注入dll的问题
发表于: 2016-7-1 10:42 15767

[求助]关于x64内核注入dll的问题

2016-7-1 10:42
15767
内核注入dll如果我要让我的dll获得先于主线程的执行时机,应该在哪个时机点注入呢?

测试注入的都是WIN7 64下的WOW64进程。
目前试过的有:创建进程回调、创建线程回调,加载映像回调
在进程回调里注入的时候发现进程的PEB都没初始化完
在线程回调里注入的时候发现这时候LDR没初始化完,LdrLoadDll都获取不到
在加载映像回调加载\\Windows\\SysWOW64\\KernelBase.dll的时候注入,LdrLoadDll是获取到了,但是windbg走进ZwAllocVirtualMemory里就跑飞了,猜测是死锁了。搜了一下相关文章,发现果然是在映回调里面ZwAllocVirtualMemory会导致死锁。(http://bbs.pediy.com/showthread.php?t=131688)

这样的话我应该在什么时机注入?如果在线程回调里NtQueueApcThread是不是会好一点?

注入代码抄的BlackBone

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

收藏
免费 0
支持
分享
最新回复 (15)
雪    币: 2291
活跃值: (938)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
2
http://www.cnblogs.com/xuanyuan/p/5373677.html我这篇文章里面有提到这个问题。

PS:这位兄台是要锁首页么?
2016-7-1 10:46
0
雪    币: 23
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
ntdll镜像回调中 hook LdrLoadDll实现注入
2016-7-1 11:36
0
雪    币: 45
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
http://blog.csdn.net/chenyujing1234/article/details/7860629
可以看看这个,进程运行之前运行注入Dll的功能。
2016-7-1 12:03
0
雪    币: 12848
活跃值: (9167)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
5
不是,主要是为了做进程防护,监控远程读写内存、远程线程注入、消息钩子注入这类内核中很难监控的操作(商用软件,要支持XP,不能用VT)
2016-7-1 12:04
0
雪    币: 12848
活跃值: (9167)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
6
谢谢,我反汇编了一下火绒的sysdiag.sys发现他好像就是hook的LdrLoadDll,不过我在一楼有提到镜像回调中是不让Query/Alloc/ProtectVirtualMemory的(会死锁),所以hook操作是不是要弄个WorkItem放到镜像回调外面?。
2016-7-1 12:07
0
雪    币: 3663
活跃值: (4841)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
论坛有个人发过 也是成熟解决方案 ImageNotify 然后特定时机注入
2016-7-1 12:16
0
雪    币: 457
活跃值: (2793)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
我都是插APC,也没发现有啥问题啊。。。
2016-7-1 12:38
0
雪    币: 19
活跃值: (1086)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
如果没初始化完毕就等他初始化完毕接着注入
2016-7-5 13:57
0
雪    币: 12848
活跃值: (9167)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
10
已经搞定了,抄袭的火绒的注入方式(hook ntdll!ZwTestAlert)
2016-7-5 15:52
0
雪    币: 16
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
大哥求个详细的的介绍
2016-11-19 18:09
0
雪    币: 12848
活跃值: (9167)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
12
http://mengwuji.net/forum.php?mod=viewthread&tid=6765
2016-11-19 23:37
0
雪    币: 248
活跃值: (3789)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
问下,为什么回调里面调用ZwAllocVirtualMemory会卡死?最终是什么导致的?
2016-11-20 01:00
0
雪    币: 12848
活跃值: (9167)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
14
EPROCESS->AddressCreationLock被上锁了
XXXVirtualMemory系列都会获取这个锁,导致死锁
2016-11-20 10:51
0
雪    币: 16
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
非常感谢
2016-11-21 18:57
0
雪    币: 130
活跃值: (1005)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
楼主解决了可否给我用用,好纠结
2017-5-12 22:10
0
游客
登录 | 注册 方可回帖
返回
//