首页
社区
课程
招聘
[求助]OD 新增字符串地址的问题
2016-4-9 20:31 4676

[求助]OD 新增字符串地址的问题

2016-4-9 20:31
4676
使用 OD 新增了一条push 字符串地址 指令,保存到文件并运行此软件后这个字符串地址并未指向原来的字符串,成了一个不存在的地址,所以程序崩溃了,要怎样做才正确呢。

阿里云助力开发者!2核2G 3M带宽不限流量!6.18限时价,开 发者可享99元/年,续费同价!

收藏
点赞0
打赏
分享
最新回复 (6)
雪    币: 205
活跃值: (2659)
能力值: ( LV7,RANK:140 )
在线值:
发帖
回帖
粉丝
yeyeshun 2 2016-4-9 21:10
2
0
我猜你需要修复重定位
雪    币: 10
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
danliuwo 2016-4-9 21:21
3
0
新增加的字符串地址每次启动都是不同的内存地址,而添加的指令又是指的固定的地址,不晓得是什么原因。
雪    币: 163
活跃值: (103)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
xiaofuy 2016-4-9 22:48
4
0
字符串放到栈上面
雪    币: 10
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
danliuwo 2016-4-9 23:12
5
0
能详细说一下吗?给我几行代码也行。
我太不要脸了,这种话也说得出口。
雪    币: 205
活跃值: (2659)
能力值: ( LV7,RANK:140 )
在线值:
发帖
回帖
粉丝
yeyeshun 2 2016-4-10 21:07
6
0
你最好能在一楼加上一些代码和截图,有助于我们理解你的问题
雪    币: 163
活跃值: (103)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
xiaofuy 2016-4-11 09:21
7
0
char *str1= "danliuwo,这是一个字符串放到栈上面的例子!";
char *str2= "bbs.pediy.com的demo~";
MessageBoxA(0, str1, str2, 0);
return 1;

x32:
/*1351000*/  push    ebp
/*1351001*/  mov     ebp, esp
/*1351003*/  sub     esp, 0x44
/*1351006*/  xor     ecx, ecx
/*1351008*/  mov     dword ptr [ebp-0x1F], 0x21D3D7
/*135100F*/  push    ecx
/*1351010*/  lea     eax, dword ptr [ebp-0x18]
/*1351013*/  mov     dword ptr [ebp-0x23], 0xFDC0C4B5
/*135101A*/  push    eax
/*135101B*/  lea     eax, dword ptr [ebp-0x44]
/*135101E*/  mov     dword ptr [ebp-0x27], 0xE6C3CFC9
/*1351025*/  push    eax
/*1351026*/  push    ecx
/*1351027*/  mov     dword ptr [ebp-0x2B], 0xBBD5BDB5
/*135102E*/  mov     dword ptr [ebp-0x2F], 0xC5B7AEB4
/*1351035*/  mov     dword ptr [ebp-0x33], 0xFBB7D6D7
/*135103C*/  mov     dword ptr [ebp-0x37], 0xF6B8BBD2
/*1351043*/  mov     dword ptr [ebp-0x3B], 0xC7CAE2D5
/*135104A*/  mov     dword ptr [ebp-0x3F], 0x2C6F7775
/*1351051*/  mov     dword ptr [ebp-0x43], 0x696C6E61
/*1351058*/  mov     byte ptr [ebp-0x44], 0x64
/*135105C*/  mov     dword ptr [ebp-0x7], 0x7E6F6D
/*1351063*/  mov     dword ptr [ebp-0xB], 0x6564C4B5
/*135106A*/  mov     dword ptr [ebp-0xF], 0x6D6F632E
/*1351071*/  mov     dword ptr [ebp-0x13], 0x79696465
/*1351078*/  mov     dword ptr [ebp-0x17], 0x702E7362
/*135107F*/  mov     byte ptr [ebp-0x18], 0x62
/*1351083*/  call    dword ptr [<&USER32.MessageBoxA>]
/*1351089*/  xor     eax, eax
/*135108B*/  inc     eax
/*135108C*/  mov     esp, ebp
/*135108E*/  pop     ebp
/*135108F*/  retn    0x4

x64:
000000013F421002  mov         rbp,rsp  
000000013F421005  sub         rsp,70h  
000000013F421009  lea         r8,[rbp-50h]  
000000013F42100D  lea         rdx,[rbp-38h]  
000000013F421011  xor         r9d,r9d  
000000013F421014  xor         ecx,ecx  
000000013F421016  mov         dword ptr [rbp-13h],21D3D7h  
000000013F42101D  mov         dword ptr [rbp-17h],0FDC0C4B5h  
000000013F421024  mov         dword ptr [rbp-1Bh],0E6C3CFC9h  
000000013F42102B  mov         dword ptr [rbp-1Fh],0BBD5BDB5h  
000000013F421032  mov         dword ptr [rbp-23h],0C5B7AEB4h  
000000013F421039  mov         dword ptr [rbp-27h],0FBB7D6D7h  
000000013F421040  mov         dword ptr [rbp-2Bh],0F6B8BBD2h  
000000013F421047  mov         dword ptr [rbp-2Fh],0C7CAE2D5h  
000000013F42104E  mov         dword ptr [rbp-33h],2C6F7775h  
000000013F421055  mov         dword ptr [rbp-37h],696C6E61h  
000000013F42105C  mov         byte ptr [rbp-38h],64h  
000000013F421060  mov         dword ptr [rbp-3Fh],7E6F6Dh  
000000013F421067  mov         dword ptr [rbp-43h],6564C4B5h  
000000013F42106E  mov         dword ptr [rbp-47h],6D6F632Eh  
000000013F421075  mov         dword ptr [rbp-4Bh],79696465h  
000000013F42107C  mov         dword ptr [rbp-4Fh],702E7362h  
000000013F421083  mov         byte ptr [rbp-50h],62h  
000000013F421087  call        qword ptr [__imp_MessageBoxA (013F4220F0h)]  
000000013F42108D  mov         eax,1  
000000013F421092  add         rsp,70h  
000000013F421096  pop         rbp  
000000013F421097  ret
游客
登录 | 注册 方可回帖
返回