writeprocessmemory写入指定进程(易语言线程注入)

本文目录
易语言线程注入
第一步要打开进程了,OpenProcess即可
第二步我们要把欲注入的DLL路径写入到制定进程中
1.
VirtualAllocEx在该进程中分配内存
2.
WriteProcessMemory把DLL路径写进去
第三步是获取LoadLibraryA函数的地址,他在windows核心库Kernel32中
GetProcAddress
(GetModuleHandle
(“Kernel32”),
“LoadLibraryA”)
第四步创建一个远程线程,执行LoadLibraryA并且把DLL路径作为参数传给他
CreateRemoteThread即可
此时已经注入成功,最后就是善后工作了,VirtualFreeEx释放内存,CloseHandle关闭进程
求修改某进程内存的代码(C++)
下面是用户层的方法:
1)首先你最好要有SeDebugPrivilege权限,这样你打开别的进程就会有全部权限,当然即使这样你也打不开某些进程例如杀毒软件的进程。
这可以通过AdjustTokenPrivileges函数实现
2)调用OpenProcess打开游戏进程(注意:用PROCESS_VM_WRITE权限打开)你需要进程Id,你可以通过GUI来让用户输入PID,也可以通过FindWindow及GetWindowThreadProcessId的组合来获取进程Id
3)调用WriteProcessMemory写入指定进程地址空间,前提是你已经提取到了游戏数据所在的地址
如果你有细节问题,Hi我
----------------------------------------------------
下面是基本代码(省去了错误检测和SeDebugPrivilege的打开)
DWORD dwProcessId; //假设你已经获得了它
HANDLE hProcess = OpenProcess(PROCESS_VM_WRITE |
PROCESS_VM_READ ,
FALSE, dwProcessId);
PVOID pDestination = 目标进程地址;
BYTE MyData = {0x4c, 0xff, 0x64, 0x00, 0x2f};
BOOL fSuccess = WriteProcessMemory(hProcess, //写入内存的进程句柄
pDestination, //目标进程的地址
(PVOID)MyData,//你要写入数据的地址
5, //大小,按字节计
NULL);
-----------------------------------------------
以下是通过游戏窗口名获得游戏PID的代码:(以纸牌游戏为例)
HWND hwnd = FindWindow(NULL,
TEXT("纸牌")); //寻找的窗口名称
DWORD dwProcessId;
(VOID)GetWindowThreadProcessId(hwnd, &dwProcessId);
生成了一段二进制机器码如何执行
首先解决第一个问题
不知道你说的是自身进程执行动态代码,还是注入到其他进程?
如果是自身进程,通过VirtualAlloc分配一块可执行内存,即设置PAGE_EXECUTE权限,只有具备可执行权限的内存,系统才会去执行里面的代码。
如果是其他进程,则需要首先使用OpenProcess打开进程,然后通过VirtualAllocEx函数,在进程中分配可执行空间。然后通过WriteProcessMemory向进程写入数据,或者其他数据写入函数,
最后,对于自身进程,调用CreateThread函数创建线程并执行其中的代码;对于其他进程,则执行CreateRemoteThread执行其中的代码。
但是鉴于,这种注入操作,被病毒木马普遍使用,可能会被杀毒软件拦截,所以最好关闭杀毒软件再执行,如果要避过杀毒软件,可能要进入ring0了,这就不是一两句能够解释清楚的了
第二个问题,我想也就不用多解释了,分配的内存都是一样的,只不过所分配的内存具备可执行属性,这就是你所说的代码段空间。其实windows的程序加载器,也就是这么做的
载入可执行文件,具体载入多少到内存,一般不需要应用程序干涉,操作系统会自动控制

更多文章:
wordpress和自己写(开发企业网站 是用现成的开源框架(如wordpress等)还是自己独立写 哪种比较好一些)
2025年12月25日 14:00
java代码提示(用myeclipse,在jsp中写java代码,需要导包时不提示,必须手动导包,怎样才能让它提示并且自动导包)
2026年4月9日 13:15
怎样安装tomcat服务(如何安装Apache Tomcat并使用Tomcat发布网站)
2025年12月21日 23:30
谁有点卡回收寄售平台的源码最好免费的?虚幻源码卡在加载页面中
2026年7月20日 05:00
函数指针类型别名(typedef 函数指针 比如typedef char*(*callback)(char*, int);)
2025年6月5日 09:00
css下载文件(下载网页时,如何将css文件中内容全部下载下来)
2026年7月25日 07:00
css给按钮加箭头(CSS实现带箭头方框怎么控制箭头位置!)
2026年1月1日 04:30
sql怎么读取excel更新(SQL如何用EXCEL导入一个临时表的相关字段,然后用临时表更新原有的表数据的字段内容)
2026年4月25日 09:30
require词根(require acquire enquire 这三个单词怎么区别,有共同的词根么)
2025年7月27日 09:00
wallpaper怎么设置鼠标特效(wallpaper控制鼠标灯光)
2026年5月6日 09:45















