专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »DotNet » dll注入:在自己的进程中注入一个Dll到别人的进程 »正文

dll注入:在自己的进程中注入一个Dll到别人的进程

来源: 发布时间:星期三, 2008年9月10日 浏览:161次 评论:0
与其说是一种技术,不如说是一种技术思想。它使用了前面讲的那些Hook手段,来达到自己的目的。

其应用环境是这样的,自己有一个进程在运行,这个进程是自己可以控制的,主同业务的需要,自己又要找个一个别人的应用程序,这个应用程序可能是Word,Notepad,Photoshop等应用程序,自己只可以看见它在运行,确不能控制它的执行过程。但是,这个进程明明是自己的进程创建的,因此,咱们完全由必要控制它干些什么,不干什么。这种考虑,我们将一个Dll注入到它里面,让这个Dll为我们办事,这就是建立远程线程。这个线程的运行空间,同要注入的应用程序的地址空间是一致的。

我们的方法是这样的:

首先,不论是通过Hook IAT表,或者是修改内存代码,我们在自己的进程中,Hook掉CreateProcessA,CreateProcessW,当要创建进程时,先来CreateRemoteThread,这也就是Hook技术3里面讲到的。而这个Thread里面,加载一下咱们预先写的Dll,在Dll的main函数里,写一段Hook代码,只要它一被加载,就Hook掉进程空间内的某个功能,这个,我们便对目标进程有了制程权。
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: