APP脱壳之-定义属于自己的专属应用

简介: APP脱壳之-定义属于自己的专属应用

      最近下载一个app,打开便发现大大的广告弹窗。严重影响使用体验,而现在大多数的app打开基本都是先谈广告了,是属流氓行为。于是,便动起了自己改造app的心。

       一般下载的app,代码基本都在本地了,只有当数据交换的时候才会请求服务器数据。所以一般的请求数据都可以改造,而这种改造的过程,也被我们称之为脱壳。

1.前期准备
已root的手机或者安卓模拟器、mt管理器(部分操作需用到会员功能)

2.app脱壳

安装上述软件,打开xposed install,点击左上角,选择模块,选中反射大师。返回xposed install,点击右上角重启

重启后打开反射大师,选择待破解软件,点击选中该软件,点击打开该软件。

打开软件后有个小红圈,如下图,如果没有,检查步骤2.1,尝试软重启。如果还没有此教程就不适合你了。


点击小红圈,选择当前activity,出现以下界面,长按写出dex,确定,记住保存路径

打开mt管理器,找到要破解app的apk,选择待破解app点击查看,在app中找到classes.dex 文件,选择dex++打开,依次点击com、wrapper.proxyapplication、wrapperproxyapplication,打开后找到如下图所示位置,复制选中的代码。

返回apk包,找到Androidmanifest.xml,选择反编译,在如下图位置

dex++打开classes.dex文件,搜索相关提示语和广告

找到之后,发现有个if判断,将免费版不能关闭提示语之后,if之前的代码删除(此处为判断有无vip然后赋值代码),重新写赋值语句const/4 p1, 0x1(赋值为1),让其通过if-nez(不等于0),从而跳转到cond_1a

搜索'3个” 找到后点开,如下图所示,上面有个 if语句,含义为如果已有规则数p1小于限定条件(const/4 v0, 0x3  意思是将v0赋值3 )就不提示
修改(const/4 v0, 0x3 为(const/4 v0, 0x0) 将赋值改为0,下面的if-lt是小于的意思,改成if-ge,即大于等于,连起来的意思是已有规则数p1大于等于限定条件0就不提示。
相比原来的自定义规则数超过3就用不了,修改后,自定义规则数大于0就可以用,自定义规则数不可能小于0,所以就一直可以用了。

修改完成之后保存,重新封包安装,你就会发现之前的提示语和广告没了。

app的修改有很多方法,并不唯一,选择一个最适合自己的方法就好了。
比如关于破解软件的只能自定义3条规则的限定条件,(即已有3条自定义规则后就无法添加自定义规则了),最简单的修改方法,你可以把限定的3条改成9999条,一样可以达到目的,只是我觉得修改成只有在当前自定义规则条数大于等于0条时才可以添加规则,会比较优雅。

相关文章
|
3月前
|
编译器 Linux PHP
【Azure App Service】为部署在App Service上的PHP应用开启JIT编译器
【Azure App Service】为部署在App Service上的PHP应用开启JIT编译器
|
3月前
|
Linux C++ Windows
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
|
15天前
|
开发框架 监控 .NET
【Azure App Service】部署在App Service上的.NET应用内存消耗不能超过2GB的情况分析
x64 dotnet runtime is not installed on the app service by default. Since we had the app service running in x64, it was proxying the request to a 32 bit dotnet process which was throwing an OutOfMemoryException with requests >100MB. It worked on the IaaS servers because we had the x64 runtime install
|
2月前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
|
3月前
|
安全 JavaScript 应用服务中间件
【Azure Function App】如何修改Azure函数应用的默认页面呢?
【Azure Function App】如何修改Azure函数应用的默认页面呢?
|
3月前
【Azure Logic App】消费型逻辑应用在消费Service Bus时遇见消息并发速度慢,消息积压
【Azure Logic App】消费型逻辑应用在消费Service Bus时遇见消息并发速度慢,消息积压
|
3月前
【Azure Logic App】在逻辑应用中开启或关闭一个工作流是否会对其它工作流产生影响呢?
【Azure Logic App】在逻辑应用中开启或关闭一个工作流是否会对其它工作流产生影响呢?
|
3月前
|
存储 Linux 开发工具
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
|
3月前
|
域名解析 网络协议 网络安全
【App Service】遇见本地访问Azure App Service应用慢或者是调用第三方接口慢的调试小工具
【App Service】遇见本地访问Azure App Service应用慢或者是调用第三方接口慢的调试小工具
|
3月前
|
PHP Windows
【Azure App Service for Windows】 PHP应用出现500 : The page cannot be displayed because an internal server error has occurred. 错误
【Azure App Service for Windows】 PHP应用出现500 : The page cannot be displayed because an internal server error has occurred. 错误

热门文章

最新文章

下一篇
无影云桌面