通常二次打包的步骤是:解包(反编译)--插入/篡改代码--生成新包--重签名--运行。
首先可以通过使用ApkTool、Jeb、bak *** ali/ *** ali等反编译工具,反编译apk安装包,图1为调用bak *** ali文件的截图。
解包后可以看到所有文件列表,找到需要修改的 *** ali文件,这里修改的是MainActivity. *** ali,如图2。
解开MainActivity. *** ali文件后,在里面插入一段篡改代码,修改登录界面中“Button”按钮上的文本,图3和图4是修改前后 *** ali文件中的代码。
修改后再调用 *** ali.jar文件,将 *** ali重新打包成dex文件,如图5所示。
接下来再将新生成的classes.dex文件替换原安装包中的classes.dex,并进行重新签名,就生成了一款盗版应用。运行该款盗版应用时会发现登录界面的登录按钮被修改替换成了“Fake Btn”,如图6、图7所示。
通过简单的几个操作步骤,一款未经加固保护的APP就被盗版了,一个团队一年的劳动成果几分钟内就被轻易窃取。通常,盗版应用会通过插入/替换广告SDK赚取广告收入、修改支付渠道截取开发者收入、插入病毒/木马程序盗取用户信息等形式出现,操作步骤与上面介绍的类似,严重侵害了开发者和用户的利益。
要想保护手机APP,避免被盗版,就要从源头进行加固保护,让破解者无从下手。图8是使用360加固保对APP进行加固前后的对比,加固后再调用bak *** ali.jar进行反编译,可以看到代码文件全部被隐藏,暴露的只是加固程序的一些代码,破解者自然无法再对源程序进行篡改了。
360加固保基于360核心加密技术,对安卓应用进行加固保护,能有效避免应用被恶意破解、反编译、二次打包、内存抓取等。同时给应用提供数据加密、签名校验、防内存修改、完整性校验、盗版监测等保护功能,给予安卓应用最强保护,从源头消灭恶意盗版应用。作为移动互联网安全服务行业的领跑者,360加固保将持续关注手机应用安全的发展,不断完善加固保服务,切实保护开发者收入和权益。
一、上传应用
点击“上传应用”按钮,进入应用安全服务。
点击“开始上传”按钮,上传开发者自主研发的apk文件(大小不超过1G)。
上传前,开发者需要对apk进行签名,否则无法加固
每次最多只能上传一个文件
文件上传成功后显示“上传完成”,可以进行下面的操作。
二、选择服务
360加固保为开发者提供安全服务、追踪服务和增值服务,开发者根据需求选择服务。
1.安全服务:同时勾选“安全扫描”和“应用加固”,根据开发者的需要自定义勾选 “支持X86架构”和“不签名校验”
2.追踪服务:推荐勾选“数据分析”、“崩溃日志”
3.增值服务:根据开发者的需要自定义勾选
以上服务自定义勾选完成后,点击“确认”按钮,开始进行应用扫描及加固。
三、下载应用
应用扫描加固完成之后:
点击“加固成功”可以下载加固后的apk
点击“历史记录”可以查看该应用的相关加固信息
点击“详情”可以查看扫描的详情
加固记录
点击“下载”可以下载此加固包
点击“删除”可以删除该条记录及加固包
四、应用签名
下载应用后,首先需要对该apk进行再次签名,且保证与加固前的签名一致,否则加固后的应用无法在手机上运行。
有多渠道打包需求的应用,加固成功后,再去加固助手使用辅助工具-渠道打包进行多渠道打包。
破解不了,得用手机连接电脑,用ida动态调试脱壳。相当麻烦。
加固后的应用是给你应用加了密钥的,就比如你穿了防弹衣一样,没办法破解的,二次签名改包后的apk会闪退!
1)APKtool 2)dex2jar 3)jd-gui 4)签名工具 相关技术的基本要求 1)具有一定的阅读JAVA代码的能力 2)稍微有点Android基础,越多越好 3)会用eclipse的一些Android调试的相关工具 4)了解一下 *** ali的语法规范和字段的自定范围 5)有点应变能力思想转换能力、 6)虽然代码的修改是修改其 *** ali文件(用到 *** ali语法),虽然其语言是非常复杂的,但是我们能够变通就行了,但是要求了解一下 *** ali的语法规范和字段的自定范围。了解以上 *** 可以非常简单破解Android APK,破解后,应用里的页面布局、代码逻辑、结构算法等都能一目了然。所以为了避免被他人,尤其是竞争对手了解到这些,防破解和反编译尤为重要。我试过代码混淆,但是代码混淆只是对类名进行了变换,增加了破解者的阅读难度,并不能真正阻止反编译工程。下面是进行过代码混淆的APK代码结构,能看到只是对类名做了变换,变成a、b、c等这样的名称。但是仍然可以进行反编译。后来又尝试使用360加固保对APK进行加固保护,发现原有的代码程序被隐藏起来了,没法再进行反编译工作。所以作为移动应用开发者,适当了解一些破解和反编译工作有利于保护自己的应用安全。如果不防患于未然,一旦出现盗版情况,那么你的APP很可能从此被市场所抛弃。
APP做加固主要是为了预防以下三点:
1.防篡改:通过完整性保护和签名校验保护,能有效避免应用被二次打包,杜绝盗版应用的产生;
2.防逆向:通过对代码进行隐藏以及加密处理,使攻击者无法对二进制代码进行反编译,获得源代码或代码运行逻辑;
3.防调试:通过反调试技术,使攻击者无法调试原生代码或Java代码,阻止攻击者获取代码里的敏感数据。
新的应用发布前,更好做一下兼容性测试,市面上各种外挂或者篡改数据什么的也比较常见,加固能做就做,避免被破解利用。
现在第三方加固平台也不少,上腾讯御安全加固个APK包,做测试看看兼容性怎么样。
怎么破解奔驰宝马? 这个破的话 只有 济南远航电子 的加分和下币才是真的,游戏机加分工作的时候可以发出高频率的电磁波,游戏机的主板上有一个给分集成块,该集成块是控制投币给分的,用游戏机加分器打通游戏...
梦想城镇在哪有破解版 骑士助手有下载,这游戏叫梦想小镇,3.7.1破解版,我知道,这个游戏,我玩过!最新版的,请采纳梦想城镇有破解版不 这个游戏早期破解的版本虽然有,由于厂商的要求要实时连网,导致更新...
全民无双文丑怎么搭配文丑搭配推荐 全民无双文丑搭配推荐。详细介绍了全民无双文丑怎么搭配?希望这篇全民无双文丑搭配推荐,能够帮到正在玩全民无双的玩家朋友。全民无双破解版 v0.4.6安卓版人气:4210...
口袋助理如何破解每天签到? 口袋助理签到和外勤打卡 ,可以任意位置, 需要手机ROOT或越狱后就可以任意改,不过目前大部分手机不可以ROOT ,可代您签到打卡或进行拜访客户。机械打卡机即打卡机内置打印...
风暴海盗如何解锁地图 1、首先在电脑上找到并打开游戏风暴海盗。2、其次在游戏界面中做主线任务,直到完成风暴之海的任务为止。3、最后打开地图点击风暴海盗中的任意一个位置的地图即可点击花费300原石进行解...
破解版PS4战神四怎么开二周目 1、把主线任务都做完,然后来到游戏的主界面,选择新游戏+。2、选择一个存档点,任意一个都行。3、选择确认选项。4、选择一个难度。5、选择是选项,即可开启二周目。以上是破...