项目地址:aHR0cDovL21pbmlsb2dpbi5zZ3R5LmNvbS8=
观前提示:
本文章仅供学习交流,切勿用于非法通途,如有侵犯贵司请及时联系删除
加密点定位
通过登录发包
可以看到sign是神秘32位加密 大家有经验的应该就会猜是md5
再通过全局搜索sign 定位
sign的加密方法就找到了
文章结束
阿 就这吗 就这啊?
都说了是worker分析了
了解过worker的都知道 都要用到俩个关键字
1.onmessage
2.postMessage
至于是干啥的 我就不解释了 自己百度吧 太长了
就依着 这俩个关键字 我们全局搜一下
点进去看看
可以看到绑定给了k 打上断点刷新
tips:
有人可能会打上断点后没反应断不下来
这时候翻到头部可以看到
我们只需要把false改为true即可
至于怎么改 用res或者fd都是ok的
打上断后进到k里面能看到一个绑定和一个发送 可以都打上断
可以看到此时的data还是明文
单步继续往下看
进来之后步跟跟到这个位置data还是明文 那我们就进入r[a.data.type][d][0]
看看做了什么
进来后很明显了 bind的位置就在这里了
data还是明文 在上方可以看到一个call传入了data 那d就是我们要的函数了
继续点进去d
d进来后能看到啥都有了
sign的值 sh的值 sw的值都告诉你了 加密点到这里就找到了
分析
通过代码就能看出 循环拼接账号和加密后的密码最后在加上盐
逻辑简化一下
function getsign(user,pass){ var k=user+t(pass), o={"domain":"static.365wan.com"}; return t(k+o.domain); }
进到t函数整体扣下来用就行了
记一个小坑:
t函数里面有一个特殊字符 这个东西在某些地方是显示不了的 例如易语言 所以我们有俩种解决方式
- 手动给他url编码后再解码试用
- 直接计算结果
俩种方法都是可以的 大家自行选择
运行
完美 俩边结果一致
当然 你们也是可以自行实现worker的 萝卜青菜 各有所爱啦
没想到写个公众号都能被催更 搞得我跟上班一样 小编最近要考试 尽量挤出时间写啦
[完]