内存储器dll注入到远程进程

内存dll注入到远程进程
一般dll注入的方式也就是windows核心编程上介绍的那几种方法,我的需求比较特殊,不希望在磁盘上生成dll文件,因此只能是考虑将这个dll文件直接从内存中加载,在当前进程内加载已经解决了。现在考虑将这个dll注入到远程进程,注入到远程进程的方法和本进程内没什么区别,唯一麻烦的地方就是,要修改导入表,因为导入表在远程进程的地址空间,所以需要将修改导入表的函数也注入到远程进程,有点像ShellCode注入了,大家有没有什么好的方案,将一个dll以内存的方式注入到远程进程。
------解决思路----------------------
除非用虚拟硬盘类似技术,否则不要想隐藏dll文件了。现在dll加载都必须要manifest的,你远程注入首先这个manifest就不对(如果没有文件作为后台存在的话)。 更不用说dll中代码如果需要访问它的resource段的话,你不通过windows系统加载的dll,resource段不会存到windows系统内部结构里,访问当然就出错了。
------解决思路----------------------
把 Dll 当作资源放在自己的程序里,
使用的时候,释放到内存中、重定位,拷贝到目标进程空间、远程注入。