能力值:
( LV2,RANK:10 )
在线值:
|
-
-
2 楼
高手都睡觉去了?
这个应该算是比较简单的破解吧?
跪求各位大大给一个思路(或者几个思路也行),只要给个思路就行啊,拜托了饿~~
|
能力值:
( LV8,RANK:130 )
在线值:

|
-
-
3 楼
bpx WriteProcessMemory
|
能力值:
( LV2,RANK:10 )
在线值:
|
-
-
4 楼
首先谢谢回复,但是我还是有几个问题,
1 除了WriteProcessMemory是否还有其他类似函数可以调用?请列举,谢谢
2 这种调试不脱壳是否可以进行?难道非要脱壳不可?那个壳又臭又硬,难搞的很啊
另外 我自己也有几个思路:
1 把内存直接dump下来,比对改动前后,但是发现有太多的地方作过修改了,前后看起来整个的都不一样,请问可能在哪个环节出了问题?
2 把内存分模块锁定,看锁定哪个模块后,B.exe功能未发生变化,这样可以缩小范围,但是却不知道哪里去弄这个锁定内存不让写入的软件?
另外,是否还有其他思路可以更好更快更简单更方便的达到这一目标?
请各位达人指教
|
能力值:
( LV2,RANK:10 )
在线值:
|
-
-
5 楼
刚才我下断点了,可是拦到一大堆WriteProcessMemory,后来抓内存比较,才发现那个B.exe在内存里面的映像在改动后增加了2M,2M啊,难不成要盯着WriteProcessMemory一个一个字节的抄出来?
抓内存,也碰到许多问题,内存是实时刷新的,每秒都不同,我就用进程软件把B.exe挂起(这下内存不会自己变了),再看看A.exe改了些什么,但是每次得到的结果都不同,难道是撞见鬼了?
我的步骤大概是这样:
1 运行A,在A启动B后就把A挂起
2 等到B完全启动,把B也挂起,再抓取B的内存映像(用winhex,抓取主要内存)为1.dat
3 恢复A,等个几秒,大概A已经修改完B了,再挂起A,抓取B的内存映像为2.dat
4 比较1.dat和2.dat
但问题是,改动地方太多了,而且每次都不一样,真的撞见鬼了???
|
能力值:
( LV12,RANK:450 )
在线值:
|
-
-
6 楼
估计这个得具体问题具体分析,不会有通用的办法了.
比如得知道A.exe是做什么的,B.exe是做什么的,二者各实现什么功能,二者有什么运行时的时序关系,等等这些与你想做的事相关的信息.
|
能力值:
( LV2,RANK:10 )
在线值:
|
-
-
7 楼
抱歉,我又仔细研究了,发现是B.exe部分内存好象被锁住了一样,winhex读不出来,而在A.exe做手脚之后,就能读出来了,但已经是改变后的东西了
|
能力值:
( LV2,RANK:10 )
在线值:
|
-
-
8 楼
谢谢各位劳心回复,这篇帖子就此打住吧~谢谢
|
|
|