b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

获取游戏进程句柄,远程线程注入源码:启动线程源码

电脑杂谈  发布时间:2021-04-27 08:00:13  来源:网络整理

远程线程注入CreateRemoteThread通过获取注入目标进程的句柄,将DLL注入目标进程的内存地址。远程线程是指另一个进程中的线程,不是远程控制的意思,也就是说,远程线程注入是指一种技术,其中一个进程在另一个进程中创建线程,

易语言远程线程注入DLL

让我们先看一下步骤:

1、获取游戏进程手柄,0表示不继承手柄

易语言内存注入dll_易语言dll直接注入游戏_易语言内存注入dll

2、在远程进程(游戏进程)中申请存储空间以存储模块路径

3、 WriteProcessMemory写入内存

4、获取LoadlibrarA地址

易语言内存注入dll_易语言内存注入dll_易语言dll直接注入游戏

5、 CreateRemoteThread核心远程线程注入

远程线程注入源代码:

.版本 2
.支持库 spec
 
.子程序 _按钮1_被单击, , , hook
.局部变量 模块名称, 文本型
.局部变量 进程句柄
.局部变量 目标进程内存地址
.局部变量 写入成功的地址
.局部变量 ret_l, 逻辑型
.局部变量 LoadlibrarA地址
.局部变量 creatRet
 
模块名称 = 编辑框1.内容
 获取游戏进程句柄,0表示不继承句柄
进程句柄 = OpenProcess (2035711, 0, 到数值 (编辑框2.内容))
.如果真 (进程句柄 = 0)
    信息框 (“打开进程失败,可能权限不够”, 0, , )
 
    返回 ()
 
.如果真结束
 2、在远程进程中(游戏进程中)申请内存空间,用来存放模块路径
 0表示自动分配保留内存页面地址
目标进程内存地址 = VirtualAllocEx (进程句柄, 0, 4096, 4096, 64)
.如果真 (目标进程内存地址 = 0)
    信息框 (“分配内存地址失败”, 0, , )
    返回 ()
 
.如果真结束
 3、WriteProcessMemory写进内存
ret_l = WriteProcessMemory (进程句柄, 目标进程内存地址, 模块名称, 取字节集长度 (到字节集 (模块名称)), 取变量地址 (写入成功的地址))
.如果真 (ret_l = 假)
    信息框 (“数据写入内存失败!”, 0, , )
    返回 ()
 
.如果真结束
 
 4、获取LoadlibrarA地址
LoadlibrarA地址 = GetProcAddress (GetModuleHandleA (“Kernel32.dll”), “LoadLibraryA”)
.如果真 (LoadlibrarA地址 = 0)
    信息框 (“LoadlibrarA地址失败”, 0, , )
    返回 ()
 
.如果真结束
 5、核心远程线程注入
creatRet = CreateRemoteThread (进程句柄, 0, 0, LoadlibrarA地址, 目标进程内存地址, 0, 0)
.如果真 (creatRet = 0)
    信息框 (“远程线程注入失败”, 0, , )
    返回 ()

易语言内存注入dll_易语言dll直接注入游戏_易语言内存注入dll

启动线程源代码:

.版本 2
.支持库 spec
.支持库 EThread
 
.子程序 _按钮3_被单击
.局部变量 函数地址
.局部变量 内存地址
.局部变量 线程ID
.局部变量 线程句柄
 
 1、 取得dll函数地址
函数地址 = GetProcAddress (dll句柄, 编辑框3.内容)
 2、申请内存地址,用来存放函数里参数
内存地址 = 申请内存 (取文本长度 (编辑框3.内容), )
 3、把参数写入申请的内存地址中
写到内存 (编辑框3.内容, 内存地址, )
 4、创建线程CreateThread
 (1)表示线程内核对象的安全属性,0
 (2)表示线程栈空间的大K小,0表示使用默认大小(1mb)
 (3)新线程所执行的线程函数的地址,多个线程可以使用同一个地址
 (4)创给线程函数的参数
 (5)控制线程的创建,0表现创建后立即执行调度线程
 (6)返回创建线程的ID
线程句柄 = CreateThread (0, 0, 函数地址, 内存地址, 0, 线程ID)
调试输出 (线程句柄)
 5、线程的一些安全处理
.如果真 (等待线程 (线程句柄, 100))
    关闭线程句柄 (线程句柄)
    释放内存 (内存地址)
 
.如果真结束

卸载注入的DLL

.版本 2
.子程序 _按钮4_被单击
 
.如果真 (FreeLibrary (dll句柄) = 真)
    dll句柄 = 0


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shoujiruanjian/article-371239-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 帝昺
        帝昺

        是谁

      • 王玲
        王玲

        呵呵在南海说自由我们有权利自由

      • 德鲁
        德鲁

        在质量上中国海军也会占据绝对上风

      每日福利
      热点图片
      拼命载入中...