赞
踩
首先查看主页,可以看到index.jhtml页面有详情页链接,如下图所示:
尝试复制后新建窗口打开,发现访问失败:
然后尝试直接点击主页链接,发现正常访问,详情页url为:
到这里可以发现详情页链接进行了加密。
通过DOM断点,直接定位到函数事件当中:
进入函数中,可以直接观察到加密函数,使用的是AES加密,在bbbb处下断点,观察是否与详情页链接一致:
详情页链接:
仔细观察这个AES函数,可以发现实质就是将index.jhtml中的数字,也可以说是每个页面的id进行AES加密:
直接编写代码:
JavaScript 加密代码:
var CryptoJS = require('crypto-js')
function get_pwd(pwd) {
var srcs = CryptoJS.enc.Utf8.parse(pwd)
var k = CryptoJS.enc.Utf8.parse('qnbyzzwmdgghmcnm');
var en = CryptoJS.AES.encrypt(srcs, k, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7
});
var ddd = en.toString()
ddd = ddd.replace(/\//g, "^");
ddd = ddd.substring(0, ddd.length - 2);
return ddd
}
Python 代码(缩写):
import execjs
with open('./js文件/天津资源.js','r',encoding='utf-8') as f:
js=f.read()
code=execjs.compile(js,cwd=r"C:\Users\xixian\node_modules\crypto-js").call('get_pwd','990444')
print(code)
返回结果为:
特别注意:^符号浏览器会进行url编码,转换为%5E
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。