我想創建一個dll注入代碼,測試過程記事本的進程ID被硬編碼DLL注入代碼
代碼:
.386
.model flat, stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
includelib \masm32\lib\kernel32.lib
include \masm32\include\masm32.inc
includelib \masm32\lib\masm32.lib
include \masm32\include\masm32rt.inc
.data
hand db "Kernel32.dll",0
band db "LoadLibraryA",0
dll db "C:\masm32\kntillusion.dll",0
msg db "failed",0
pd dd 840
.data?
var dd ?
handle dd ?
base dd ?
written dd ?
pr dword ?
dr dword ?
thd dword ?
.code
start:
invoke OpenProcess,PROCESS_ALL_ACCESS,TRUE,pd
TEST EAX, EAX
JE CodeFail
mov handle,eax
invoke VirtualAllocEx,handle,NULL,sizeof dll,MEM_COMMIT,PAGE_READWRITE
TEST EAX, EAX
JE CodeFail
mov base,eax
invoke WriteProcessMemory,handle,base,addr dll,sizeof dll,offset written
TEST EAX, EAX
JE CodeFail
invoke GetModuleHandle,hand
TEST EAX, EAX
JE CodeFail
mov dr,eax
invoke GetProcAddress,dr,band
TEST EAX, EAX
JE CodeFail
mov pr,eax
invoke CreateRemoteThread,handle,0,0,pr,addr dll,0,addr thd
invoke ExitProcess,0
CodeFail:
invoke StdOut, addr msg
invoke ExitProcess,0
end start
當我運行它,我得到了以下錯誤
kinject.exe遇到問題需要關閉。我們爲 抱歉給您帶來不便。
所以和建議 的plaftrom是windows XP SP3
使用調試器來調試您的kinject.exe。 – Abyx 2012-03-27 22:42:41
[format](http://meta.stackexchange.com/questions/22186/how-do-i-format-my-code-blocks)你的代碼!嘗試用q/a在meta.stackoverflow.com上播放一下,然後相當愉快,至少嘗試做出正確的句子。 – 2012-03-27 22:43:02