当前位置: 首页 > news >正文

基于React Native开发的非法App破解记录

目标app YUhSMGNITTZMeTloWm1ZdWJIVnNkWE5wY2k1dFpTOD0=

使用jadx反编译,找了一圈没有找到相应代码,看AndroidManifest.xml也不像有加壳的样子。。。
在lib目录下找到libreactnativejni.so文件,看似和react相关,莫非这app是大前端的产物?

搜索react native,果然是

React Native是一个脸书研发的开放源码的应用程序架构。
React Native基于React.js,目的是让开发者可以利用JavaScript和React.js的宣告式编程模式开发出在多平台上运作的程式。

PS: Unity开发的手游也没有相应的原生app代码,游戏逻辑全都在libil2cpp.so里,如果看到libil2cpp.so则可判断app是unity开发的。

基于React Native跨平台开发的app,逻辑都在assets的index.android.bundle里,这是个js文件,打开可以看到js代码。

(跨平台开发真烦,逆向人员得学好几套东西)

格式化一下index.android.bundle的js代码便于查看,。。。一点混淆都没有。

app能不能破解,要看其判断逻辑是在客户端还是服务端,在服务端判断的成本是比较高的,像这种“小”app应该不会投入多少成本去做安全防护,因为我们直接盲猜“是否是vip”之类的逻辑就是在客户端进行的。

这个app的视频有"免费"、"收费"之分,搜索"free"关键词,慢慢看代码梳理逻辑。

在这里插入图片描述
这段代码是判断是否免费然后让用户付费的逻辑,直接注释掉即可。

在这里插入图片描述
这个"_renderAd"是广告样子,也不要了

重打包

# 反编译
apktool d app.apk -s

# 修改 index.android.bundle
找到相应代码注释/删除

# 回编译
apktool b app -o app_repack.apk

# 签名 (我用uber签名 https://github.com/patrickfav/uber-apk-signer)
java -jar /Applications/uber-apk-signer-1.2.1.jar --apks lusir_repack.apk

如此便得到非法app的破解版了

相关文章:

  • 年度征文 | 回顾2022,展望2023(我难忘的2022,我憧憬的2023)
  • JavaScript篇.day08-DOM,节点,事件,定时器,位置及坐标
  • QML教程(七) JavaScript
  • 蓝桥杯寒假集训第四天(全球变暖DFS)
  • VScode中不同目录间python库函数的调用
  • C语言版扫雷——从0到1实现扫雷小游戏
  • 机器学习笔记 - 模式识别之图像特征提取和特征选择的基本方法总结
  • APP应用渗透测试思路
  • 微信小程序框架
  • 网络编程 udp/ip协议 c/s模型
  • 【数据结构】C语言实现链表(单链表部分)
  • JAVA练习8
  • 聊聊最适合程序员的画图工具
  • JAVA数据结构篇--12理解LinkedHashSetTreeSet
  • DR_CAN基尔霍夫电路题解法【自留用】
  • [译] 理解数组在 PHP 内部的实现(给PHP开发者的PHP源码-第四部分)
  • 【面试系列】之二:关于js原型
  • 07.Android之多媒体问题
  • 10个确保微服务与容器安全的最佳实践
  • AHK 中 = 和 == 等比较运算符的用法
  • Angular 响应式表单 基础例子
  • CSS魔法堂:Absolute Positioning就这个样
  • eclipse(luna)创建web工程
  • Effective Java 笔记(一)
  • express如何解决request entity too large问题
  • HTTP传输编码增加了传输量,只为解决这一个问题 | 实用 HTTP
  • java2019面试题北京
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • Linux编程学习笔记 | Linux IO学习[1] - 文件IO
  • Selenium实战教程系列(二)---元素定位
  • ⭐ Unity 开发bug —— 打包后shader失效或者bug (我这里用Shader做两张图片的合并发现了问题)
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 从输入URL到页面加载发生了什么
  • 给Prometheus造假数据的方法
  • 计算机在识别图像时“看到”了什么?
  • 力扣(LeetCode)22
  • 三分钟教你同步 Visual Studio Code 设置
  • 使用SAX解析XML
  • 数组大概知多少
  • 为什么要用IPython/Jupyter?
  • 项目实战-Api的解决方案
  • 《码出高效》学习笔记与书中错误记录
  • Android开发者必备:推荐一款助力开发的开源APP
  • 新年再起“裁员潮”,“钢铁侠”马斯克要一举裁掉SpaceX 600余名员工 ...
  • ​​​​​​​GitLab 之 GitLab-Runner 安装,配置与问题汇总
  • ​Spring Boot 分片上传文件
  • ​马来语翻译中文去哪比较好?
  • # Maven错误Error executing Maven
  • (cos^2 X)的定积分,求积分 ∫sin^2(x) dx
  • (笔试题)合法字符串
  • (动手学习深度学习)第13章 计算机视觉---微调
  • (二开)Flink 修改源码拓展 SQL 语法
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (牛客腾讯思维编程题)编码编码分组打印下标题目分析
  • (区间dp) (经典例题) 石子合并