前提:
有需求才有实现。
android逆向能干什么?去除游戏中的广告,跳过各种支付达到付费效果,人为干预简化游戏流程直奔主题,无限增加各种付费道具,等等;当然可以对自己的apk进行逆向的逆向进行加固,毕竟冰冻三尺并非一日之寒。
有个朋友让我暴力破解个apk,达到改头换面的目的,那我把之前学习的逆向相关的内容整理下,列出个demo来演示一下,记录下自己的学习历程。
这篇就先简单演示下替换字符串,图片,简单在smali文件中插入一个提示,没什么实用价值,只当演示。
操作工具:
jdk7 + ApkIDE + genymotion;
eclipse当场编译一个apk来供测试试用;
反编译这个生成的apk,对其smali源文件进行插桩,再回编测试;
apk破解形式
修改资源
换图片,字符串:(太简单,就不截图了,如有需要操作步骤截图,留言)
1.将apk文件改名为rar;解压找到要替换图片的目录,将准备好的同名文件扔进去覆盖一下;
2.然后再将含有新图片的rar文件后缀名改为apk;
3.用签名工具对其进行签名处理,当然此时的签名肯定不是正版软件的签名,可以用任意签名打包即可;
4.导入到模拟器中查看下资源替换是否已经成功;
修改业务逻辑
只有牵扯到具体业务逻辑的时候才需要修改smali源码;
为了显得高端一点,直接在实际项目