易语言内存注入源码
系统结构:启动工作,InstallHook,钩子函数,线程_建立线程,线程_枚举线程,系统_等待延时,系统_处理事件,系统_延时,SetWindowsHookEx,GetModuleHandle,CallNextHookEx,进程_取自进程ID,CreateThread,CreateToolhelp32Snapshot,GetTickCount,Thread32First,Thread32Next,CloseHandle,Sleep,PeekMessageA,TranslateMessage,DispatchMessageA,
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ 启动工作
| |
| |------ InstallHook
| |
| |------ 钩子函数
| |
| |
======窗口程序集1
| |
| |------ _按钮1_被单击
| |
| |
======程序功能集
| |
| |------ 线程_建立线程
| |
| |------ 线程_枚举线程
| |
| |------ 系统_等待延时
| |
| |------ 系统_处理事件
| |
| |------ 系统_延时
| |
| |
======调用的Dll
| |
| |---[dll]------ SetWindowsHookEx
| |
| |---[dll]------ GetModuleHandle
| |
| |---[dll]------ CallNextHookEx
| |
| |---[dll]------ 进程_取自进程ID
| |
| |---[dll]------ CreateThread
| |
| |---[dll]------ CreateToolhelp32Snapshot
| |
| |---[dll]------ GetTickCount
| |
| |---[dll]------ Thread32First
| |
| |---[dll]------ Thread32Next
| |
| |---[dll]------ CloseHandle
| |
| |---[dll]------ Sleep
| |
| |---[dll]------ PeekMessageA
| |
| |---[dll]------ TranslateMessage
| |
| |---[dll]------ DispatchMessageA
调用的DLL命令:
.DLL命令 SetWindowsHookEx, 整数型, , "SetWindowsHookExA"
.参数 idHook, 整数型
.参数 lpfn, 子程序指针
.参数 hmod, 整数型
.参数 dwThreadId, 整数型
.DLL命令 GetModuleHandle, 整数型, , "GetModuleHandleA"
.参数 lpModuleName, 整数型
.DLL命令 CallNextHookEx, 整数型, , "CallNextHookEx"
.参数 hhk, 整数型
.参数 nCode, 整数型
.参数 wParam, 整数型
.参数 lParam, 整数型
.DLL命令 进程_取自进程ID, 整数型, "kernel32.dll", "GetCurrentProcessId", 公开
.DLL命令 CreateThread, 整数型, , "CreateThread", , 创建线程生成线程成功,CreateThread函数返回新线程的句柄。否则返回NULL。线程执行完毕后自动退出(除非进入的是循环)。
.参数 lpThreadAttributes, 整数型, , 线程的security属性,缺省为0
.参数 dwStackSize, 整数型, , 线程的堆栈大小,为0时与进程相同
.参数 lpStartAddress, 子程序指针, , 线程函数的起始地址
.参数 lpParameter, 整数型, , 传递线程的上下文,可以传递一个整数型参数。
.参数 dwCreationFlags, 整数型, , 0:创建线程后立即启动,相反的是标志位CREATE_SUSPENDED,这样您需要稍后显示地让该线程运行(可设为-1)
.参数 lpThreadId, 整数型, 传址, 内核给新生成的线程分配的线程ID
.DLL命令 CreateToolhelp32Snapshot, 整数型, , "CreateToolhelp32Snapshot"
.参数 dwFlags, 整数型
.参数 th32ProcessID, 整数型
.DLL命令 GetTickCount, 整数型, "kernel32", "GetTickCount", , 取运行时间_
.DLL命令 Thread32First, 整数型, "KERNEL32.DLL", "Thread32First"
.参数 hSnapshot, 整数型
.参数 lpte, THREADENTRY32
.DLL命令 Thread32Next, 整数型, "KERNEL32.DLL", "Thread32Next"
.参数 hSnapshot, 整数型
.参数 lpte, THREADENTRY32
.DLL命令 CloseHandle, 逻辑型, "kernel32.dll", , 公开, 关闭对象
.参数 对象句柄, 整数型
.DLL命令 Sleep, 整数型, "kernel32.dll", "Sleep", , 系统延时
.参数 延时时间, 整数型, , 毫秒
.DLL命令 PeekMessageA, 整数型, "user32.dll", "PeekMessageA", , 检查消息队列
.参数 lpMsg, MSG
.参数 hwnd, 整数型
.参数 wMsgFilterMin, 整数型
.参数 wMsgFilterMax, 整数型
.参数 wRemoveMsg, 整数型
.DLL命令 TranslateMessage, 整数型, "user32.dll", , , 转换虚拟关键字消息
.参数 lpMsg, MSG
.DLL命令 DispatchMessageA, 整数型, "user32.dll", , , 向窗口转发消息
.参数 lpMsg, MSG
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。