BET365网站websocket解密分析
**
前不久和朋友聊到了这个网站,就手痒试了试,但是js解密有点不在行,所以只能去各种博客,github中寻找案例,然后自己在琢磨琢磨。
**
本文仅用于交流学习
了解BET365网站的童鞋应该都知道它的更新频率是超快的, 这跟他使用的websocket数据传输方式分不开
来,开始工作,
https://blog.csdn.net/LICAOPING/article/details/107623612
这个博主的思路流程都是很清晰的, 但是我根据他的思路走,老是卡在第一个token中,第二个token加密倒是没什么难度,搞得我都想放弃了,最后只能另辟蹊径了。
总结来说就是:
websocket请求有两个:
思路解析:
我在网页上复制了第二个websocket请求返回的token进行了二次加密,发现和发送出去的token一摸一样,然后我就有了一个想法,token第一次加密我没有破解,但是第二次我破解了啊,我可不可以在网页上复制一个token,然后使用token链接两个websocket请求, 当第二个websocket请求返回token时,我对它进行二次加密然后发送出。不就能保持长链接了
然后我进行了测试果然可以
大概跑了半个多小时我就停了,中间发送了几次token,这个思路完全没问题。接下来的数据解密就没有做了, 需要的可以自己延伸一下。
二次加密代码:
# t = token
def decryptToken(self, t):
n = ""
i = ""
o = len(t)
r = 0
s = 0
MAP_LEN = 64
charMap = [["A", "d"], ["B", "e"], ["C", "f"], ["D", "g"], ["E", "h"], ["F",