DLL注入:使用注册表进行DLL注入

本文介绍了如何通过注册表实现DLL注入,详细步骤包括在注册表中设置AppInit_DLLs项,使得指定DLL在系统启动时注入到所有进程中。通过示例myhack2.dll,展示了DLL如何在非XP系统中隐秘执行操作,如隐藏启动IE并链接到特定网站。此外,还提到了一些关键的编程概念,如LPTSTR、STARTUPINFO和CREATE_PROCESS等。
摘要由CSDN通过智能技术生成

实验原理
(1)在注册表编辑器中,将要注入的DLL的路径字符串写入AppInt_DLLs项目,把LoadAppInit_DLL的项目值设为1。重启后,指定DLL会注入所有运行的进程。
(2)其实是,user32.dll被加载到进程时,会读取AppInit_DLLs注册表项,若有值,则调用LoadLibrary加载用户DLL。因此严格讲,该DLL只是被加载到加载user32.dll的进程。
(3)注意:xp会忽略LoadAppInit_DLL项。

myhack2.dll源码:

#include "windows.h"
#include "tchar.h"

#define DEF_CMD L"C:\\Program Files\\Internet Explorer\\iexplorer.exe"
#define DEF_ADDR L"http://www.baidu.com"
#define DEF_DST_PROC L"notepad.exe"

BOOL WINAPI DllMain(HINSTANCE hinstDll,DWORD fdwReason,LPVOID lpvReversed)
{
   
	TCHAR szCmd[MAX_PATH] = {
   0,};
	TCHAR szPath[MAX_PATH]</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值