首页
社区
课程
招聘
[原创]乐固分析-续
发表于: 2023-2-12 17:03 14194

[原创]乐固分析-续

2023-2-12 17:03
14194

APK:新概念AI版v1.11.0

包名:com.qqxue.newconcept

MD5:c05d7bd5154f9043daaad64a6d97861f



jadx、idapro、unicorn

在之前100次都没坚持下来后,最近第101下定决心学好英语,于是在应用商店下了一堆app,通过精心挑选最后留下了新概念AI版,但是这个app的一些东西需要会员才能看。

开会员是不可能的,这辈子都不可能为了学英语花钱,说不定再等几天就要第102次下定决心学好英语了,那这钱不就白花了么。


先用jadx反编译看下,发现使用了乐固进行加壳。

正好去年发了一篇分析乐固的帖子【乐固分析】,记得当时写了个脱壳脚本,于是把我的陈年老代码翻出来,ida加载脚本一把梭。

当我以为能轻松秒杀的时候,不出意外的意外翻车了。

简单看了下脱壳脚本,发现里面使用了一些硬编码,一些函数的地址被写死了。

然后对比so的md5,发现两个so的md5不一致,所以这些地址都是错误的。


1、加固的逻辑一般不会变,所以之前脱壳脚本的流程也不用动。

2、每次编译后so中的函数地址可能会发生变化,所以脚本中调用的函数地址不能写死,需要脚本根据so进行自动适配

3、分析so找出特征码,对引用的地址进行定位


通过查看之前的脚本,找出所有需要适配的地方

0X1D48,

0X1D60, 

0X1CF4,

0X1FE8, 

0X1EA4, 

0X1E5C, 

0X1E20, 

0X1D84, 

0X1F88, 

0X1DA8, 

0X1CE8, 

0X1E14,

0X20B4, 

0X20C0


原脚本中的地址是0x2B604,在ida中找到这个函数,没有发现能够定位的地方

于是查看一下引用,发现0x29BC0调用了这个函数,

0x29BC0使用了一些常量字符串,并且0x29BC0这个函数没有被混淆,所以引用字符串的时候,代码偏移是不会变的

于是决定通过"PROCESS_CHILD"这个字符串进行定位,先找到引用的时候偏移为+0x98的函数

然后查看汇编代码,往上倒回去找,找到的第一条BL指令,跳转的地址就是我们需要的地址

添加脚本代码


原脚本中的地址是0x2315C,在ida中找到这个函数,没有发现能够定位的地方

于是查看一下引用,发现0x10EB4调用了这个函数,

0x10EB4中在调用该函数前,使用了常量偏移632,在生成汇编代码的时候是不会变的

于是找到该指令的二进制搜索一下,看是不是唯一的,可以看到搜索结果只有一处,可以通过该特征码进行定位。

然后从定位点往下找,找到的第一条BL指令,跳转的地址就是我们需要的地址

添加脚本代码


原脚本中的地址是0x2B2AC,在ida中找到这个函数,发现存在常量字符串"compress return error"能够定位。


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 8
支持
分享
最新回复 (11)
雪    币: 27
活跃值: (154)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
师傅,这个软件有样本吗,想要学着复现一下
2023-4-24 16:20
0
雪    币: 1037
活跃值: (1780)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
牛逼
2023-4-24 16:53
0
雪    币: 1114
活跃值: (2094)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
4
为什么不Bindiff先来一梭子呢
2023-4-24 17:25
0
雪    币: 6197
活跃值: (4629)
能力值: ( LV9,RANK:185 )
在线值:
发帖
回帖
粉丝
5
DiamondH 为什么不Bindiff先来一梭子呢
以前没用过,待会儿试试,
2023-5-19 16:33
0
雪    币: 196
活跃值: (5886)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
6
为什么不用 fart
2024-2-4 09:27
0
雪    币: 3004
活跃值: (30866)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
感谢分享
2024-2-4 09:32
1
雪    币: 463
活跃值: (2696)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
8
感谢分享
2024-2-21 23:42
0
雪    币: 37
活跃值: (41)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
你还没破解软件呢
2024-2-27 16:54
0
雪    币: 6197
活跃值: (4629)
能力值: ( LV9,RANK:185 )
在线值:
发帖
回帖
粉丝
10
soco峰 你还没破解软件呢
脱壳后vip破解就很简单了,
改一下vip字段的值就可以解决大部分了,
然后还有个课文内容详情,是webview加载的网页,只需要注入一行js把非vip的蒙层删了就行了。
2024-2-28 09:02
0
雪    币: 6197
活跃值: (4629)
能力值: ( LV9,RANK:185 )
在线值:
发帖
回帖
粉丝
11
看雪高研 为什么不用 fart
就是玩。
2024-2-28 09:03
0
雪    币: 85
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
12

1.34.0版本用了360加固了

最后于 2024-11-7 14:58 被mb_egmgknxr编辑 ,原因:
2024-11-7 14:08
0
游客
登录 | 注册 方可回帖
返回
//