传奇刘星
管理员
管理员
  • 最后登录2023-12-19
  • 发帖数588
  • 社区居民
  • 忠实会员
阅读:11340回复:1

[原创]征服北大青鸟云题库登录验证

楼主#
更多 发布于:2016-08-25 19:18
首先呢,为了写一个离线版的刷题工具,可是得先采集云题库的试题,
所以,采集试题之前得登录云题库,经过研究,发现云题库的登录也就那么样。


直接附上云题库的登录过程


http://exam.bdqn.cn/login
访问登录页面时,服务器会返回一个Cookies,其中包含两个字段JSESSIONID(这个是session的id)、route(这个不知道是干嘛的),
同时,服务器会将页面返回回来,其中包含验证码的超链接


http://exam.bdqn.cn/Kaptcha?
这是验证码的超链接,每次单击验证码,问号后面的数字都会改变,抓包分析数字是由本地生成的,所以,基本确定是js生成的,故下断点调试,无奈发现用的jQuery无法跟踪到function定义处,此时,扒了一下目录下面的文件夹发现有一个login.js文件,打开后看到了亮点:“点击验证码图片”,哈哈,并且看到了关键地方:“$(this).attr('src','Kaptcha?' + Math.floor(Math.random() * 100));”,看到这里,大家都知道问号后面的数字是怎么来的了吧


但是需要注意的是,获取验证码的时候必须要把服务器返回的Cookie带上,否则登录的时候session的id不一致,就会提示验证码错误。


继续抓包


http://exam.bdqn.cn/login
这是登录的提交地址,和访问的网址一样
那么,提交的方式也能猜到是post了吧,然后接下来就是提交的数据有哪些呢?
userName=
后面紧跟你的账户名,切记需要url编码哈
userPassword=
不用说,你的密码,需要注意的是,密码是采用md5加密的,所以拼接的时候先加密你的密码
verifyCode=
哈哈,验证码呗
submit=
这个是提交按钮的value,默认为%E7%99%BB++%E5%BD%95




好了就是这样,参数别忘了用&符号连接

最新喜欢:

doubleyongdouble...
https://blog.feiyuit.cn
doubleyong
管理员
管理员
  • 最后登录2024-04-18
  • 发帖数1167
  • 最爱沙发
  • 喜欢达人
  • 原创写手
  • 社区居民
  • 忠实会员
沙发#
发布于:2016-08-26 10:03
哈哈,厉害哦,请问下试题怎么采集呢,每次登录去采集的话,那也就没有离线的好处了。 还是模拟登录一次线采集多套试题到本地?
以及,如果采集试题呢, 哈哈,还请在分享点哦。
知识需要管理,知识需要分享
游客


返回顶部

公众号

公众号