CE软件的使用指南--练习环境
CE软件的使用指南
练习环境
目录
一、 软件的下载及环境准备... 2
二、 练习第二关--精确值扫描... 4
三、 练习第三关--未知的初始值... 5
四、 练习第四关--浮点数... 7
五、 练习第五关--代码查找... 9
六、 练习第六关-- 指针... 12
七、 练习第七关--代码注入... 18
八、 练习第八关--多级指针... 22
九、 练习第九关--注入++.. 28
一、 软件的下载及环境准备
1、软件的打开
2、练习环境的打开
3、开始配置
4、打开练习环境
5、开始练习第一关
配置好后开始第一关的操作及点击“下一关”
二、 练习第二关--精确值扫描
1、开始扫描健康值“100”,输入数值“100”,点击“首次扫描”
2、点击一次“打我”,健康值下降,点击“再次扫描”。
3、此时出现了一个结果即为内存地址,将他添加到地址栏中。
4、点击地址栏中的数值即可修改数值,按照要求将98 修改为1000,即可过关。
三、 练习第三关--未知的初始值
由第三关的介绍中可看出本关起始的数值为未知,即要用位置的初始值完成关卡
1、点击新的扫描,扫描类型选择“位置的初始值”,再点击“首次扫描”。
2、首次扫描后会出现很多结果,这时我们要点击“打我”会出现一个数值即掉血的值,将他输入数值中,点击“再次扫描”。
3、第二部操作反复一到两次会出现一个小于500的值,此时将这个所显示的内存地址添加到地址栏中。
4、点击地址栏中的数值,将他改为5000即可过关。
四、 练习第四关--浮点数
浮点数是带有小数点的数字,本关利用浮点数来解决问题
1、健康:使用第二关的方法,再将数值类型改为“单浮点”进行“首次扫描”。
2、点击“打我”,再次将97.63输入数值中进行“再次扫描”。
3、将出现的内存地址添加好,再将地址栏中该地址的数值改为5000。
4、弹药:将数值类型改为“双浮点”,进行扫描。
5、重复“健康”时的操作,最后将“弹药”的地址栏中数值改为5000,即可过关。
五、 练习第五关--代码查找
某些游戏重新开始时,数据会存储在与上次不同的地方,甚至,游戏的过程中数据的存储位置也会变动,在这种情况下,将运用“代码查找”的功能来解决问题。
1、使用前面第二关的操作,先将数值的内存地址找出
2、在地址栏中右键单击找到“找出是什么改写了这个地址”并打开。
3、此时会出现一个窗口,点击Yes。
4、此时会出现这个窗口
5、点击“改变数值”,在指令框中会出现一行代码。
6、点击“替换”。
7、默认代码名字,点击确定。
8、回到CE界面,点击改变数值,发现按钮失效,此时即可过关。
六、 练习第六关-- 指针
在本关的 Tutorial.exe 窗口下面有两个按钮,一个会改变数值,另一个不但能改变数值而且还会改变数值在内存中存储的位置。
1、同样使用第二关的操作将数值所对应的内存地址找出。
2、在地址栏中右键单击找到“找出是什么改写了这个地址”,并打开。
3、此时按照图中箭头的顺序依次点击,查看该指令的详细信息。
4、详细信息中,如图中黑色框中的为动态地址。
5、将第4步的动态地址输入数值中,并要注意这个地址为十六进制,即要勾选十六进制的框,进行“首次扫描”。
6、此时在地址中会显示一个绿色的地址,这个地址为基址。
7、点击“手动添加地址”。
8、勾选“指针”,再将基址填入下方的框中,点击确定。
9、此时将出现的指向地址(出现p->xxxxxxxx)并锁定,再将数值按要求改为5000。
10、再进行点击“改变指针,即可过关。”
七、 练习第七关--代码注入
代码注入是将一小段代码注入到目标进程中的技巧,然后使进程执行你写入的代码。在这一关卡中,你将有一个健康值和一个每按一次将减少1点健康值的按钮,你的任务是利用 代码注入 ,使得每按一次按钮增加2点的健康值。
1、使用第二关的操作,将本关的数值地址找出。
2、在地址栏中右键单击找到“找出是什么改写了这个地址”,并打开。
3、此时按照图中箭头的顺序依次点击,查看该指令的详细信息。
4、再点击“显示非汇编程序”。
5、在出现的内存浏览器中点击“工具”,选择“自动汇编”。
6、选择模板中的“CT表框架代码”。
7、再点击“代码注入”。
8、弹出的窗口选择默认“OK”。
9、找到“sub dword ptr [ebx+00000478],01”这行代码,将它改为“add dword ptr[ebx+0000478],02”。这是将sub代表的减变为了用add的加。
10、改好代码后,点击文件中“分配到当前的CT表”。
11、再点击“执行”后将在地址栏中出现刚刚编的自动汇编脚本
12、将其锁定
13、再次点击“打我”,即可过关。
八、 练习第八关--多级指针
在本关中,你将看到4级指针,它由第一个指针指向第二个指针,再由第二个指针指向第三个指针,由第三个指针指向第四个指针,最终指向健康值的真正地址。
1、使用第二关的操作,将本关的数值地址找出。
2、在地址栏中右键单击找到“找出是什么改写了这个地址”,并打开。
3、按照图中的箭头顺序依次点击,查看详细信息。
4、其中如图中18为偏移量,动态地址为“019AEC80”,即为ESI。
5、将动态地址输入数值中,并要注意此为十六进制,进行扫描并将地址添加到地址栏中。
6、右键单击,这次要注意点击的是“找出是什么访问了这个地址”,不同于之前的。
7、此时点击“改变数值”,在操作栏中出现两行代码,我们选择第二个代码,并查看详细信息。
8、重复以上操作,注意每次的动态地址是不一样的,此时我们会得到四条详细信息。
9、在输入最后一次动态地址后,得到一个绿色的基址并将其添加到地址栏中。
10、点击“手动添加地址”,勾选“指针”,添加四个偏移量。
11、此时,我们将之前得到的偏移量分别对应的填入其中,再将所得到的基址填入最后的方框中(关系对应如图所示)
12、将得到的指针地址锁定,再将其数值改为5000。
13、这时,我们点击“改变指针”,在CE中指针发生改变,即可过关。
九、 练习第九关--注入++
这一步将会解释如何处理游戏中的共用代码, 这种代码是通用在除了自己以外的其他同类型对像上常常你在修改游戏的时候, 你找到了一个单位的健康, 或是你自己角色的健康, 你会发现一种情况: 如果你把健康相关代码移除的话,其结果是你的角色无敌, 但你的敌人也无敌了。在这种情况下, 你必须想办法区分自己与敌人。
1、使用第二关的操作,将本关的数值地址找出,但要注意是单浮点。
2、你可以分别在每个动态地址上面,右键选择“找出是什么改写了这个地址”,会发现这四个地址都指向了同一条汇编代码,这也就说明了其使用了共享代码。
3、在每一个地址上面右键选择“浏览相关内存区域”,发现01、02表示队伍。
4、打开内存浏览器,选择工具中的“自动汇编”。
5、打开模板选择“CT表框架代码”,再选择“代码注入”。
6、在代码中加入圈出的代码。
7、执行完代码后,重新启动游戏并自动执行,游戏结束,敌人死亡。