前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >植物大战僵尸:运用特征定位技术

植物大战僵尸:运用特征定位技术

作者头像
微软技术分享
发布2022-12-28 15:10:59
3240
发布2022-12-28 15:10:59

特征码定位技术的应用非常广泛,我们所熟知的杀毒软件的查杀原理多半是基于特征码定位技术实现查杀的,在外挂技术领域特征码定位主要用于,版本的通杀,制作一键基址获取器,动态地址的定位等。

同样的提取特征码也需要尽量找变化比较小的,并具有唯一性标志的汇编指令片段,像是call 或者大跳转,一般而言我们不能用它作为特征码。

  • 遍历技巧:
  • 打开CE-> 搜索类型选择字节类型-> 在植物亮的状态时搜索1
  • 拿起植物-> 搜0 -> 放下植物搜1 ->拿起植物搜0-> 一直重复-> 地址一般在最后面

1.首先你要通过上面的遍历技巧找到这个动态地址,将其锁定1后植物即可无限种植,效果如下所示:

2.接着在该地址上面右键,选择是什么改写了这个地址,然后我们回到游戏,拿起植物然后直接右键放下,会出现两条汇编指令。

汇编代码分析: @当我们放下植物后出现:0040CDEA - C6 44 08 70 01 - mov byte ptr [eax+ecx+70],01 { 1 } @当我们拿起植物后出现:00488E73 - C6 45 48 00 - mov byte ptr [ebp+48],00 { 0 }

3.我们直接点击00488E73 - C6 45 48 00 - mov byte ptr [ebp+48],00 这条指令,因为这条指令是拿起植物是的状态,我们需要将代码中的00改为01即可,查看反汇编代码并提取在它之上的几条指令作为特征码,此处我们提取特征为83 f8 1c 75 08 6a 1e这些机器码。

4.接着我们通过CE来验证一下是否能够定位到相应的地址上,在CE中选择搜索字节数组,然后能够搜到00488E64这个地址,而我们需要定位到00488E73,可以将两个地址相减得到相对偏移0xF(也就是十进制的15)就等于我们想要的地址,公式为00488e64 + 0xF = 当前地址

5.直接使用易语言配合我封装好的特征码定位模块,即可实现定位基地址,需要模块可以联系我。

6.最后附一张注入成功后的效果图,如下所示:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-01-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云代码分析
腾讯云代码分析(内部代号CodeDog)是集众多代码分析工具的云原生、分布式、高性能的代码综合分析跟踪管理平台,其主要功能是持续跟踪分析代码,观测项目代码质量,支撑团队传承代码文化。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档