星空网 > 软件开发 > 操作系统

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

【版权所有,转载请注明出处。】

项目jni的关键代码(项目地址见文章底部),获取当前程序的包名com.example.shelldemo和com.example.nocrack对比,正常运行结果是this app is illegal,编译jni我就不介绍了,项目中也带了编译好的so

android加固系列—3.加固前先学会破解,静态修改soimages/loading.gif' data-original="http://images2015.cnblogs.com/blog/790694/201512/790694-20151225175840609-1479890487.png" />

 

1.工具介绍

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

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

 

2.IDA分析so

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

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

然后进入options | General

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

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

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

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

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

 

2.010 Editor修改so

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

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

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

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

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

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

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

 

项目地址

IDA工具地址

010 Editor地址




原标题:android加固系列—3.加固前先学会破解,静态修改so

关键词:Android

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

CGF运费计算器:https://www.goluckyvip.com/tag/16972.html
cgk空运:https://www.goluckyvip.com/tag/16973.html
CG仓断货:https://www.goluckyvip.com/tag/16974.html
CHA BAI DAO:https://www.goluckyvip.com/tag/16975.html
chababytea:https://www.goluckyvip.com/tag/16976.html
Chai point:https://www.goluckyvip.com/tag/16977.html
37号文今后是否会更新?一文详解关键信息 :https://www.kjdsnews.com/a/1836441.html
探讨内地人开设香港账户的可行性 :https://www.kjdsnews.com/a/1836442.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流