某河市服务管理办公室,Js逆向:★

2021-11-10  本文已影响0人  八月欢喜

前言

  1. 可以关注我哟,一起学习,主页有更多练习例子
  2. 如果哪个练习我没有写清楚,可以留言我会补充
  3. 如果有加密的网站可以留言发给我,一起学习共享学习路程
    4.如侵权,联系我,删

网址信息

  1. 网址:aHR0cDovL3p3Zncuc2FuLWhlLmdvdi5jbi9pY2l0eS9pY2l0eS9ndWVzdGJvb2svaW50ZXJhY3Q=
  2. 加密端口:aHR0cDovL3p3Zncuc2FuLWhlLmdvdi5jbi9pY2l0eS9hcGktdjIvYXBwLmljaXR5Lmd1ZXN0Ym9vay5Xcml0ZUNtZC9nZXRMaXN0P3M9YzI4Nzg2MTYzNjUxNDUxODExOSZ0PTE5MzNfYzUxODY2XzE2MzY1MTQ1MzAwMDA=
  3. 逆向参数:
s: c287861636514518119
t: 1933_c51866_1636514530000

逆向过程

  1. 打开F12发现有无限debugger,一步过


    image.png

    输入false,跳过debugger

  2. 寻找加密位置


    image.png

    从栈里倒退随便打断点


    image.png
    从我们打断点的地方发现上方已经生成了s,那么往上一直找,一直到没有显示参数值的地方
    image.png

哟,这不是赋值的地方吗?


image.png

我们看一下怎么生成

image.png

不就这个方法吗?拿来吧你

var sig = "";
var chars = "0123456789abcdef";

var curTime = parseInt(Math.random() * (9999 - 1000 + 1) + 1000) + "" + Date.parse(new Date());
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 t = timestamp;//LEx.azdg.encrypt(timestamp,key);
t = t.replace(/\+/g, "_");
console.log(sig)
console.log(t)

结论:


image.png

不难,新手练习玩

上一篇下一篇

猜你喜欢

热点阅读