-
-
[分享]淘来的几个SMC代码
-
发表于:
2007-7-28 15:30
7911
-
第一个程序独立运行时与在OD中运行时GetModuleHandleA取得的句柄值不一样,OD中将大于70000000,好象只对XP有效。其它程序自己用OD试试。
.data
hInst dd ?
szStr db ?
szBytes db ?
CTEXT MACRO y:VARARG
LOCAL sym
CONST segment
ifidni <y>,<>
sym db 0
else
sym db y,0
endif
CONST ends
exitm <offset sym>
ENDM
.code
start:
invoke VirtualProtect, (start+02Eh), 04h, PAGE_EXECUTE_READWRITE, ADDR szBytes
mov eax, (start+02Eh)
xor ebx, ebx
mov bl, byte ptr cs:[eax]
xor bl, 035h
mov byte ptr ds:[eax], bl
invoke GetModuleHandleA, 0
mov hInst, eax
invoke GetModuleHandleA, 0
invoke wsprintf, ADDR szStr, CTEXT( "模块基址为:0x%x"), eax
invoke MessageBox, NULL, ADDR szStr,CTEXT( "SMC检测OD"), MB_OK or MB_APPLMODAL
invoke ExitProcess, 0
int 3
nop
end start
[招生]系统0day安全班,企业级设备固件漏洞挖掘,Linux平台漏洞挖掘!