进程DLL注入

进程DLL注入
1、为什么要进行进程注入:到了WinNT以后的系列操作系统中,每个进程都有自己的4GB私有进程地址空间,彼此互不相关。进程A中的一个地址,比如:0x12345678,到了进程B中的相同地方,存的东西完全不一样,或者说不可预料。所以说如果进程A想要看看或者修改进程B地址空间中的内容,就必须深入到其地址空间中,因为DLL是可以被加载到任何进程当中的,所以在进程注入中,DLL应该是主角,也就是说一些核心的代码都应该放在DLL中编写。


2、注入的缺点:
如果DLL程序的算法不是很好,或者DLL文件有Bug,那么将影响目标进程的执行效率,或者说干脆目标进程崩溃。

3、注入的具体方法:
目前Windows操作系统上面注入的方法也很多,《Windows核心编程》上面介绍了不少,大家也可以到网上搜索一下,比如钩子,远程线程技术等等……

4、具体编程方法:
本课程教大家用远程线程技术来实现进程的注入。
用到的API函数:
OpenProcess(...) //获取已知进程的句柄;
VirtualAllocEx(...) //在进程中申请空间;
WriteProcessMemory(...) //向进程中写入东西;
GetProcAddress(...) //取得函数在DLL中的地址;
CreateRemoteThread(...) //在其他进程中创建新线程;

CloseHandle(...) //关闭句柄;

以前自己写的代码:

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值