天天看点

x64跑32位程序

x64跑32位程序

在x64跑32位程序,API调用。

正常的程序

32-bit NtAllocateVirtualMemory->Wow64 transition->64-bit NtAllocateVirtualMemory->SYSCALL

恶意的程序

直接调用Jmp 0x33->64-bit NtAllocateVirtualMemory->SYSCALL

x23 = x86 mode

0x33 = x64 mode

处理器一般在x86上

将变量从32位扩展到64位,从堆栈获取参数到寄存器,将所有内容放到合适的地址空间并找到正确的系统调用。

继续阅读