首页
社区
课程
招聘
[旧帖] 问个简单的内存补丁的问题![求助] 0.00雪花
发表于: 2006-12-4 22:29 3618

[旧帖] 问个简单的内存补丁的问题![求助] 0.00雪花

2006-12-4 22:29
3618
386
.model flat, stdcall
option casemap :none

include windows.inc
include user32.inc
include kernel32.inc

includelib user32.lib
includelib kernel32.lib

.data?
stStartUp STARTUPINFO <?> ;装载结构
stProcInfo PROCESS_INFORMATION <?>
stProcess PROCESSENTRY32 <?>
.data
dbPatched db 75h,0Ch;jnz的机器码,也就是我们要写入的内容
szFilename db 'Test.exe',0

.code
Start:
invoke GetStartupInfo,addr stStartUp
invoke CreateProcess,offset szFilename,NULL,NULL,NULL,NULL,\
  NORMAL_PRIORITY_CLASS or CREATE_SUSPENDED,NULL,NULL,\
  offset stStartUp,offset stProcInfo ;利用CreateProcess打开拥有父进程的权限

  invoke WriteProcessMemory,stProcInfo.hProcess,\
    00401015h,addr dbPatched,2,NULL;开始在00401015h位置写入补丁指令,其中stProcInfo.hProcess就是继承父权限的句柄
  invoke ResumeThread,stProcInfo.hThread;创建线程执行补丁
  invoke CloseHandle,stProcInfo.hProcess;关闭句柄
  invoke CloseHandle,stProcInfo.hThread;关闭句柄
invoke ExitProcess,NULL
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
end Start
我用RadASM编译是出现了如下错误:
E:\RadASM\Masm32\Bin\ML.EXE /c /coff /Cp /nologo /I"E:\RadASM\Masm32\Include" "内存补丁.asm"
Assembling: 内存补丁.asm
内存补丁.asm(13) : error A2044: invalid character in file
内存补丁.asm(22) : error A2006: undefined symbol : stStartUp
内存补丁.asm(22) : error A2114: INVOKE argument type mismatch : argument : 1
内存补丁.asm(23) : error A2006: undefined symbol : stStartUp
内存补丁.asm(23) : error A2114: INVOKE argument type mismatch : argument : 9

构建时发生错误.
总共编译时间 266 毫秒
我觉得应该没错啊,知道的人请帮帮我,谢谢!

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 2384
活跃值: (766)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
2
stStartUp STARTUPINFO <?> ;装载结构
                         ↑
           你这里多了一个全角空格,去掉就没事了。
2006-12-4 22:58
0
雪    币: 193
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
汗,我再试试,谢谢版主啊!
2006-12-5 08:30
0
游客
登录 | 注册 方可回帖
返回
//