首页
社区
课程
招聘
[原创]某某小说去壳+VIP分析
发表于: 2024-6-25 19:59 26376

[原创]某某小说去壳+VIP分析

2024-6-25 19:59
26376

[md]## 前言
看完正己视频后一直想练手,又找不到好一点的目标,偶然一次听朋友说看小说要钱后就想到了一些小说APP,本来是直奔大一点的APP下手的,但是简单看了一下直接扔回收站了,转头找了一个小一点的APP作为练手。
PS:新手入门真不建议直接上手大厂APP,纯纯折磨。

加固:腾讯加固。
检测:无frida检测,无xp检测。
版本:1.4.5


FunDex去壳,运行FunDex后启动APP等待一下后回到APP的私有目录会看到几个dex文件。

左边是APP私有目录,右边是APP结构。
对比一下dex文件可以发现左边有两个dex文件与右边的dex大小刚好一致,由此可以推断这两个dex文件就是壳,而剩下的dex文件就是脱壳后的。
把脱壳后的dex文件替换到APP结构目录中后修复一下dex文件签名APP安装(如有核心破解可不签名)。
启动APP无闪退即脱壳成功。

拖到jadx分析,isVip大法找到方法。

在User类下定位到这个isVip方法,显然这个是用户信息类了。
我首先尝试使得这个isVip方法直接返回true

spawn 和 attach 模式均可以。
刷新一下APP后可以看到Hook代码回显。

同时APP也显示了会员信息。

测试一下vip功能是否正常:

显然只修改 isVip 的返回值是无法正常使用vip的功能的。

回到 isVip 方法继续分析:
查看方法的交叉引用:

其中这个return嫌疑最大,跟进方法分析

其中的 isVip 方法已经处理过了,那么剩下的就是getVipEndTime方法了。
该方法直接返回了 vipEndTime 属性的数据。
不妨交叉引用看一下这个方法的调用:

如此以来,代码就明确了。
虽然使得isVip方法直接返回了true,但 vip 的时间是小于当前时间的,所以vip功能无法使用。
1440000显然是时间戳了。
直接构造一个大于当前时间的时间戳使得 getVipEndTime 方法永久返回这个时间戳。

Hook

此时再看vip到期时间:

测试vip功能:

正常使用。

PS:这个APP还可以自定义用户名,如果直接调取 User类下的 getNick 方法设置返回值的话是无法正常显示自定义用户名的
需要在调用 getNick 方法前调用一次 GetMobile 方法。具体逻辑就不再阐述了。

其实逻辑并不复杂,稍微有点 java 功底都可以分析出 vip 的逻辑。以上算是看完正己大佬视频后的一个小锻炼,不过这还远远不够,在我寻找目标时发现一款天气APP,也可以分析出 vip 的逻辑,再后来编写为XP模块,目前已经完成对两款APP的 vip 功能 hook。

免责声明:
以上分析仅作为技术交流,凡是以此文章作为破坏目标APP,牟利均与作者无关。[/md]

public boolean isVip() {
        return this.vip;
    }
public boolean isVip() {
        return this.vip;
    }
let UserVip = Java.use("com.*******.******.****.model.****.User");
   UserVip["isVip"].implementation = function () {
       let result = this["isVip"]();
       result = true;
       console.log(`User.isVip result=${result}`);
       return result;
   };
let UserVip = Java.use("com.*******.******.****.model.****.User");
   UserVip["isVip"].implementation = function () {
       let result = this["isVip"]();
       result = true;
       console.log(`User.isVip result=${result}`);

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 4
支持
分享
最新回复 (8)
雪    币: 854
活跃值: (1260)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
tmi
2
挺好的
2024-6-26 11:18
1
雪    币: 3546
活跃值: (3930)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
在另一个论坛看到楼主的帖子了。
2024-6-26 12:44
1
雪    币: 971
活跃值: (626)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
小说是  26岁女房客?
2024-6-27 16:29
1
雪    币: 202
活跃值: (151)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
2024-7-2 11:13
1
雪    币: 2223
活跃值: (95)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
楼主计划计划跳槽不,高薪稳定安全
2024-7-2 17:45
1
雪    币: 743
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
7
想跟着学习敲一遍,不知道哪个爱破
2024-7-3 09:35
1
雪    币: 283
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
8
脱壳后启动闪退怎么解决呢,能说一下脱壳的具体步骤吗
2024-8-7 18:02
0
雪    币: 836
活跃值: (630)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
9
mb_jjsshyyy 脱壳后启动闪退怎么解决呢,能说一下脱壳的具体步骤吗
闪退的话可能是dex没有修复,用mt修复一下dex就行。记得在xml中改一下入口点
2024-8-13 17:17
0
游客
登录 | 注册 方可回帖
返回
//