易语言c源码流程图怎么实现,易语言APC内存注入主要流程源码

这篇博客详细介绍了易语言APC内存注入的主要流程,包括打开进程、读取DLL文件、创建文件映射对象、写入内存、创建远程线程等步骤,并提供了相关的源码示例。
摘要由CSDN通过智能技术生成

易语言APC内存注入主要流程

1、打开进程

进程句柄 = OpenProcess (2035711, 假, 进程ID)

2、读入DLL文件及获取主要汇编指令

DLL文件 = 读入文件 (DLL路径)

DLL文件长度 = 取字节集长度 (DLL文件)

主要汇编指令长度 = 取字节集长度 (#PE文件)

3、创建文件映射对象

映射对象句柄 = CreateFileMappingA (-1, 0, 64, 0, DLL文件长度 + 主要汇编指令长度, “Mapc”)

4、将文件映射对象映射到当前程序内存空间

映射对象开始地址 = MapViewOfFile (映射对象句柄,2, 0, 0, DLL文件长度 + 主要汇编指令长度)

5、 写入内存

RtlMoveMemory_字节集 (映射对象开始地址, #PE文件, 主要汇编指令长度)

RtlMoveMemory_字节集 (映射对象开始地址 + 主要汇编指令长度, DLL文件, DLL文件长度)

6、关闭文件映射对象

UnmapViewOfFile (映射对象开始地址)

7、创建内存映射对象 内核

ZwMapViewOfSection (映射对象句柄, 进程句柄, 内核映射对象基址, 0, 0, 0, 内核映射对象大小, 1, 0, 64)

8、获取GetModuleHandleA地址

GetModuleHandleA地址 = GetProcAddress (GetModuleHandleA (“kernel32.dll”), “GetModuleHandleA”)

9、创建远程线程并挂起

线程句柄 = CreateRemoteTh

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值