当前位置: 首页 > news >正文

把dll模块注入到游戏进程的方法_远线程注入

一. 概述

       远线程注入是指为要注入的目标进程创建一个远程线程,在远程线程里面加载要注入的目标dll。Windows操作系统提供了跨进程的内存读写机制,这就为各种注入打下了基础。

二. 用到的Windows API函数

创建远程线程的API是CreateRemoteThread,查找msdn,其函数原型如下所示:HANDLE WINAPI CreateRemoteThread(

  _In_  HANDLE                 hProcess,//目标进程的句柄

  _In_  LPSECURITY_ATTRIBUTES  lpThreadAttributes,//安全属性

  _In_  SIZE_T                 dwStackSize,//初始堆栈大小

  _In_  LPTHREAD_START_ROUTINE lpStartAddress,//线程要执行的函数

  _In_  LPVOID                 lpParameter,//给线程函数传递的参数

  _In_  DWORD                  dwCreationFlags,//线程的一些标志

  _Out_ LPDWORD                lpThreadId//创建好的线程ID

)。

三. 远线程注入的原理

由上可知,为要注入的目标进程创建远程线程后,线程的执行函数是参数lpStartAddress指向的函数,原型为:

 DWORD WINAPI ThreadProc(

   _In_ LPVOID lpParameter

)

有一个参数lpParameter就是创建远线程时传入的参数。这个函数原型跟加载dll的API函数LoadLibrary比较发现,二者

http://www.dtcms.com/a/146242.html

相关文章:

  • 目标检测篇---R-CNN梳理
  • linux驱动框架——i2c驱动模块的probe过程
  • 重构便携钢琴专业边界丨特伦斯便携钢琴V30Pro定义新一代便携电钢琴
  • 120.在 Vue3 中使用 OpenLayers 实现清空删除所有图层功能
  • AI驱动下的企业学习:人力资源视角下的范式重构与价值觉醒
  • 【数据结构和算法】3. 排序算法
  • java多线程的内存可见性问题,volatile是干什么的?
  • 基于Python(Django)+SQLite实现(Web)校园助手
  • Time to event :Kaplan-Meier曲线、Log Rank检验与Shiny R
  • 线上地图导航小程序源码介绍
  • django入门
  • 介绍XML
  • 蓝桥杯 18.分考场
  • 室外摄像头异常自检指南+视频监控系统EasyCVR视频质量诊断黑科技
  • 如何平衡质量与进度的矛盾
  • L1-105 珍惜生命 - java
  • 安卓逆向工程:从APK到内核的层级技术解析
  • 使用json_repair修复大模型的json输出错误
  • 深入探索Qt异步编程--从信号槽到Future
  • 图形编辑器基于Paper.js教程27:对图像描摹的功能实现,以及参数调整
  • GPT-4.1 开启智能时代新纪元
  • OSPF数据包及工作过程
  • PaginationInnerInterceptor使用(Mybatis-plus分页)
  • 基于遗传算法的智能组卷系统设计与实现(springboot+ssm+React+mysql)含万字详细文档
  • 【项目管理】成本类计算 笔记
  • 基于 DeepSeek大模型 开发AI应用的理论和实战书籍推荐,涵盖基础理论、模型架构、实战技巧及对比分析,并附表格总结
  • 在ARM Linux应用层下驱动MFRC522
  • vue项目中使用antvX6(可拖拽,vue3)
  • 【Vue】组件基础
  • 浙江大学 DeepSeek 公开课 第三季 第1期讲座 - 唐谈 研究员 (附PPT下载) | 突破信息差