【Android 逆向】Android 逆向基本概念 ( 定位内存中的修改点 | 基址寻址法 | 搜索定位法 )

举报
韩曙亮 发表于 2022/01/13 22:50:36 2022/01/13
【摘要】 文章目录 一、定位内存中的修改点1、基址寻址法2、搜索定位法 一、定位内存中的修改点 使用 " 基址寻址法 " 或 " 搜索定位法 " 搜索 指定文件中的代码 ...





一、定位内存中的修改点



使用 " 基址寻址法 " 或 " 搜索定位法 " 搜索 指定文件中的代码 在内存中的位置 ;

上述 2 2 2 个内存定位方法 结合 IDA 工具 , 一起使用 ;


1、基址寻址法


基址寻址法 :

目标是找到 内存中的映射文件对应的修改点 ; 如 : 在 so 动态库中 , 找到了函数 void fun() , 修改该函数的 参数 / 局部变量 / 返回值 等值 ;

首先 , 找到要修改的 代码 相对于 so 动态库文件头偏移量 Offset ;

然后 , 找到 so 动态库文件 , 在内存中基址 Base ;

最后 , 计算出 应该修改的 内存偏移 Offset + Base 地址 ;

该方法使用时不是很方便 , 需要对内存计算有深厚的功底 ;


2、搜索定位法


搜索定位法 :

首先 , 在 指定的 内存范围内 , 搜索 " 特定代码串 " , 找到该 特征代码串 的 " 位置基址 " Base ;

然后 , 计算出 该 特征代码串 的 位置基址 Base , 与 目标代码 地址 之间的偏移 Offset ;

最后 , 计算出 应该修改的 内存偏移 Offset + Base 地址 ;

文章来源: hanshuliang.blog.csdn.net,作者:韩曙亮,版权归原作者所有,如需转载,请联系作者。

原文链接:hanshuliang.blog.csdn.net/article/details/120619557

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。