首页
社区
课程
招聘
基于React Native开发的非法App破解记录[原创]
发表于: 2023-2-2 02:30 7820

基于React Native开发的非法App破解记录[原创]

2023-2-2 02:30
7820

目标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"是广告样子,也不要了

重打包

1
2
3
4
5
6
7
8
9
10
11
12
13
# 反编译
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的破解版了

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 1
支持
分享
最新回复 (3)
雪    币: 1616
活跃值: (1389)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
学习一下!!!
2023-2-3 11:01
0
雪    币: 200
活跃值: (1240)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
有签名校验怎么办呢
2024-8-23 10:55
0
雪    币: 255
活跃值: (2353)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
高版本ReactNative 基本都用Hermes把index.android.bundle编译成了bytecode,这种要怎么处理呢
2024-8-23 14:55
0
游客
登录 | 注册 方可回帖
返回
//