中南民族VPN登录框

探索

  • 首先探测 https://webvpn.scuec.edu.cn/users/sign_in
    burp 抓包
    对参数 url 解码
NAME VALUE
authenticity_token YfVXnZvUQQ5tSly8sK0TlxMdC0AMPaJeytcoJyq6CPEgnqbVU9DRXPlCxCn5IK9/U95t0kP9YCGCRVDGvofkIw==
user[login] 202021091205
user[password] 123456
user[dymatice_code] unknown
user[otp_with_capcha] false
_rucaptcha bysn
commit 登录 + Login

爆破


  • password
  1. 通过分析 js 代码
1
$("#saltPassword").val(encryptPassword($(LOGIN_PASSWORD_ID).val(),$("#pwdEncryptSalt").val()));

将 pwdEncryptSalt(id) 作为 encryptPassword 函数的参数还有输入的 LOGIN_PASSWORD_ID,一起带入加密
2. 获取 pwdEncryptSalt(id)
分析前端 html 代码可知,pwdEncryptSalt 的 value 每次都不同,而且是从后端获取的,那么我们可以利用 python 发请求,正则表达式得到其值
3. encryptPassword 函数
前端可以直接获取加密的 js 包
直接写个 button (测试) 得到加密后的 saltPassword,貌似是 AES 加密
4. 对 password 和 excution 进行 url 编码后再放进去
放包看结果!
5. 貌似失败了捏
原因分析:
(1)操作超时?(脚本可以解决)
显然不是,我抓包等了 15 分钟,放包依然成功登录
(2)还有其他限制?

1
<input type="hidden" id="pwdEncryptSalt" value="qZb7cLORB1US5u0s" /><input type="hidden" id="execution" name="execution" value="65f5498c-3c66-4390-90f4-9d4084dc2f12_ZXlKaGJHY2lPaUpJVXpVeE1pSjkuMWlYR3RubWZKU1NoK0xUTGtnaC90aDAx……“/>

把 python 请求的这部分替换到前端直接登录,发现登录认证失败,问题应该就是出在这里。

访问量 访客