阅读:3277回复:18
如何hook住CreateRemoteThread的调用?
如果我想保护自己的进程不被他人的远端线程注入,是否可以通过hook CreateRemoteThread的方式来做?
哪位大侠有这方面经验的,若能指点一二,深为感谢。如果能提供简单的例程的话最好不过,呵呵 另外, IceSword中如何做到监控远程线程创建的情况的?是通过hook api的方式实现的吗?要是能向作者pjf大侠请教就好了,可惜找不到他 |
|
最新喜欢:![]() |
沙发#
发布于:2005-03-15 21:33
一般我们CreateRemoteThread需要先提升我们的权限,然后打开目标进程,在里面分配空间,然后把我们的代码写进去,最后CreateRemoteThread,执行.
你可以针对其中的任何一步拦截处理,从而使其失败.... |
|
|
板凳#
发布于:2005-03-15 21:41
当然如果你只是保护你自己的进程还是很简单的,一般我们菜鸟使用的API最后都会到KeStackAttachProcess ,切换到目标进程地址空间,然后就可以,VIRTUALALLOCEX,READPROCESSMEMORY,WRITEPROCESSMEMORY
你可以挂接这个函数,来检测是否允许挂接到你的进程,当然如果不允许的话,就返回失败,这样别人就无法进入你的进程地址空间了,当然你的程序也就无法被调试了... |
|
|
地板#
发布于:2005-03-15 23:06
喔喔公鸡大侠英明!:)))
请教大侠,一般打开目标进程时都需用OpenProcess,我拦截Native API:ZwOpenProcess,在此判断进程ID是否需要保护的ID来做处理,可否算是较好的方法?所谓较好就是简单可行:P 对于这种拦截ZwOpenProcess的驱动设计我参考了现成的代码,算是有了初步了解。如果要破解这类保护,该如何做? |
|
地下室#
发布于:2005-03-15 23:15
呵呵,终于学会给分了
|
|
5楼#
发布于:2005-03-16 17:51
喔喔公鸡大侠英明!:))) 可以,我认为这个是比较简单实用的方法.... |
|
|
6楼#
发布于:2005-03-16 17:53
要破解这类保护,除非对方自己来实现该函数,或者对方可以直接跳过你的检测,直接调用原来的函数....
|
|
|
7楼#
发布于:2005-03-16 22:43
要破解这类保护,除非对方自己来实现该函数,或者对方可以直接跳过你的检测,直接调用原来的函数.... 谢谢大侠指点。我还是希望能具体地多请教一些,万望不要嫌罗嗦:) 如果我hook了ZwOpenProcess,在此判断其参数中ClientID是我要保护的某进程XX.EXE,于是我直接返回无效。这样一来,一般性的OpenProcess操作是获得不到Handle的了,也就无法进一步动作。 假如是大侠你要对付我的这种小伎俩,你会怎么来做?呵呵,这是我很想了解的:) |
|
8楼#
发布于:2005-03-17 08:48
[quote]要破解这类保护,除非对方自己来实现该函数,或者对方可以直接跳过你的检测,直接调用原来的函数.... 谢谢大侠指点。我还是希望能具体地多请教一些,万望不要嫌罗嗦:) 如果我hook了ZwOpenProcess,在此判断其参数中ClientID是我要保护的某进程XX.EXE,于是我直接返回无效。这样一来,一般性的OpenProcess操作是获得不到Handle的了,也就无法进一步动作。 假如是大侠你要对付我的这种小伎俩,你会怎么来做?呵呵,这是我很想了解的:) [/quote] 方法多多,看看wowocock以前的帖子 http://www.driverdevelop.com/forum/viewthread.php?tid=86521 另外,由于进程的PCB是从固定地址开始向上的类似堆栈一样堆起来的,它才是最根本的数据结构,枚举它也可破你的东东 |
|
|
9楼#
发布于:2005-03-17 19:40
[quote方法多多,看看wowocock以前的帖子
http://www.driverdevelop.com/forum/viewthread.php?tid=86521 另外,由于进程的PCB是从固定地址开始向上的类似堆栈一样堆起来的,它才是最根本的数据结构,枚举它也可破你的东东 [/quote] 好啊好啊,又来了一位大侠。多谢指点,很到位啊。。。让我这初入门者在无穷的迷惑中看到了一线方向:) 这次没拿出多少分来,也给光了,下回再谢:) |
|
10楼#
发布于:2005-03-17 23:51
感谢 bmyyyud 最近在论坛的贡献,赠予高级会员,以示感谢!!
|
|
|
11楼#
发布于:2005-03-18 08:52
感谢 bmyyyud 最近在论坛的贡献,赠予高级会员,以示感谢!! 今天看到居然成了高级会员,还以为自己眼花了,看到斑竹的帖子,顿时老泪纵横。。。其实我觉得我是没有资格做高级会员的,我觉得象tiamo是当之无愧的,虽然,小家伙年级不大,但知识远在我之上,尤其探讨DLL注入问题上,让我豁然开朗,应该是我感谢斑竹,感谢论坛里的各位大侠,各位好兄弟!!! |
|
|
12楼#
发布于:2005-03-18 11:19
羡慕中ing :cool:
|
|
|
13楼#
发布于:2005-03-18 20:22
[quote]感谢 bmyyyud 最近在论坛的贡献,赠予高级会员,以示感谢!! 今天看到居然成了高级会员,还以为自己眼花了,看到斑竹的帖子,顿时老泪纵横。。。其实我觉得我是没有资格做高级会员的,我觉得象tiamo是当之无愧的,虽然,小家伙年级不大,但知识远在我之上,尤其探讨DLL注入问题上,让我豁然开朗,应该是我感谢斑竹,感谢论坛里的各位大侠,各位好兄弟!!! [/quote] 恭喜恭喜,bmyyyud不仅知识方面的资格足够,而且在助人方面的资格也完全足够。。。 另外,关于进程的PCB等结构方面的内容,哪些书上有详细论述,能否请bmyyyud大侠指点一下? |
|
14楼#
发布于:2005-03-19 10:47
羡慕中ing :cool: |
|
|
15楼#
发布于:2005-03-19 10:49
[quote]感谢 bmyyyud 最近在论坛的贡献,赠予高级会员,以示感谢!! 今天看到居然成了高级会员,还以为自己眼花了,看到斑竹的帖子,顿时老泪纵横。。。其实我觉得我是没有资格做高级会员的,我觉得象tiamo是当之无愧的,虽然,小家伙年级不大,但知识远在我之上,尤其探讨DLL注入问题上,让我豁然开朗,应该是我感谢斑竹,感谢论坛里的各位大侠,各位好兄弟!!! [/quote] tiamo的水平确实很高,也不知道他是如何学的,感慨自己早生了几年,不然也有可能象他一样年轻有为了...... |
|
|
16楼#
发布于:2005-03-19 11:33
[quote][quote]感谢 bmyyyud 最近在论坛的贡献,赠予高级会员,以示感谢!! 今天看到居然成了高级会员,还以为自己眼花了,看到斑竹的帖子,顿时老泪纵横。。。其实我觉得我是没有资格做高级会员的,我觉得象tiamo是当之无愧的,虽然,小家伙年级不大,但知识远在我之上,尤其探讨DLL注入问题上,让我豁然开朗,应该是我感谢斑竹,感谢论坛里的各位大侠,各位好兄弟!!! [/quote] tiamo的水平确实很高,也不知道他是如何学的,感慨自己早生了几年,不然也有可能象他一样年轻有为了...... [/quote] 是啊,咱们那年头只有DOS,那年头说实在的,对它是如数家珍。我还在学校中,记得做的最有挑战性的程序,就是DOS下的多进程,Undocumented的DOS秘密是我最喜欢的一本书,主要解决DOS重入,PSP的结构。而且为了使我的TSR能够激活,我截获了各种中断,int 8时钟,int 9,int 13h,int 21h,全是汇编,只要发现我的任何中断上的hook(现在非常时髦,那年代还没有这个词呢)被抢了,我的程序就可以全部抢回来,当年有名的内存驻留软件SideKick都不如我的东东激活能力强,它都被我踢出去了。后来,92年开始研究286的保护模式,感觉等于开了一个全新的领域,但286切换到保护模式没法切换会实模式,切换到实模式只能完全等同于RESET,但直到386才实现完全的保护模式,能来回切换了,我后来为了加载更多的进程,用了EMS,EMM,最后干脆在保护模式和实模式之间切换,当前进程不用的东东,就把它搬倒1M以上内存中,而且模拟了个在1M以上的内存硬盘来方便实现。但当时做个真正的保护模式操作系统还是觉得无法完成,那时没有网络呀。。。可是linus却是与我同龄的,他却敢做,现在人家怎样了,所以linus一直是我的偶像,太高太高的偶像。。。 后来又研究各种加密和反跟踪技术,如CPU预取指令栈,逆指令流,非法指令,大循环多出口,堆栈回绕等算是比较好的反跟踪技术。。。 说了这么多,大家肯定嫌我烦了,往事不堪回首。。。黯然泪下。。。后来迫于生计,技术降到了最低点 我估计wowocock老大看到,估计也是泪满巾了。看到以前wowocock老大的帖子,自觉倍感亲切 廉颇老矣,尚能饭否 |
|
|
17楼#
发布于:2005-03-19 11:38
[quote][quote]感谢 bmyyyud 最近在论坛的贡献,赠予高级会员,以示感谢!! 今天看到居然成了高级会员,还以为自己眼花了,看到斑竹的帖子,顿时老泪纵横。。。其实我觉得我是没有资格做高级会员的,我觉得象tiamo是当之无愧的,虽然,小家伙年级不大,但知识远在我之上,尤其探讨DLL注入问题上,让我豁然开朗,应该是我感谢斑竹,感谢论坛里的各位大侠,各位好兄弟!!! [/quote] 恭喜恭喜,bmyyyud不仅知识方面的资格足够,而且在助人方面的资格也完全足够。。。 另外,关于进程的PCB等结构方面的内容,哪些书上有详细论述,能否请bmyyyud大侠指点一下? [/quote] 看本站的未公开的Win2k的秘密,还有znsoft辛苦成全的Windows Internals,前面版本为Inside win2000第三版,其实Softice中的帮助,Using Softice中exploring Windows NT都是很好的教材。剩下的就靠自己努力了,自己反汇编与跟踪及做实验是最好的手段 |
|
|
18楼#
发布于:2005-03-20 01:16
非常感谢bmyyyud的指点!!
这就找那几本书去。。。 |
|