本文的文字和图片来自互联网,仅供学习和交流。它们没有任何商业用途。版权属于原作者。如果您有任何问题,请及时与我们联系。
附言:如果你需要Python学习材料,你可以点击下面的链接自己获取。
这篇文章很难,因为它涉及到JS解密。Python基础薄弱的学生可以看看这些想法。
开始
进入网站后,我们可以看到如下界面。我们今天要做的是模拟着陆
让我们先抓住着陆袋,看看:
在登录的同时,总共发送了两个帖子请求,一个是在登录之前发送的。其中,要携带的参数是用户名。还有一个捐助。猜测它是否是一个时间戳并不困难,但是仅仅猜测是不够的,应该提供实际的证据。
返回值:
成功:真
publickey_mod: XXX
publickey_exp: '010001 '
timestamp: '540205950000 '
token _ GID : ' 1c 51 CB 6b 00061 f 39 '
我们不知道这些值用于什么,然后我们可以继续查看着陆包:
显然,许多问题一眼就能发现。cookie必须与第一个请求一致,然后第一个请求的返回值时间戳实际上是为第二次登录传递参数。rsatimestamp=timestamp,然后有类似于Timestamp donotcache的东西。最重要的是密码是加密的!
让我们首先解决donotcache是如何生成的:
没错,新日期()。getTime()是JS获取时间戳的语法,我们可以在Python编程中使用时间模块来模拟时间戳。
最重要的是如何加密密码:
这很有趣
var password=['password']。价值;
密码=(/[^x00-x7f]/g " ");//删除非标准ASCII字符
var encryptedPassword密码=(密码,公钥);
密码已经更改了两次,第一次是替换字符串,第二次是RSA加密,这种加密需要公钥,并且
var PubKey=(results . PubKey _ mod,results . PubKey _ exp);
因此,我们还需要知道publickey_mod和publickey_exp。这时,你应该再考虑一下。我们的第一个请求在返回值中是否只有一个Mod和EXP?
2020年最新的Python教程:如果你想学习Python或者正在学习Python,有很多Python教程吗,但是它们是最新的吗?
也许你学到了一些人们两年前可能学到的东西。在这个简短的系列中,分享2020年最新的Python教程。
这些教程已经为每个人打包准备好了。我希望他们会对你学习有所帮助!
如何获取,私人信件小编辑“信息”,你可以免费获得!