首页
社区
课程
招聘
[原创]APICloud解密本地资源到逆向APP算法到通用资源解密
发表于: 2019-2-16 13:22 22256

[原创]APICloud解密本地资源到逆向APP算法到通用资源解密

2019-2-16 13:22
22256

前言:

昨天下午有群友问这个用HTML写的APP怎么逆向

 

当时就认出来了这是APICloud(https://www.apicloud.com) 家的产品,网页转APP,网页资源文件加密储存在本地 看下图:



下面开始分析:

1.      既然是网页实现就少不用WebView X5之类的框架来加载呈现 先看看界面的结构


是一个WebView控件,

顺手就打开远程调试:


很遗憾,在WebView Debug = true的情况下没有接入端口,只能从源代码分析了.

2.      APP并没有壳,直接JEB打开


结构也很简单,厂家的SDK占了大部分内容(因为是网页开发APP,要逻辑都在JS)

先思考APP对资源的加载流程

可能为:

1)WEBVIEW - > 加载页面 -> 拦截/查找本地文件 有 -> 解密/写回数据

2)WEBVIEW - > 加载页面 -> 拦截/查找本地文件 无 -> 请求网络文件

这里有个共同的点都是需要 拦截,而 WebView 只有一个实现这个功能的接口: WebViewClient.shouldInterceptRequest

下面是摘抄博客对API的介绍:


2.1   在JEB里面搜索这个方法:

下图:


只有这个地方有实现.继续往下看逻辑

a.d -> z.a -> 



获取URL的文件后缀.

a.e -> z.d ->


 

判断是不是需要管理的URL

This.b

this.a

分别处理俩种情况的文件:

 

到了这里 SDK 接管资源的痕迹就很明显了,再往下我相信可以找到怎么加载&解密文件 但是我的目的只是dump出原来的明文资源就好,到这里就可以停止了

2.2   关注 new i(v1, new c(v2, v0)); 这行

点进去看下:


是WebResourceResponse(String mimeType, String encoding,InputStream data) 的实现

再往下就是WebView内部了,SDK也没法做什么改变了,相信InputStream就是标准的数据了,从 new c(v2, v0) 入手用Xposed Hook出数据看一下.


运行APP,查看Logcat


成功….

原来:


DUMP:


3.      解密APP通讯数据

抓包看下:


双向加密:

我们从DUMP出来的资源中搜索 “/api.php”


顺路发现了可能用来加解密的可疑算法.. 来试试

解请求:


解返回:


成功:

不得不说通讯用的加密算法就好像是路边捡回来的.

4.      制作通用工具

从前面的分析可以看出,SDK是混淆过的


上面的HOOK只能针对某一个APP,换个APP又得重新分析,如果APP加了壳那还得脱壳才能分析

下面给出通用的DUMP且无视加壳的代码(我这只是其中一种,还有很多种写法)


加壳&多DEX注意处理attach



草樣年華

2019/02/16



[课程]Android-CTF解题方法汇总!

最后于 2019-3-3 14:21 被jiaqq编辑 ,原因:
上传的附件:
收藏
免费 11
支持
分享
打赏 + 2.00雪花
打赏次数 1 雪花 + 2.00
 
赞赏  junkboy   +2.00 2019/02/16 感谢分享~
最新回复 (32)
雪    币: 11716
活跃值: (133)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
支持
2019-2-16 14:37
0
雪    币: 21449
活跃值: (62288)
能力值: (RANK:125 )
在线值:
发帖
回帖
粉丝
3
感谢分享~
2019-2-16 14:45
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
感谢~~~~~~~~~~
2019-2-16 16:45
0
雪    币: 403
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
2019-2-18 11:00
0
雪    币: 6573
活跃值: (3858)
能力值: (RANK:200 )
在线值:
发帖
回帖
粉丝
6
2019-2-18 12:16
0
雪    币: 370
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
感谢大佬分享!
2019-2-18 15:57
0
雪    币: 36
活跃值: (1021)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
8
mark,感谢分享
2019-2-18 17:51
0
雪    币: 240
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
9
学习下,感谢分享!
2019-3-1 16:30
0
雪    币: 324
活跃值: (2639)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
最后于 2020-2-26 04:42 被红颜小学生编辑 ,原因:
2019-3-2 20:13
0
雪    币: 442
活跃值: (83)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
11
红颜小学生 我想请教一下这个pathMkdirs函数是怎么写的,我是新手
file.getParentFile.mkdirs();
file.createNewFile();
2019-3-2 21:27
0
雪    币: 112
活跃值: (760)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
谢谢  学习了
2019-3-2 22:39
0
雪    币: 3
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
13
uzmap dump这个app如何使用啊?
2019-5-29 08:52
0
雪    币: 3
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
14
我等小白觉得很厉害啊,但是看不懂。从乱码到明文的过程,一下子就到了,过程操作不是很明白。
2019-5-29 08:55
0
雪    币: 269
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
感谢大佬分享
2019-5-29 14:22
0
雪    币: 269
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
小白,问一下。hook包源码能发一份我吗?jackchen6@qq.com,谢谢大佬。
2019-5-29 14:50
0
雪    币: 237
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
问一下楼主 , js文件怎么解密的,用的什么工具,谢谢大佬 。
2019-6-4 14:27
0
雪    币: 29
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
18
有个项目可以跟你合作吗
2019-6-12 11:29
0
雪    币: 19
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
19
感谢大佬分享
2019-6-22 14:42
0
雪    币: 33
活跃值: (18)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
感谢大佬分享,非常感谢
2019-9-9 12:01
0
雪    币: 266
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
gqm
21
您好,可以找您定做一些东西吗?
2019-9-23 23:40
0
雪    币: 201
活跃值: (115)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
真是及时雨  百度了半天 终于找到正主了
2019-9-24 12:58
0
雪    币: 225
活跃值: (195)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
正需要,GOOD
2020-2-20 21:59
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
24
无用的教程,明明该讲的地方你却不讲。
这位大佬,明确告诉你,你讲的没卵用,详细研究了一下,对解密前端代码几乎没有任何帮助。
仅仅一个思路和方式有用。方式就是解密APIcloud的一个思路。
恰恰就是这个思路你没有说明任何有用的,对解密js css html无用。
谁解密功底深厚可以看看,其他人看了没有一点帮助。
2020-2-26 00:24
0
雪    币: 324
活跃值: (2639)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
mb_gywrowji 无用的教程,明明该讲的地方你却不讲。 这位大佬,明确告诉你,你讲的没卵用,详细研究了一下,对解密前端代码几乎没有任何帮助。 仅仅一个思路和方式有用。方式就是解密APIcloud的一个思路。 恰恰 ...
你真是个憨憨,他分享自己的心得,怎么就刺激到你了?网络乞丐也耍大爷脾气了?
2020-2-26 04:41
0
游客
登录 | 注册 方可回帖
返回
//