首页
社区
课程
招聘
[原创]wss协议分析(SSL加密的WebSocket)
发表于: 2018-4-24 20:31 26780

[原创]wss协议分析(SSL加密的WebSocket)

2018-4-24 20:31
26780

前几天抓包分析数据的时候抓包抓不到,最后发现是wss,之前没有见过,特此记录。

首先打开 Charles android手机设好代理打开apk
能直接抓到包

因为我只想抓点击按钮以后的数据:

按照国际惯例清除之前抓到的,重新抓一次,可是按了搜索按钮
界面的数据是刷新了,可是Charles里面却没有数据。怎么回事呢,不是http,难道是 sokect。那直接看代码吧。

先通过神器ddms搜索这个按钮的id

然后可以看到 搜索按钮的 id为 layout_home_search_main
继续打开jadx
图片描述

搜索到这个view RelativeLayout 然后找到他的点击事件看看怎么实现的

显而易见代码肯定是这里
图片描述
最后跟到这里,看函数名和参数确定了就是sokect实现的。继续跟吧
图片描述
一直跟到了这里,瞬间豁然开朗
图片描述

看到了 open。connect,send ,close
这不就是 协议通用的几个函数吗!然后我反编译apk加入了log
看到 send函数就是传入的值。而onMessage里面就是返回的值。
你以为这就完了吗,没有!找到地方了。我还得模拟协议啊。ip是多少啊。继续看构造函数
图片描述
构造函数果然有uri,继续加入log重新编译。打印结果
看到了
图片描述
看到了他不是http协议。而是wss。百度一下
图片描述
大概懂了。就是连接一次可以永久互发消息
图片描述
然后找了wesocket在线测试。完美连接。可是我发送的消息他不能正确返回。
重新跑了一下我加入日志的apk,看到他在发送请求的之前还发送一条认证的串。
而认证的串是固定的。到此分析完毕。模拟java代码

}


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

最后于 2018-4-24 20:35 被skyun编辑 ,原因:
收藏
免费 1
支持
分享
最新回复 (18)
雪    币: 392
活跃值: (205)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
2
很好的学习资料
2018-4-24 23:30
0
雪    币: 729
活跃值: (1306)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
3
KingZd 很好的学习资料
您的支持是我发帖的最大动力,谢谢
2018-4-24 23:54
0
雪    币: 2
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
思路严谨,逻辑清楚,膜拜大佬
2018-4-24 23:57
0
雪    币: 729
活跃值: (1306)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
5
wx_张文利 思路严谨,逻辑清楚,膜拜大佬
谢谢
2018-4-25 00:15
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
我怎么没看到认证的串是什么呀?
2018-4-25 09:58
0
雪    币: 729
活跃值: (1306)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
7
大约在冬季 我怎么没看到认证的串是什么呀?
认证的串其实没有什么特别的,没有加密,每次都是固定。照模照样发过去就行了
2018-4-25 10:22
0
雪    币: 4522
活跃值: (2146)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
8
看到包名了
2018-4-25 10:49
0
雪    币: 2443
活跃值: (464)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
好文,学习~
2018-4-25 10:56
0
雪    币: 729
活跃值: (1306)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
10
cqzhou 看到包名了
好仔细。好可怕!
2018-4-25 11:20
0
雪    币: 729
活跃值: (1306)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
11
飘云 好文,学习~
谢谢
2018-4-25 11:20
0
雪    币: 75
活跃值: (587)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
感谢
2018-4-25 11:21
0
雪    币: 224
活跃值: (399)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
厉害厉害,学到了
2018-4-25 18:02
0
雪    币: 6818
活跃值: (153)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
2018-4-25 20:21
0
雪    币: 144
活跃值: (38)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
2018-4-25 21:15
0
雪    币: 37
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
2018-4-25 21:30
0
雪    币: 35
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
非常有用得思路,感谢分享 
2018-4-28 22:12
0
雪    币: 22
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
思路清晰
2018-5-27 15:55
0
雪    币: 35
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
请问您的这一步在ddms里  是查看哪里查看到的?  我搞别的APP学习,没有找到
然后可以看到  搜索按钮的  id为  layout_home_search_main
继续打开jadx
2018-6-9 00:26
0
游客
登录 | 注册 方可回帖
返回
//