|
![]() | 作者: sniper167 [sniper167]
![]() |
登录 |
void DeleteSelf(void) { char buf[MAX_PATH]; HMODULE Hm1,Hm2; HANDLE Ex,De,Un; Hm2=GetModuleHandle(0); GetModuleFileName(Hm2,buf,255); Hm1=GetModuleHandle("Kernel32"); Ex=GetProcAddress(Hm1,"ExitProcess"); De=GetProcAddress(Hm1,"DeleteFileA"); Un=GetProcAddress(Hm1,"UnmapViewOfFile"); CloseHandle(HANDLE(4)); asm { LEA EAX,buf PUSH 0 PUSH 0 PUSH EAX PUSH Ex PUSH Hm2 PUSH De PUSH Un RET } MessageBox(0,"error","error",0); } |
地主 发表时间: 04-03-20 22:10 |
![]() | 回复: xiaoshi [xiaoshi] ![]() |
登录 |
GetModuleHandle()取得当前进程的状态 GetModuleFileName()去文件的地址 GetProcAddress()这个就不太清楚了 /********* c+汇编 难度不小,懂的不多。 ![]() |
B1层 发表时间: 04-03-21 13:40 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号