首页
论坛
课程
招聘
[求助]R3下关于调用Native Api问题
2009-8-21 15:10 4887

[求助]R3下关于调用Native Api问题

2009-8-21 15:10
4887
BYTE lpBuffer[1024] = {0};

_asm
{       
                push ebp
        mov ebp, esp
        push 0
        push 20
        push lpBuffer
        push 0x00401000
        push 0xFFFFFFFF
        mov eax, 0xBA
        mov edx, esp
        int 0x2e
        add esp, 0x14
        mov esp, ebp
        pop ebp
}
       
for(int i = 0; i < 20; i ++)
{
        printf("%02X ", (BYTE)lpBuffer[i]);
}

为什么上面的方法调用NtReadVirtualMemory 读不到数据 而下面的方法可以正确读到数据?

typedef int (__stdcall *__NtReadVirtualMemory)(
                                        IN HANDLE               ProcessHandle,
                                        IN PVOID                BaseAddress,
                                        OUT PVOID               Buffer,
                                        IN ULONG                NumberOfBytesToRead,
                                        OUT PULONG              NumberOfBytesReaded OPTIONAL
);

__NtReadVirtualMemory pFun = (__NtReadVirtualMemory)GetProcAddress(LoadLibrary("ntdll"), "NtReadVirtualMemory");
if(pFun)
{       
        BYTE lpBuffer[1024] = {0};
        pFun(GetCurrentProcess(), (PVOID)0x00401000, lpBuffer, 20, NULL);
        for(int i = 0; i < 20; i ++)
        {
                printf("%02X ", (BYTE)lpBuffer[i]);
        }
}

请知道的兄弟指点一下。。。

[2023春季班]《安卓高级研修班(网课)》月薪两万班招生中~

收藏
点赞0
打赏
分享
最新回复 (5)
雪    币: 251
活跃值: 活跃值 (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
leftup 活跃值 2009-8-21 15:31
2
0
为什么不看看返回值是什么Status
雪    币: 537
活跃值: 活跃值 (54)
能力值: ( LV9,RANK:260 )
在线值:
发帖
回帖
粉丝
Fypher 活跃值 4 2009-8-21 15:43
3
0
_asm{
                push 0
                push 20
                lea eax, lpBuffer
                push eax
                push 0x00401000
                push 0xFFFFFFFF
                mov eax, 0xBA
                mov edx, esp
                int 0x2e
                add esp, 0x14
        }

这样就可以了哈
雪    币: 489
活跃值: 活跃值 (333)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
坚持到底 活跃值 7 2009-8-21 15:55
4
0
多谢指点。。
我汇编太差了。。
雪    币: 514
活跃值: 活跃值 (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
xacker 活跃值 1 2009-8-22 15:02
5
0
这个应该是2k下的吧 。
雪    币: 537
活跃值: 活跃值 (54)
能力值: ( LV9,RANK:260 )
在线值:
发帖
回帖
粉丝
Fypher 活跃值 4 2009-8-22 16:30
6
0
XP,2k下是0xa4
游客
登录 | 注册 方可回帖
返回