首页
社区
课程
招聘
[旧帖] [原创]CE OD结合运用 断点找寻游戏地址 0.00雪花
发表于: 2013-8-18 14:45 4858

[旧帖] [原创]CE OD结合运用 断点找寻游戏地址 0.00雪花

2013-8-18 14:45
4858

作者:阿Mark  

这是我看了外挂分析视频后自己的一点发现或经验给大家分享,
新手看一下,高手就飘过啦 :)
有什么地方不对请高手指正!!!
一、CE搜索
1.首先,通过变动数值,搜索偏移地址。
2.什么改写了这个地址。
3.操作游戏使其写入,写入有多方面(加、减或者其他)
4.找到地址后,显示反汇编
大部分  mov [eax+偏移],ebx    +后面大部分为偏移地址
ebx传送的数值。
5.找到eax的地址,选HEX 搜索
出现搜索数据,基址都是00400000开头 其余的全部为偏移地址。
6.选出可能的数据(大于004开头的),什么读写了这个地址(除了第一次是改写之外 后面的都是读写了)。
7.出现很多地址,选择符合的地址,比如mov 传送  cmp 比较 sub 减少 add 增加
以寻找的功能而确定。 随便选中一个,显示反汇编。
8.寻找eax地址,并找到偏移,选HEX接着搜索EAX地址。
9.如搜索出绿色地址,即为基址。如果还是有不是004开头的地址
找出大于004开头的继续查找。(一般的小游戏一、二级指针,大型游戏一般四级指针甚至更多)
(搜索方法:在一些游戏里,可能1代表一个功能,0代表另一个功能,根据游戏的特点来确定
,可以通过搜索1 和 0 的办法来确定某些难以找到的地址。默认的为4字节,若搜索不出可改变数值类型,
比如字节。)
10.范围搜索和减少搜索。   范围搜索就是在CE里设定一个范围,然后再这个范围里进行搜索(首先未变动的数值,然后回到游戏
操作功能,再搜索变动的数值。)利用CE6.2里面在十六进制代码的窗口,反汇编代码下方,数值变动时,会变红,可利用确定范围。
减少搜索就是在游戏中,人物攻击的动作(包括物品的效果时间)。人物攻击的动作,用CE里的速度修改,将攻击速度减慢,然后搜索减少的数值
(一般一个动作的开始时,数值增加,然后慢慢地减少。)找到确定的地址后,进入OD分析。物品的效果时间,比动作容易,搜索减少的数值,
然后进行变动是否正确。
二、OD运用
1.加载游戏后,按Ctrl+g 或者右键 转到  按两次,找到地址。
2.找到地址后,下断点。从断点中找到地址开头.(在游戏修改里,某些功能的实现肯定不是数值搜索所能实现的,
一些功能跟数值根本没有关系,这就需要从已知入手寻找未知。 例如,受攻击后,血减少,找到血减少的地址后,下断点
。然后回到游戏再收一次攻击让血减少,这是游戏就会断下,在OD中寻找出使血减少的重要CALL,进入CALL里面,找到CALL开头地址从头分析,
一直分析到程序最后。大多数搜索数值所不能实现的功能都在已知相关功能所包含的CALL里)
3.在开头下断点,进游戏再次操作使游戏断下来的功能,会发现程序断开,进入OD用单步步过,在跳转地区做记录,直分析到CALL的位置
4.进入游戏,操作想修改的功能,OD断开后,单步步过,比较先前跳转,在先前跳转这次没有跳或者先前没跳这次跳的地方做记录,修改跳转,
比如JMP JE JNE.大部分游戏的修改都是通过跳转来实现,少部分高难度功能要修改mov cmp 。
5.对于游戏里面的功能,肯定是要一个一个的实现。如果要实现多个功能,可用这办法。首先在要修改的地址进行JMP ,跳到
空白未知,然后在空白处写入地址,例如00400000 0 1 2 3 4 5 6 这几个数分别代表不同的功能,全部实现的话这样写:
JMP 00400000 0
JMP 空白地址
(跳转的空白地址)JMP 00400000 01
……
……
……
依次执行完成后JMP跳回原来程序。
6.OD对偏移的分析是,在Commond:d 偏移地址  然后回车 分析。

游戏功能修改的实现:
很多改游戏的新手都想按照自己想要的功能来修改,但是游戏里的一些功能除了HP MP
能搜索出来外,其他的根本不能搜索。要灵活地运用断点来找。
例如,大多数游戏都是从HP开始,先找到HP的地址,然后下断点,回游戏后再让HP
减少,断开后会发现很多断点,这就需要有一定的汇编基础来分析。使HP减少的 可能为
攻击或者其他的功能。找到攻击后,能分析出攻击的HP的数量、攻击的动作、攻击的特点
再从分析出来的地址在下断点,在进行地址查找。
游戏功能的修改不是想修改就能修改的,需要一步一步查找,不可能一次就看出这个功能
所在的修改地址,也要有汇编基础。
查找也有技巧,搜数值只是简单的方法,还有一些例如减少的数值、增加的数值、不变的数值,都能利用。最主要的目的就是进行断点分析。

转载请标明作者,谢谢!!!!!!


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

收藏
免费 5
支持
分享
最新回复 (2)
雪    币: 1
活跃值: (70)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
楼主我想请教个问题:类似GTA那样的单机游戏,在游戏中输入一串作弊代码然后就可以调用秘籍,譬如说加血、拥有武器等,我想用call的形式用汇编写外挂实现同样的功能,但是不知道如何找那些call,,,,下什么断点??还望楼主或是大牛指教。
2013-8-18 15:26
0
雪    币: 198
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
现在正在学习OD呢
2013-8-18 18:46
0
游客
登录 | 注册 方可回帖
返回
//