每日精选文章
i春秋社区
mn_forum mn_portal
版块列表
BBS
mn_forum mn_forum
热门话题/问答
交流、互动、问答集散地!
mn_forum mn_Nb6d4
推荐文章专辑
Collection
mn_forum mn_fcollection
广播大厅
Follow
mn_forum mn_home
i春秋学院
mn_forum mn_N0df4
快捷导航
用户
登录
注册
搜索
搜索
本版
文章
帖子
用户
开启辅助访问
切换到窄版
每日签到
任务
广播
帖子
收藏
道具
好友
勋章
淘帖
动态
日志
相册
分享
留言板
记录
导读
排行榜
群组
设置
我的收藏
退出
腾讯QQ
微信登录
版块列表
›
(现金奖励)投稿请加QQ780876774
›
白帽子技术/思路
›
查看内容
发帖
查看:
2734
|
回复:
2
[Python黑客]
翻译小工具制作,Python简单破解有道JS加密!
情歌
该用户从未签到
i春秋-脚本小子
i春秋-脚本小子, 积分 66, 距离下一级还需 134 积分
i春秋-脚本小子, 积分 66, 距离下一级还需 134 积分
5
主题
11
帖子
79
魔法币
收听
0
粉丝
0
注册时间
2018-2-2
收听TA
发消息
情歌
当前离线
i春秋-脚本小子, 积分 66, 距离下一级还需 134 积分
主题
5
帖子
11
魔法币
79
收听
0
听众
0
收听TA
发消息
情歌
i春秋-脚本小子
|
显示全部楼层
|
阅读模式
楼主
电梯直达
发表于 2019-10-11 14:08:38
2
2734
写这篇文章之前,我记得我以前好像公布一次。百度翻译的接口把版本号修改可以得到老版本,而老版本是没JS加密的,有道的呢也是一样的。
不过今天的教程不会这么low,咱们今天就老老实实把有道翻译的JS破解掉,毕竟有道的JS加密是罕见的简单。
开始教程:
第一步抓包:
直接就很容易的抓到了,哦 不对, 应该是比较有经验的人可以直接就抓到。
返回值内的tgt为我们所对应的翻译内容。
仔细分析这个包:
post请求,然后经过反复测试后发现,其中的salt,sign,ts是会发生变化的。
不难发现ts仅仅比salt少了一位,前面的都是一样的。而如果你有经验,看到ts就会知道这个是现行时间。
当然这个也只是猜测,不能当真。所以我们可以去寻找一下salt的来源,它到底是由什么方法生成的,然后我们用python代码去模拟。
随便一下就找到了,当然这个也是要经验的。 我们可以看到的信息量很足。比如i = r +随机数,而r=ts,i=salt。不就验证了我们的猜想——不难发现ts仅仅比salt少了一位,前面的都是一样的。
而r = (new Date).getTime(),这不就是取现行时间吗?即使你不懂JS语法,你也能猜到吧? 那么OK ,salt与ts我们都已经得到。
而sign的值我们如何得到呢?
就是个md5摘要,里面的只有两个变量,e、i,而i我们已经在前面得到了。那么如何得到e,甚至我们前面t = n.md5(navigator.appVersion),bv=t,很明显 即使bv也是加密的,只是我们的navigator.appVersion是一个定值。
那么怎么得到他们的值呢? debug即可!
OK,到此为止所有问题都已经解决,e为我们所查询的字符串,navigator.appVersion为我们的用户代理。(模拟请求时,记得添加请求报文。)
0
使用道具
举报
回复
提升卡
变色卡
千斤顶
照妖镜
手机用户asnHJg
当前离线
i春秋-脚本小子, 积分 77, 距离下一级还需 123 积分
主题
1
帖子
31
魔法币
3
收听
1
听众
0
收听TA
发消息
手机用户asnHJg
i春秋-脚本小子
|
显示全部楼层
沙发
发表于 2019-10-11 23:16:19
有用,收藏了
使用道具
举报
回复
照妖镜
手机用户xbr4Re
当前离线
i春秋-呆萌菜鸟, 积分 5, 距离下一级还需 45 积分
主题
0
帖子
2
魔法币
0
收听
0
听众
0
收听TA
发消息
手机用户xbr4Re
i春秋-呆萌菜鸟
|
显示全部楼层
板凳
发表于 2019-10-14 16:36:49
多学习点,谢谢
使用道具
举报
回复
照妖镜
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
发表回复
关闭