开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 11903|回复: 1
收起左侧

[Windows逆向] 32位之技能库

[复制链接]
发表于 2021-7-23 14:03:14 | 显示全部楼层 |阅读模式   吉林省通化市
  • 上一篇帖子中我们对技能等级进行了分析,接下来我们对技能名字库进行分析,进而获得完整的技能遍历。
  • 既然分析名字库,自然要从名字入手了,我们任意选择一个技能,用对其名字进行扫描, 可以得到若干ASCII型的结果
  • 这里注意的是如果名字后面带有后缀的结果比较多的话,可以转化成字节集,并加上结束标志00再扫描。
  • 分别对这些名字进行修改,同时切换技能栏,找到一个可以改变技能名字本地显示的地址。在xdbg32中对这个地址下硬件访问断点。
  • 向上分析esi的来源,经过多层参数的传递,得到来源于一个[ebp-68]的局部变量
  • 继续分析局部变量的来源,发现在上面出现了2[ebp-68],第一个是传入0,第二个是作为ecx指针传入到了CALL
  • 而第二个位置F2不会断,说明这个位置代码没有经过,那么来源就只能在传入0下面的CALL中了。在024B4BDcall 0x5A0CB0上下F2断点,单独到内部分析来源。
  • 这里得到了一个+C偏移,继续分析在上面又得到了一个-C偏移,而这个两个位置都是lea指令,所以只得到了+0偏移。
  • 执行到返回后继续分析第一个参数eax,得到+8偏移,以及来源局部变量[ ebp-14]
  • 代码再次向上滚动很久,可以得出局部变量[ebp-14]来源于eax
  • eax来源一个数组,数组起始地址eax来源于[esi+8]。我们切换不同种类的技能栏并对esi+8处下F2断点,发现esi是随着技能种类变化的,也就是说这个数组只是某个种类技能的数组,在上面还有一个技能种类的结构。
  • 我们先将这里得到的数据进行分析和整理,如下
  • [[技能种类+8]+n*8+4]+4                技能ID
  • [[[技能种类+8]+n*8+4]+8]+0        技能名字ASCII
  • 上面这个分析的过程除了有一点绕,并没有很难的知识点,不过这里能不能观察到esi的变化规律是一个关键,因为技能名字库还有需要对技能进行分类的游戏的确很少。在下一篇文章里我们将去分析技能种类的加密算法,并获取到完整的技能库。
  • 玩游戏,学逆向,做安全,欢迎感兴趣的小伙伴关注我们。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
结帖率:100% (9/9)

签到天数: 10 天

发表于 2021-7-23 16:09:39 | 显示全部楼层   广东省韶关市
又一个入狱的小技巧呢!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表