首页
社区
课程
招聘
这种情况下我该如何跟下去?
发表于: 2006-3-14 16:20 3712

这种情况下我该如何跟下去?

2006-3-14 16:20
3712
有这样一段代码片段:
360066FB    C1E9 02         shr     ecx, 2
360066FE    57              push    edi
360066FF    8D7C18 5D       lea     edi, [eax+ebx+5D]
36006703    8BF5            mov     esi, ebp
36006705    F3:A5           rep     movs dword ptr es:[edi], dword ptr [esi]

我是想看一下[ESI]中的数据是如何产生的,一般情况下,我是对[ESI]这里下个内存写入中断,看什么时候写它,断下后往上去找的。
但,这里这个ESI的值是不断变化的,这种情况下,我该怎么去追呢?

例如:
我对mov esi,ebp下断,
第一次断下得到:
ebp=117E4520
esi=117E4520
第二次断下得到:
ebp=11C78EC0
esi=11C78EC0
第二次断下得到:
ebp=10BF0D60
esi=10BF0D60

那么,
rep     movs dword ptr es:[edi], dword ptr [esi]
这里memcpy(edi,esi,ecx),这里的[ESI]的值是如何产生的,我不可能对第一次断下的ESI的内存地址下内存写入中断,因为第二次数据不在那个地址里了,无法断下,所以小鸟我想知道要如何去下断或如何去跟踪,希望大侠们请教一下。

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 215
活跃值: (85)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
这段代码看着不像是在程序空间啊,好像问题的关键不是在这里吧。
2006-3-14 17:42
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
是不在程序空间,在一个Nfx2004的模块里。但要是在程序里出现,有办法解决吗?
2006-3-14 18:27
0
雪    币: 3686
活跃值: (1036)
能力值: (RANK:760 )
在线值:
发帖
回帖
粉丝
4
稍微麻烦一点就是从主程序调用Nfx2004模板的时候就开始一步步跟踪,关注你所需要的数据。
2006-3-14 18:59
0
雪    币: 5
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
5
搂住汗,呵呵,我也碰到过这个问题,很郁闷
关键根本没办法下手从0 L FFFFFFFF地址搜索相关的字符串,
地址很大,感觉不在一个空间,几乎每折,期待高手
2006-3-14 19:13
0
雪    币: 5
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
6
把关键地方和引擎混在一起,无奈了
2006-3-14 19:14
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
是啊,现在好多程序为什么了反跟踪都这样作,晕,希望高手看到,可以给个办法。先谢谢了。
2006-3-14 19:16
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
求大侠们帮忙啊
2006-3-15 20:07
0
游客
登录 | 注册 方可回帖
返回
//