|
发表于 2021-3-26 21:46:59
|
显示全部楼层
湖南省娄底市
估摸着原理应该差不多,我的这个支持15个参数,文本型数据需要你自己传参.
其中内存_操作类的代码 可以用 精易模块的代替 或者是用 API自己写.
我写代码比较懒
具体原理 看这个 https://bbs.pediy.com/thread-266509.htm
|
进程_调用函数 | 整数型 | | |
进程ID | 整数型 | | | | 函数地址 | 整数型 | | | | 参数1 | 整数型 | | | | 参数2 | 整数型 | | | | 参数3 | 整数型 | | | | 参数4 | 整数型 | | | | 参数5 | 整数型 | | | | 参数6 | 整数型 | | | | 参数7 | 整数型 | | | | 参数8 | 整数型 | | | | 参数9 | 整数型 | | | | 参数10 | 整数型 | | | | 参数11 | 整数型 | | | | 参数12 | 整数型 | | | | 参数13 | 整数型 | | | | 参数14 | 整数型 | | | | 参数15 | 整数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | hProcess | 整数型 | | | pCallFun | 整数型 | | | pShellCode | 整数型 | | | shellCode | 字节集 | | | pCall | 整数型 | | | tHandle | 整数型 | | | tId | 整数型 | | | resEax | 整数型 | | |
hProcess = 进程_ID取句柄 (进程ID )pCallFun = 内存_申请字节集内存2 (hProcess, { 85, 137, 229, 201, 88, 135, 4, 36, 255, 224, 137, 236, 93, 195 })pShellCode = 内存_申请内存2 (hProcess, 200 )resEax = 内存_申请内存2 (hProcess, 4 )shellCode = { 85, 137, 229 }shellCode = shellCode + { 131, 236, 60 }shellCode = shellCode + getPushBin (参数15 )shellCode = shellCode + getPushBin (参数14 )shellCode = shellCode + getPushBin (参数13 )shellCode = shellCode + getPushBin (参数12 )shellCode = shellCode + getPushBin (参数11 )shellCode = shellCode + getPushBin (参数10 )shellCode = shellCode + getPushBin (参数9 )shellCode = shellCode + getPushBin (参数8 )shellCode = shellCode + getPushBin (参数7 )shellCode = shellCode + getPushBin (参数6 )shellCode = shellCode + getPushBin (参数5 )shellCode = shellCode + getPushBin (参数4 )shellCode = shellCode + getPushBin (参数3 )shellCode = shellCode + getPushBin (参数2 )shellCode = shellCode + getPushBin (参数1 )shellCode = shellCode + getPushBin (函数地址 )pCall = pShellCode + 取字节集长度 (shellCode )shellCode = shellCode + getCallBin (pCall, pCallFun )shellCode = shellCode + { 163 } + 到字节集 (resEax )shellCode = shellCode + { 131, 196, 60 } shellCode = shellCode + { 137, 236, 93, 195 }如果真 (内存_写字节集2 (hProcess, pShellCode, shellCode ) = 假)内存_释放2 (hProcess, resEax )内存_释放2 (hProcess, pShellCode )内存_释放2 (hProcess, pCallFun )进程_关闭进程 (hProcess )返回 (-1 )tHandle = CreateRemoteThread_整数 (hProcess, 0, 0, pShellCode, 0, 0, tId)如果真 (tHandle = 0 )内存_释放2 (hProcess, resEax )内存_释放2 (hProcess, pShellCode )内存_释放2 (hProcess, pCallFun )进程_关闭进程 (hProcess )返回 (-1 )WaitForSingleObject (tHandle, -1)tId = 内存_读整数2 (hProcess, resEax )内存_释放2 (hProcess, resEax )内存_释放2 (hProcess, pShellCode )内存_释放2 (hProcess, pCallFun )进程_关闭进程 (hProcess )返回 (tId )
补充内容 (2021-3-26 23:06):
文本型 字节集型 非整数型 最好都申请内存 |
评分
-
参与人数 1 | 荣誉 +1 |
收起
理由
|
笨潴
| + 1 |
热心帮助他人,荣誉+1,希望继续努力(*^__^*) 嘻嘻! |
查看全部评分
|