推荐
关注
TOP
Message

JS逆向实战1——入门难度 某省在线审批网站params 随机生成

声明

本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除!

网站

aHR0cDovL3R6eG0uanh6d2Z3dy5nb3YuY24vaWNpdHkvaXByby9vcGVuL3B1YmxpY2l0eQ==

参数分析

我们首先通过抓包

发现这个就是我们所需要的数据
然后我们通过fidder 发起请求

结果:

通过我们反复测试 发现这个params的参数是每次请求中都会变化的

断点查找

我们通过 这个t参数 可以看到 和时间戳有些相近,我们可以投机取巧一下
直接搜索
Date.parse(new date())

二次分析

通过几次分析可知

上述代码就是我们所需参数
然后我们魔改一下

js代码如下:

function get_t() {

    var chars = "0123456789abcdef";
    var curTime = parseInt(Math.random() * (9999 - 1000 + 1) + 1000) + "" + Date.parse(new Date());
    var sig = chars.charAt(parseInt(Math.random() * (15 - 15 + 1) + 10)) + chars.charAt(curTime.length) + "" + curTime;

    var key = "";
    var keyIndex = -1;
    for (var i = 0; i < 6; i++) {
        var c = sig.charAt(keyIndex + 1);
        key += c;
        keyIndex = chars.indexOf(c);
        if (keyIndex < 0 || keyIndex >= sig.length) {
            keyIndex = i;
        }
    }

    var timestamp = parseInt(Math.random() * (9999 - 1000 + 1) + 1000) + "_" + key + "_" + Date.parse(new Date());
    var tkey = "";
    var tkeyIndex = -1;
    for (var i = 0; i < 6; i++) {
        var c = timestamp.charAt(tkeyIndex + 1);
        tkey += c;
        tkeyIndex = chars.indexOf(c);
        if (tkeyIndex < 0 || tkeyIndex >= timestamp.length) {
            tkeyIndex = i;
        }
    }
    return {sig, timestamp, tkey}
}

python代码很简单 这里就不展示了。

posted @ 2022-08-28 22:50  始識  阅读(1862)  评论(0编辑  收藏  举报