首页
社区
课程
招聘
远程注入调用 call怎么失败?
发表于: 2010-5-5 02:06 3754

远程注入调用 call怎么失败?

2010-5-5 02:06
3754
我自己写程序测试:
VC6

////////////////////
void CCallTestDlg::OnButton1()
{
        // TODO: Add your control notification handler code here
        CString  tmp = "okhere";
        MsgBox();
}

void CCallTestDlg::MsgBox()
{
       
        //SetWindowText("testforcall");
        MessageBox("testforcall");
}
////////////////////////////

OD 汇编代码:

00401497   .  8BF1          mov     esi, ecx
00401499   .  68 20304000   push    00403020                                    ;  okhere
0040149E   .  8D4C24 08     lea     ecx, dword ptr [esp+8]
004014A2   .  E8 61020000   call    <jmp.&MFC42.#537_CString::CString>
004014A7   .  8BCE          mov     ecx, esi
004014A9   .  C74424 10 000>mov     dword ptr [esp+10], 0
004014B1   .  E8 2A000000   call    004014E0
004014B6   .  8D4C24 04     lea     ecx, dword ptr [esp+4]
004014BA   .  C74424 10 FFF>mov     dword ptr [esp+10], -1
004014C2   .  E8 17020000   call    <jmp.&MFC42.#800_CString::~CString>
004014C7   .  8B4C24 08     mov     ecx, dword ptr [esp+8]
004014CB   .  5E            pop     esi
004014CC   .  64:890D 00000>mov     dword ptr fs:[0], ecx
004014D3   .  83C4 10       add     esp, 10
004014D6   .  C3            retn

///////////////////////////////////

很明显  004014B1   .  E8 2A000000   call    004014E0

这个就是 MsgBox()函数调用;

        _asm
        {
                pushad
                        call    004014E0
                popad
        }

为什么失败了。。。。。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 51
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
为什么又是看不懂的
2010-5-5 05:38
0
雪    币: 360
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
rol
3
虽然我很努力了,但真的是没看懂。
你把哪段代码远程注入了?
2010-5-5 07:52
0
雪    币: 266
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
CALL是对的
写法是对的
你先得确定 你是否成功 远线程注入 成功了没   
再找CALL测试工具 测试一下
2010-5-5 11:16
0
雪    币: 144
活跃值: (305)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
我自己远程注入dll、

也用所谓的call测试工具 试过。。。完全没反应。。
2010-5-5 14:06
0
雪    币: 18
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
防火墙屏蔽了吧。你看看getlasterror
2010-5-5 16:24
0
雪    币: 144
活跃值: (305)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
谢谢大家,是我错了

004014A2   .  E8 61020000   call    <jmp.&MFC42.#537_CString::CString>
004014A7   .  8BCE          mov     ecx, esi
004014A9   .  C74424 10 000>mov     dword ptr [esp+10], 0
004014B1   .  E8 2A000000   call    004014E0

调试后我发现,在call 004014E0 之前 eax  ecx  发生改变。。。所以需要给eax和ecx赋值。
2010-5-5 17:01
0
游客
登录 | 注册 方可回帖
返回
//