前端wireshark抓包协议解密
废话不多说,先看看结果
该JSON文件是通过解密后的 HTTP 返回response结果再解密打开的新页面 有兴趣的小伙伴了解下之前的文章 Sha384解密[2]
-
打开Wireshark 将TCP 转码为RTP ,因为该目标地址有视频文件,方便转换 -
登录目标网址,开启F12 并取消任何单步 这个是我准备好的目标网站,该前端项目 框架不明确,但看起来JavaScript与Canvas互动做的相当不错,值得学习的地方。并且 加密\节流也做的相当不错! 前端很Nice 重要的事情说三遍!仅供学习研究!仅供学习研究!仅供学习研究! (我发出的是思路,和实验数据结果,并非教程!) 在首页页面 Table载入时,会返回一个 FLV格式文件,我们直接Open Tab 他就会自动下载,一直到整个事件前端完成后 -
玩家就理解为 (换桌结束时) -
工程师理解为(逻辑交换时)
将没有下载完毕的文件拖入UE中,查看文件头以十六进制打开,前缀为FLV,和一串在线传输解密不可逆的特征代码,判断为:
- 该视频是提前录制的,且他人通过Copy方式拿走只能播放一次,或无法播放
- 该视频是现场录制的,且他人无法通过非正确在线的Token方式播放或多次
在之前已经说过了这个转换为RTP格式解码,理应拿到一部分转换结果的 捕获到的数据,转换格式后,我们进行一次分析 将得到捕获TCP转RTP再筛选JPEG G722 H253 格式分析 选反向,在保存出到本地! 在将保存出的文件 拖入Hex中查看,只要最后的返回一组数据即可 得到的十六进制为 22.53.45.54.22.2C-22.4F 4B=22534554222C224F4B,将其以sha384进行加密 结果**=b75369b14d21bdb5a5d9ac718b2f95220e04abba5d629e2afcd25f912830f524c97cff8c25455f35d418a1c4ccf3ce22** 取后32位在进行截获,中位16位,从中心位左右取值 32位=c97cff8c25455f35d418a1c4ccf3ce22 取中心值=55f35d418a1c 该包中的是接口返回的加密其中一小段,我们现在需要找的是接口,将其密文的中的返回方式改写为set ok,然后就能正常以缓存中的token预览返回结果,不过我们在操作中,只有2秒的延时操作,对网络、手速、眼睛都要求较快,否则就会超时打不开的。 这次我们将捕获的最后2个文件进行反向捕获导出,拖入Hex中直接查看 (重复步骤就不做了) 这种情况同样的 从最后一行取,按照前面的方法进行部位取出即可 此时我们通过 wireshark和浏览器同时捕获一条数据 接口的返回为加密数据,其加密方式我们不管,只管在解码中做的步骤是对的即可! 可以看到 开奖结果为闲9 庄4,浏览器返回为空 Response返回是空的 我们之前说的 取最后一行 0A是尾缀不管的,那满十六进制往前进1 取两位 就是 2E 39 34到 4B 22 0A ,以加位的32位在取中心值16位就是 331.94 set,前面的331是什么不知道。但我就知道 跟结果是一致的 如果觉得自己手速跟不上,可以先录屏,给Chorme开启缓存保存,抓包的数据也保存,用本地数据进行分析练习。 改游戏前端的加密方式不复杂,只是利用转码技术实现的加密
|