没启动OD时用Windbg查看SSDT中的E5编号地址是805cbb88 是真正的SetThreadInformation的地址 如
lkd> dd 80504a70+e5*4
80504e04
805cbb88 805f98d8 80616b24 80578d3a
80504e14 805d3306 80616658 80616580 8057b656
80504e24 b69b9c20 80615d52 80615a88 b69bdb20
80504e34 80651e34 80613522 805c7d9e 805390f4
=======================================
lkd> u 805cbb88 la
nt!NtSetInformationThread:
805cbb88 68d0000000 push 0D0h
805cbb8d 6870b54d80 push offset nt!FsRtlLegalAnsiCharacterArray+0x20c0 (804db570)
805cbb92 e87903f7ff call nt!wctomb+0x45 (8053bf10)
805cbb97 64a124010000 mov eax,dword ptr fs:[00000124h]
805cbb9d 8945dc mov dword ptr [ebp-24h],eax
805cbba0 8a8040010000 mov al,byte ptr [eax+140h]
805cbba6 8845e4 mov byte ptr [ebp-1Ch],al
=========================================
但是启动OD后,上边的地址改变了。诸:od没有加载任何程序,HideOD和PhantAm插件都没选。
lkd> dd 80504a70+e5*4
80504e04
bae4e4f0 805f98d8 80616b24 80578d3a
80504e14 805d3306 80616658 80616580 8057b656
80504e24 b69b9c20 80615d52 80615a88 b69bdb20
=============================================
地址对应的代码
lkd> u bae4e4f0 l10
bae4e4f0 8bff mov edi,edi
bae4e4f2 55 push ebp
bae4e4f3 8bec mov ebp,esp
bae4e4f5 837d0c11 cmp dword ptr [ebp+0Ch],11h
bae4e4f9 7519 jne bae4e514
bae4e4fb e886ffffff call bae4e486
bae4e500 84c0 test al,al
bae4e502 7410 je bae4e514
bae4e504 8b4514 mov eax,dword ptr [ebp+14h]
bae4e507 f7d8 neg eax
bae4e509 1bc0 sbb eax,eax
bae4e50b 25040000c0 and eax,0C0000004h
bae4e510 5d pop ebp
bae4e511 c21000 ret 10h
bae4e514 5d pop ebp
bae4e515 ff25a4f5e4ba jmp dword ptr ds:[0BAE4F5A4h]
=========================================
这是怎么回事??望大侠们赐教?
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!