Datehoer的博客
我本将心向明月,奈何明月照沟渠
Datehoer的博客

当前位置:主页 > 技术分享 > Cheat Engine教程7 代码注入

Cheat Engine教程7 代码注入

浏览: 作者:Datehoer 发布日期:2020-10-22 10:55:06 来源: 原创
终于,写到了第7关了,自作孽不可活啊。
开始正题,首先我把题目贴一下。


步骤 7: 代码注入: (密码=013370)
 
代码注入是将一小段你写出的代码注入到目标进程中并执行它的技巧。
 
在这一步教程中,你将有一个健康值和一个每按一次将减少 1 点健康值的按钮,
你的任务是利用"代码注入",使你每按一次按钮就增加2点的健康值。
 
查找这个地址,然后看看是什么在改写它("找出是什么改写了这个地址")。
当你看到那条减少数值的汇编代码后,选择"显示反汇编程序",然后打开"自动汇编窗口"(菜单-工具->自动汇编 或 按下快捷键 Ctrl+a ),选择"模板"中的"代码注入"。CE 将自动生成一部分汇编代码并为你输入指令做好准备(如果 CE 没有给出正确的地址,你也可以手工输入它)。
注意 alloc 这部分代码,它会为你的代码分配出一小块空白的内存,过去,在 Win2000 之前的系统,这种行为存在安全隐患,很可能导致系统崩溃,幸运的是,这种情况在 win2000 以后的操作系统得到改善。
也要注意line newmem: 、originalcode: 以及用文本"此处放置你的代码"标示出的空白部分
正如你猜测的, 在这儿可以写下每次增加2点健康值的代码。
在这种情况下推荐你使用 "ADD" 汇编指令,
下面是一些示例:
"ADD [00901234],9" 使 [00901234] 地址的值增加9
"ADD [ESP+4],9" 使地址指针 [ESP+4] 的值增加9
在本关的情况下,你可以使用相同的手法处理减少健康值的那条原代码方括号之间的部分。
 
提示 1:
推荐你从原代码中删除减少健康值的那行代码,否则你得加 3 点健康值(你增加了3点,原代码减去1点,最终结果才会增加2点),这样看上去很容易让人迷惑,但最终方案还是由你来决定好了。
提示 2:
某些游戏中,原代码可能在多条指令之外,有时候(并非一向如此),它可能由不同的地方跳转至你的指令中并结束运行,其结果可能引起未知的错误;如果出现了这种情况,通常应当查看附近的那些跳转指令,进行修改,或者尝试使用不同地址进行代码注入,确认无误后便可以将你修改的代码注入到原代码中了。

这个其实就是需要懂一些汇编语言了,我其实有本专门写这个的书,但是我在前两个周有次回家的时候把它带回去了。导致现在并没有办法研究,不过其实这个还是挺简单的,因为题目给出了这个指令  ADD [00901234],9  这个是增加9,而我们需要加2那么只需要把9换成2然后修改地址即可。

步骤:还是熟悉的配方,先把值给搜索出,然后选择什么改写了这个地址,再点击打我一下,然后选择  显示反汇编程序 会出现内存浏览器这个,然后我们选择工具里的自动汇编,点击模板里的代码注入模板注入  我们编辑的代码在newmem: //this is allocated memory, you have read,write,execute access
//place your code here这里写  
add [这个地址就是一开始搜索出来的地址],2   对代码进行编辑然后我们把sub dword ptr [rsi+000007E0],01这一行给删掉,点击执行->确定->是,再点击打我即可增加两滴血,sub dword ptr [rsi+000007E0],01这一个是减少一滴血的指令,修改完后即可通关。

版权:本文由Datehoer原创,著作权归作者所有。商业转载请联系作者获得授权,非商业转载请保留以上作者信息和原文链接本文链接:https://zjzdmc.top/jsfx/12.html。

文章推荐

热门标签

返回顶部
下面为相关推荐
说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!