首页 > 移动平台 > 详细

android加固—3.加固前先学会破解,静态修改so

时间:2016-01-15 10:56:04      阅读:290      评论:0      收藏:0      [点我收藏+]

1.工具介绍

IDA6.5,静态分析so文件用

010 Editor,修改so文件16进制码

 

2.IDA分析so

so拖入IDA直接定位到关键代码处,BEQ意思是上一行的CMP比较指令如果R0等于0就跳转到loc_ED0处,也就是成功运行处。但实际程序运行后R0的值不等于0.

 技术分享

然后进入options | General

 技术分享

 技术分享

如下显示,把每行对应的16进制机器码显示出来了

 技术分享

可以看出跳转指令B对应的16进制机器码为E0,我们现在要做的就是把0EC2处的指令改成B loc_ED0,意思就是不用判断上一行的CMP指令直接跳转。

 

2.010 Editor修改so

打开010 Editor,把so文件拖入,找到0EC2处,注意一个数字是4位,两个数字是8位一个字节,所以从0EC0处开始数第三个(起始0

 技术分享

手动把D0改成E0,注意一个数字一个数字的改

 技术分享

保存,然后重新运行项目,奇迹就发生了,程序running successfully了。

其实也可以把修改后的so重新拖入IDA可以看出0EC2行变成了B而不是曾经的BEQ

 技术分享

 

项目地址

IDA工具地址

010 Editor地址

android加固—3.加固前先学会破解,静态修改so

原文:http://www.cnblogs.com/joey-hua/p/5131276.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!