题八:迷踪步
JavaScript经过混淆处理,给对抗增加难度,适合在学习JavaScript混淆的人群
开局还是熟悉的无限debugger,直接不在此处停留
还是复制curl,进行爬虫代码获取发现是cookie中的's': '51b351b351b351b370b0d0d0d03051507010903050',,
还有headers中的'm': 'dedededededea0a6a3a3a3a2a79fa0a1a5a29fa1',
't': 'MTc0NDQzODAxMjYzMA==',
直接hook cookie中的 s
hook cookie代码
(function (){
'use strict';
var cookieTemp = '';
Object.defineProperty(document, 'cookie', {
set: function (val) {
if (val.indexOf('s') != -1) {
debugger;
}
console.log('Hook捕获到cookie设置->', val);
cookieTemp = val;
return val;
},
get: function () {
return cookieTemp;
},
});
})();
然后就是跟栈网上找
发现这里的document就是设置cookie的位置,再往下看,就会发现
const _0x1575b7 = sms;
var _0x1167c7 = new Date()[Wms]();
return u = '\x2e' + location[Tms][bms]('\x2e')[yms](-0x2)[rms]('\x2e'),
document[Yms] = _0x56df28['\x47\x51\x5a\x65\x44'](_0x56df28['\x49\x6c\x43\x47\x79'](_0x56df28['\x47\x51\x5a\x65\x44'](xms, _0x56df28['\x56\x51\x55\x70\x5a'](OOOoO, Sms + _0x1167c7)), Ras), u),
_0x416a83[Gas] = _0x416a83[Gas] || {},
_0x416a83[Gas][mas] = kas,
_0x416a83[Gas]['\x6d'] = _0x56df28['\x4b\x54\x52\x5a\x6c'](OOOoOo, _0x56df28[_0xe8dc6(0x2a4)](_0x56df28['\x47\x7a\x66\x41\x58'](_0x1575b7, _0x1167c7), _0x416a83[Has][gas]), _0x1575b7),
_0x416a83[Gas]['\x74'] = _0x56df28['\x56\x51\x55\x70\x5a'](btoa, _0x1167c7),
_0x416a83[Has] = x1[Qms](_0x416a83[Has]),
_0x416a83;
}),
下面的是headers中的m还有t的生成位置,解一下混淆
(function () {
let _0x2d8529 = ["eNpVks1uEzEQx18lWnFoBVU4t+qhCgmUr5YmiK9WaLKe7DrdtV17liZFSBy5Qc8ICXFH9AV4G0Jfg5lxBGL34t98ev7jt8XLNhXbReOr4lZxBHLe6QWgere/w5apelNoLDHVSgFiQqaghDH6yGQ0t0WqvWGM6px76xjm6utiw+dFrrjLx0bNizqOLDYmseVCnS0EPu/pedpVFUp90uChdOvNkMrauqoXop822PYMEtgmbXPcQNNm0bcMbzTp3FI9iGjQkYVG+uznodFVVDM+Uiy9K0HGPFA0MuOTfFuK3M3OlmwZasnDg/GEYazuhc8/G+6qt0YwGKXR07ViZkwQpfYzNVRIE9tKgwea0DdA0Gd8sb6JP7Xifa1IfqwXYANkzReETlQuFWEOCwZUOC42NzaZbvzVYVBDHHgdx6tx1LmSrHcbEKuuZVXSq9snN48LDjjLBY05whS8S7jvCGOJgXTJSd1eP8YK8nSV1O7U9/vD5fXnH9df3v/6+XV1+W119XH1/RN7TzUUAr8kFpmb9+fJy9tYZoXZLEVaDRt47upoa7IMYjzPGkGw/fXCt/LCRbE7Ob8rS0yi+CgruJ55TzS//2+osw4T/T/T4yxUo6s/zODjEEp5GRPl2idyoPu6p3eRdTE8z9vtkoQ+hPxUgLpUvPsD8Q4VhA=="];
let _0x56aef3;
let _0x462a23 = String.fromCharCode;
var _0x24a628 = typeof window === "object" && window || typeof self === "object" && self || exports;
(function (_0x4ff0b3) {
var _0x5f1ae7 = function (_0x22f68e) {
var _0x5748fb = {};
var _0x3459bb = 0x0;
for (var _0x51f078 = _0x22f68e.length; _0x3459bb < _0x51f078; _0x3459bb++) {
_0x5748fb[_0x22f68e.charAt(_0x3459bb)] = _0x3459bb;
}
return _0x5748fb;
}("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/");
var _0x52a85e = function (_0x5b370) {
var _0x532cdb;
var _0x365caf;
var _0x11d6c6;
var _0x5ae53d = _0x5b370.length;
_0x532cdb = _0x5ae53d % 0x4;
_0x365caf = (_0x5ae53d > 0x0 ? _0x5f1ae7[_0x5b370.charAt(0x0)] << 0x12 : 0x0) | (_0x5ae53d > 0x1 ? _0x5f1ae7[_0x5b370.charAt(0x1)] << 0xc : 0x0) | (_0x5ae53d > 0x2 ? _0x5f1ae7[_0x5b370.charAt(0x2)] << 0x6 : 0x0) | (_0x5ae53d > 0x3 ? _0x5f1ae7[_0x5b370.charAt(0x3)] : 0x0);
_0x11d6c6 = [_0x462a23(_0x365caf >>> 0x10), _0x462a23(_0x365caf >>> 0x8 & 0xff), _0x462a23(_0x365caf & 0xff)];
_0x11d6c6.length -= [0x0, 0x0, 0x2, 0x1][_0x532cdb];
return _0x11d6c6.join('');
};
_0x4ff0b3.atob = function (_0x2fd800) {
return String(_0x2fd800).replace(/[^A-Za-z0-9\+\/]/g, '').replace(/\S{1,4}/g, _0x52a85e);
};
})(_0x24a628);
(function (_0x56dbed) {
var _0xe2c14f;
var _0x3e12a5;
var _0x521af4;
var _0x3b9cad;
var _0x2e9cd9;
var _0x22cf85;
var _0x33b47d;
function _0x534fe9(_0x14287a) {
throw _0x14287a;
}
function _0x1dbc99(_0x62c343, _0x1456f7) {
var _0x1e0e90;
var _0x493110;
_0x1e0e90 = undefined;
this.input = _0x62c343;
this.c = 0x0;
if (_0x1456f7 || !(_0x1456f7 = {})) {
if (_0x1456f7.index) {
this.c = _0x1456f7.index;
}
if (_0x1456f7.verify) {
this.N = _0x1456f7.verify;
}
}
_0x493110 = _0x62c343[this.c++];
_0x1e0e90 = _0x62c343[this.c++];
switch (_0x493110 & 0xf) {
case 0x8:
this.method = 0x8;
}
if (0x0 !== ((_0x493110 << 0x8) + _0x1e0e90) % 0x1f) {
_0x534fe9(Error("err:" + ((_0x493110 << 0x8) + _0x1e0e90) % 0x1f));
}
if (_0x1e0e90 & 0x20) {
_0x534fe9(Error("not"));
}
this.B = new _0x98c448(_0x62c343, {
"index": this.c,
"bufferSize": _0x1456f7.bufferSize,
"bufferType": _0x1456f7.bufferType,
"resize": _0x1456f7.resize
});
}
_0x1dbc99.prototype.p = function () {
var _0x4bf695;
var _0x4101e7;
var _0xa8b828 = this.input;
_0x4bf695 = undefined;
_0x4101e7 = undefined;
_0x4bf695 = this.B.p();
this.c = this.B.c;
if (this.N) {
_0x4101e7 = (_0xa8b828[this.c++] << 0x18 | _0xa8b828[this.c++] << 0x10 | _0xa8b828[this.c++] << 0x8 | _0xa8b828[this.c++]) >>> 0x0;
if (_0x4101e7 !== jb(_0x4bf695)) {
_0x534fe9(Error("i32c"));
}
}
return _0x4bf695;
};
function _0x98c448(_0x137beb, _0x54486c) {
this.l = [];
this.m = 0x8000;
this.e = this.g = this.c = this.q = 0x0;
this.input = _0x2537f9 ? new Uint8Array(_0x137beb) : _0x137beb;
this.s = false;
this.n = 0x1;
this.C = false;
if (_0x54486c || !(_0x54486c = {})) {
if (_0x54486c.index) {
this.c = _0x54486c.index;
}
if (_0x54486c.bufferSize) {
this.m = _0x54486c.bufferSize;
}
if (_0x54486c.bufferType) {
this.n = _0x54486c.bufferType;
}
if (_0x54486c.resize) {
this.C = _0x54486c.resize;
}
}
switch (this.n) {
case 0x0:
this.b = 0x8000;
this.a = new (_0x2537f9 ? Uint8Array : Array)(0x8000 + this.m + 0x102);
break;
case 0x1:
this.b = 0x0;
this.a = new (_0x2537f9 ? Uint8Array : Array)(this.m);
this.f = this.K;
this.t = this.I;
this.o = this.J;
break;
default:
_0x534fe9(Error("imd"));
}
}
_0x98c448.prototype.K = function (_0x4e3727) {
var _0x145c22;
var _0x2ca30c;
var _0x1eeae7;
var _0x5aa43c;
var _0x121ec3;
var _0x112865;
var _0xe6f7cd;
_0x2ca30c = this.input.length / this.c + 0x1 | 0x0;
_0x1eeae7 = undefined;
_0x145c22 = undefined;
_0x5aa43c = undefined;
_0x121ec3 = this.input;
_0x112865 = this.a;
if (_0x4e3727) {
if ("number" === typeof _0x4e3727.v) {
_0x2ca30c = _0x4e3727.v;
}
if ("number" === typeof _0x4e3727.G) {
_0x2ca30c += _0x4e3727.G;
}
}
if (0x2 > _0x2ca30c) {
_0x1eeae7 = (_0x121ec3.length - this.c) / this.u[0x2];
_0x5aa43c = 0x102 * (_0x1eeae7 / 0x2) | 0x0;
_0x145c22 = _0x5aa43c < _0x112865.length ? _0x112865.length + _0x5aa43c : _0x112865.length << 0x1;
} else {
_0x145c22 = _0x112865.length * _0x2ca30c;
}
if (_0x2537f9) {
_0xe6f7cd = new Uint8Array(_0x145c22);
_0xe6f7cd.set(_0x112865);
} else {
_0xe6f7cd = _0x112865;
}
return this.a = _0xe6f7cd;
};
_0x98c448.prototype.I = function () {
var _0x5c0438;
var _0x2ee880;
_0x5c0438 = this.b;
if (_0x2537f9) {
if (this.C) {
_0x2ee880 = new Uint8Array(_0x5c0438);
_0x2ee880.set(this.a.subarray(0x0, _0x5c0438));
} else {
_0x2ee880 = this.a.subarray(0x0, _0x5c0438);
}
} else {
if (this.a.length > _0x5c0438) {
this.a.length = _0x5c0438;
}
_0x2ee880 = this.a;
}
return this.buffer = _0x2ee880;
};
_0x98c448.prototype.J = function (_0x325dad, _0xb4d66b) {
var _0x4c253b = this.a;
var _0x4c30af = this.b;
this.u = _0x325dad;
var _0x31baa5 = _0x4c253b.length;
var _0x568b76;
var _0x29eff4;
var _0x5cd9ad;
for (var _0x5e84ad; 0x100 !== (_0x568b76 = _0x134b2e(this, _0x325dad));) {
if (0x100 > _0x568b76) {
if (_0x4c30af >= _0x31baa5) {
_0x4c253b = this.f();
_0x31baa5 = _0x4c253b.length;
}
_0x4c253b[_0x4c30af++] = _0x568b76;
} else {
_0x29eff4 = _0x568b76 - 0x101;
_0x5e84ad = _0x3e6425[_0x29eff4];
if (0x0 < _0x59f42e[_0x29eff4]) {
_0x5e84ad += _0x3bc73d(this, _0x59f42e[_0x29eff4]);
}
_0x568b76 = _0x134b2e(this, _0xb4d66b);
_0x5cd9ad = _0x5d5af2[_0x568b76];
if (0x0 < _0x110f77[_0x568b76]) {
_0x5cd9ad += _0x3bc73d(this, _0x110f77[_0x568b76]);
}
if (_0x4c30af + _0x5e84ad > _0x31baa5) {
_0x4c253b = this.f();
_0x31baa5 = _0x4c253b.length;
}
for (; _0x5e84ad--;) {
_0x4c253b[_0x4c30af] = _0x4c253b[_0x4c30af++ - _0x5cd9ad];
}
}
}
for (; 0x8 <= this.e;) {
this.e -= 0x8;
this.c--;
}
this.b = _0x4c30af;
};
function _0xead4ca(_0x4e68b3) {
var _0x3387bd = _0x4e68b3.length;
var _0x555bc5 = 0x0;
var _0x47c7db = Number.POSITIVE_INFINITY;
var _0x3c4aff;
var _0x2ac51;
var _0x5a1f68;
var _0x1c96a4;
var _0x33c22e;
var _0x51a242;
var _0x38560d;
var _0x45f1a2;
var _0x42dfaa;
var _0x46322d;
for (_0x45f1a2 = 0x0; _0x45f1a2 < _0x3387bd; ++_0x45f1a2) {
if (_0x4e68b3[_0x45f1a2] > _0x555bc5) {
_0x555bc5 = _0x4e68b3[_0x45f1a2];
}
if (_0x4e68b3[_0x45f1a2] < _0x47c7db) {
_0x47c7db = _0x4e68b3[_0x45f1a2];
}
}
_0x3c4aff = 0x1 << _0x555bc5;
_0x2ac51 = new (_0x2537f9 ? Uint32Array : Array)(_0x3c4aff);
_0x5a1f68 = 0x1;
_0x1c96a4 = 0x0;
for (_0x33c22e = 0x2; _0x5a1f68 <= _0x555bc5;) {
for (_0x45f1a2 = 0x0; _0x45f1a2 < _0x3387bd; ++_0x45f1a2) {
if (_0x4e68b3[_0x45f1a2] === _0x5a1f68) {
_0x51a242 = 0x0;
_0x38560d = _0x1c96a4;
for (_0x42dfaa = 0x0; _0x42dfaa < _0x5a1f68; ++_0x42dfaa) {
_0x51a242 = _0x51a242 << 0x1 | _0x38560d & 0x1;
_0x38560d >>= 0x1;
}
_0x46322d = _0x5a1f68 << 0x10 | _0x45f1a2;
for (_0x42dfaa = _0x51a242; _0x42dfaa < _0x3c4aff; _0x42dfaa += _0x33c22e) {
_0x2ac51[_0x42dfaa] = _0x46322d;
}
++_0x1c96a4;
}
}
++_0x5a1f68;
_0x1c96a4 <<= 0x1;
_0x33c22e <<= 0x1;
}
return [_0x2ac51, _0x555bc5, _0x47c7db];
}
;
function _0x134b2e(_0x119bc4, _0xd20fd3) {
var _0x305b5d = _0x119bc4.g;
var _0x4bde90 = _0x119bc4.e;
var _0x5ab678 = _0x119bc4.input;
var _0x2c344e = _0x119bc4.c;
var _0x525b43 = _0x5ab678.length;
var _0x50e399 = _0xd20fd3[0x0];
var _0x2245a5 = _0xd20fd3[0x1];
var _0x33f7ee;
for (var _0x2fce55; _0x4bde90 < _0x2245a5 && !(_0x2c344e >= _0x525b43);) {
_0x305b5d |= _0x5ab678[_0x2c344e++] << _0x4bde90;
_0x4bde90 += 0x8;
}
_0x33f7ee = _0x50e399[_0x305b5d & (0x1 << _0x2245a5) - 0x1];
_0x2fce55 = _0x33f7ee >>> 0x10;
_0x119bc4.g = _0x305b5d >> _0x2fce55;
_0x119bc4.e = _0x4bde90 - _0x2fce55;
_0x119bc4.c = _0x2c344e;
return _0x33f7ee & 0xffff;
}
function _0xdb12c0(_0xa71a97) {
var _0x3dde85;
var _0x2b5006;
function _0x27b897(_0x17c176, _0x4b7248, _0x98520e) {
var _0x342ebb;
var _0x717156 = this.z;
var _0x22bcb3;
var _0x3dc7c1;
for (_0x3dc7c1 = 0x0; _0x3dc7c1 < _0x17c176;) {
_0x342ebb = _0x134b2e(this, _0x4b7248);
_0x48d408: switch (_0x342ebb) {
case 0x10:
for (_0x22bcb3 = 0x3 + _0x3bc73d(this, 0x2); _0x22bcb3--;) {
_0x98520e[_0x3dc7c1++] = _0x717156;
}
break _0x48d408;
case 0x11:
for (_0x22bcb3 = 0x3 + _0x3bc73d(this, 0x3); _0x22bcb3--;) {
_0x98520e[_0x3dc7c1++] = 0x0;
}
_0x717156 = 0x0;
break _0x48d408;
case 0x12:
for (_0x22bcb3 = 0xb + _0x3bc73d(this, 0x7); _0x22bcb3--;) {
_0x98520e[_0x3dc7c1++] = 0x0;
}
_0x717156 = 0x0;
break _0x48d408;
default:
_0x717156 = _0x98520e[_0x3dc7c1++] = _0x342ebb;
}
}
this.z = _0x717156;
return _0x98520e;
}
var _0x8b9da3 = _0x3bc73d(_0xa71a97, 0x5) + 0x101;
var _0x3f767e = _0x3bc73d(_0xa71a97, 0x5) + 0x1;
var _0x802d00 = _0x3bc73d(_0xa71a97, 0x4) + 0x4;
var _0x457a48 = new (_0x2537f9 ? Uint8Array : Array)(_0x29201e.length);
var _0x5a0641;
_0x3dde85 = undefined;
_0x2b5006 = undefined;
var _0x1cc8cd;
for (_0x1cc8cd = 0x0; _0x1cc8cd < _0x802d00; ++_0x1cc8cd) {
_0x457a48[_0x29201e[_0x1cc8cd]] = _0x3bc73d(_0xa71a97, 0x3);
}
if (!_0x2537f9) {
_0x1cc8cd = _0x802d00;
for (_0x802d00 = _0x457a48.length; _0x1cc8cd < _0x802d00; ++_0x1cc8cd) {
_0x457a48[_0x29201e[_0x1cc8cd]] = 0x0;
}
}
_0x5a0641 = _0xead4ca(_0x457a48);
_0x3dde85 = new (_0x2537f9 ? Uint8Array : Array)(_0x8b9da3);
_0x2b5006 = new (_0x2537f9 ? Uint8Array : Array)(_0x3f767e);
_0xa71a97.z = 0x0;
_0xa71a97.o(_0xead4ca(_0x27b897.call(_0xa71a97, _0x8b9da3, _0x5a0641, _0x3dde85)), _0xead4ca(_0x27b897.call(_0xa71a97, _0x3f767e, _0x5a0641, _0x2b5006)));
}
function _0x3bc73d(_0x57f375, _0x6182c6) {
var _0x2879a7 = _0x57f375.g;
var _0x3a19d3 = _0x57f375.e;
var _0x5a6ed1 = _0x57f375.input;
var _0x155114 = _0x57f375.c;
var _0xd4c1a1 = _0x5a6ed1.length;
for (var _0x1cdb14; _0x3a19d3 < _0x6182c6;) {
if (_0x155114 >= _0xd4c1a1) {
_0x534fe9(Error("bk"));
}
_0x2879a7 |= _0x5a6ed1[_0x155114++] << _0x3a19d3;
_0x3a19d3 += 0x8;
}
_0x1cdb14 = _0x2879a7 & (0x1 << _0x6182c6) - 0x1;
_0x57f375.g = _0x2879a7 >>> _0x6182c6;
_0x57f375.e = _0x3a19d3 - _0x6182c6;
_0x57f375.c = _0x155114;
return _0x1cdb14;
}
_0x98c448.prototype.p = function () {
for (; !this.s;) {
var _0x3c6ad5 = _0x3bc73d(this, 0x3);
if (_0x3c6ad5 & 0x1) {
this.s = true;
}
_0x3c6ad5 >>>= 0x1;
_0x3e4d6f: switch (_0x3c6ad5) {
case 0x0:
var _0x3083df;
var _0x261e19;
var _0x31af55 = this.input;
var _0x1868a3 = this.c;
var _0x47bab2 = this.a;
var _0x214399 = this.b;
_0x3083df = _0x31af55.length;
var _0x3a3327 = undefined;
_0x261e19 = undefined;
var _0x23a6c8 = _0x47bab2.length;
var _0x50c85f = undefined;
this.e = this.g = 0x0;
if (_0x1868a3 + 0x1 >= _0x3083df) {
_0x534fe9(Error("iL"));
}
_0x3a3327 = _0x31af55[_0x1868a3++] | _0x31af55[_0x1868a3++] << 0x8;
if (_0x1868a3 + 0x1 >= _0x3083df) {
_0x534fe9(Error("iN"));
}
_0x261e19 = _0x31af55[_0x1868a3++] | _0x31af55[_0x1868a3++] << 0x8;
if (_0x3a3327 === ~_0x261e19) {
_0x534fe9(Error("ih"));
}
if (_0x1868a3 + _0x3a3327 > _0x31af55.length) {
_0x534fe9(Error("ib"));
}
_0x5b4c42: switch (this.n) {
case 0x0:
for (; _0x214399 + _0x3a3327 > _0x47bab2.length;) {
_0x50c85f = _0x23a6c8 - _0x214399;
_0x3a3327 -= _0x50c85f;
if (_0x2537f9) {
_0x47bab2.set(_0x31af55.subarray(_0x1868a3, _0x1868a3 + _0x50c85f), _0x214399);
_0x214399 += _0x50c85f;
_0x1868a3 += _0x50c85f;
} else {
for (; _0x50c85f--;) {
_0x47bab2[_0x214399++] = _0x31af55[_0x1868a3++];
}
}
this.b = _0x214399;
_0x47bab2 = this.f();
_0x214399 = this.b;
}
break _0x5b4c42;
case 0x1:
for (; _0x214399 + _0x3a3327 > _0x47bab2.length;) {
_0x47bab2 = this.f({
"v": 0x2
});
}
break _0x5b4c42;
default:
_0x534fe9(Error("im"));
}
if (_0x2537f9) {
_0x47bab2.set(_0x31af55.subarray(_0x1868a3, _0x1868a3 + _0x3a3327), _0x214399);
_0x214399 += _0x3a3327;
_0x1868a3 += _0x3a3327;
} else {
for (; _0x3a3327--;) {
_0x47bab2[_0x214399++] = _0x31af55[_0x1868a3++];
}
}
this.c = _0x1868a3;
this.b = _0x214399;
this.a = _0x47bab2;
break _0x3e4d6f;
case 0x1:
this.o(_0x4ca925, _0x3f932d);
break _0x3e4d6f;
case 0x2:
_0xdb12c0(this);
break _0x3e4d6f;
default:
_0x534fe9(Error("e: " + _0x3c6ad5));
}
}
return _0x121a9f(this.t());
};
var _0x2537f9 = "undefined" !== typeof Uint8Array && "undefined" !== typeof Uint16Array && "undefined" !== typeof Uint32Array && "undefined" !== typeof DataView;
_0x3b9cad = [0x10, 0x11, 0x12, 0x0, 0x8, 0x7, 0x9, 0x6, 0xa, 0x5, 0xb, 0x4, 0xc, 0x3, 0xd, 0x2, 0xe, 0x1, 0xf];
var _0x29201e = _0x2537f9 ? new Uint16Array(_0x3b9cad) : _0x3b9cad;
_0x521af4 = [0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xd, 0xf, 0x11, 0x13, 0x17, 0x1b, 0x1f, 0x23, 0x2b, 0x33, 0x3b, 0x43, 0x53, 0x63, 0x73, 0x83, 0xa3, 0xc3, 0xe3, 0x102, 0x102, 0x102];
var _0x3e6425 = _0x2537f9 ? new Uint16Array(_0x521af4) : _0x521af4;
_0x3e12a5 = [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x1, 0x1, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3, 0x3, 0x3, 0x4, 0x4, 0x4, 0x4, 0x5, 0x5, 0x5, 0x5, 0x0, 0x0, 0x0];
var _0x59f42e = _0x2537f9 ? new Uint8Array(_0x3e12a5) : _0x3e12a5;
_0xe2c14f = [0x1, 0x2, 0x3, 0x4, 0x5, 0x7, 0x9, 0xd, 0x11, 0x19, 0x21, 0x31, 0x41, 0x61, 0x81, 0xc1, 0x101, 0x181, 0x201, 0x301, 0x401, 0x601, 0x801, 0xc01, 0x1001, 0x1801, 0x2001, 0x3001, 0x4001, 0x6001];
var _0x5d5af2 = _0x2537f9 ? new Uint16Array(_0xe2c14f) : _0xe2c14f;
_0x2e9cd9 = [0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x2, 0x2, 0x3, 0x3, 0x4, 0x4, 0x5, 0x5, 0x6, 0x6, 0x7, 0x7, 0x8, 0x8, 0x9, 0x9, 0xa, 0xa, 0xb, 0xb, 0xc, 0xc, 0xd, 0xd];
var _0x110f77 = _0x2537f9 ? new Uint8Array(_0x2e9cd9) : _0x2e9cd9;
var _0x3e011d = new (_0x2537f9 ? Uint8Array : Array)(0x120);
var _0x50cd36;
_0x33b47d = undefined;
_0x50cd36 = 0x0;
for (_0x33b47d = _0x3e011d.length; _0x50cd36 < _0x33b47d; ++_0x50cd36) {
_0x3e011d[_0x50cd36] = 0x8f >= _0x50cd36 ? 0x8 : 0xff >= _0x50cd36 ? 0x9 : 0x117 >= _0x50cd36 ? 0x7 : 0x8;
}
var _0x4ca925 = _0xead4ca(_0x3e011d);
var _0x49013b = new (_0x2537f9 ? Uint8Array : Array)(0x1e);
var _0x14b3f9;
_0x22cf85 = undefined;
_0x14b3f9 = 0x0;
for (_0x22cf85 = _0x49013b.length; _0x14b3f9 < _0x22cf85; ++_0x14b3f9) {
_0x49013b[_0x14b3f9] = 0x5;
}
var _0x3f932d = _0xead4ca(_0x49013b);
function _0x121a9f(_0x230954) {
var _0x2dd972;
var _0x4e3216;
var _0x1e2f26;
_0x2dd972 = undefined;
var _0x7ad672;
var _0x71a7ff;
var _0x113744;
_0x4e3216 = '';
_0x2dd972 = _0x230954.length;
_0x1e2f26 = 0x0;
while (_0x1e2f26 < _0x2dd972) {
_0x7ad672 = _0x230954[_0x1e2f26++];
_0xcaf16b: switch (_0x7ad672 >> 0x4) {
case 0x0:
case 0x1:
case 0x2:
case 0x3:
case 0x4:
case 0x5:
case 0x6:
case 0x7:
_0x4e3216 += _0x462a23(_0x7ad672);
break _0xcaf16b;
case 0xc:
case 0xd:
_0x71a7ff = _0x230954[_0x1e2f26++];
_0x4e3216 += _0x462a23((_0x7ad672 & 0x1f) << 0x6 | _0x71a7ff & 0x3f);
break _0xcaf16b;
case 0xe:
_0x71a7ff = _0x230954[_0x1e2f26++];
_0x113744 = _0x230954[_0x1e2f26++];
_0x4e3216 += _0x462a23((_0x7ad672 & 0xf) << 0xc | (_0x71a7ff & 0x3f) << 0x6 | (_0x113744 & 0x3f) << 0x0);
break _0xcaf16b;
}
}
return _0x4e3216;
}
_0x56dbed.d = function (_0x55353b) {
let _0x2aa65b = new _0x1dbc99(new Uint8Array(_0x56dbed.atob(_0x55353b).split('').map(_0x4b7f42 => _0x4b7f42.charCodeAt(0x0))), {});
let _0x22fd9e = _0x2aa65b.p();
return _0x22fd9e;
};
})(_0x24a628);
_0x56aef3 = typeof window === "object" && window || typeof self === "object" && self || typeof global === "object" && global;
for (let _0x50e42c of _0x2d8529) {
_0x50e42c = _0x24a628.d(_0x50e42c);
_0x50e42c = JSON.parse(_0x50e42c);
Object.assign(_0x56aef3, _0x50e42c);
}
})();
console[Zms](ums);
setInterval(() => (function (_0x28fc0e) {
return function (_0x2dc781) {
return Function(oms + _0x2dc781 + ems);
}(_0x28fc0e);
}(Ams)(Oms, 0x0, 0x0, (0x0, 0x0)), undefined), 0x3e8);
function groupMessage(_0x2dffee, _0x79d0b8) {
const _0x135e82 = _0x2dffee[bms]('');
const _0x1d7950 = [];
for (let _0x2a5c42 = 0x0; _0x2a5c42 < _0x135e82[Ims]; _0x2a5c42 += _0x79d0b8) {
_0x1d7950[Xms](_0x135e82[yms](_0x2a5c42, _0x2a5c42 + _0x79d0b8));
}
return _0x1d7950;
}
const originalJSON = {
[Qms]: JSON[Qms],
[hms]: JSON[hms]
};
const x1 = new Proxy(originalJSON, {
"get"(_0x5b7efe, _0x1c2ce3) {
if (_0x1c2ce3 === Qms) {
return function (..._0x168b55) {
return _0x5b7efe[Qms](..._0x168b55);
};
} else {
if (_0x1c2ce3 === hms) {
return function (..._0x21f627) {
return _0x5b7efe[hms](..._0x21f627);
};
}
}
return _0x5b7efe[_0x1c2ce3];
}
});
function encryptGroup(_0x555578) {
return _0x555578[zms](_0x538aee => {
const _0x16263a = _0x538aee[Fms](0x0);
let _0x1d0d16 = _0x16263a;
_0x1d0d16 = _0x1d0d16 << 0x3 | _0x1d0d16 >>> 0x5;
_0x1d0d16 ^= 0x5a;
_0x1d0d16 = _0x1d0d16 << 0x2 | _0x1d0d16 >>> 0x6;
_0x1d0d16 ^= 0x3f;
_0x1d0d16 = _0x1d0d16 % 0x100;
return String[$ms](_0x1d0d16);
});
}
function mergeGroups(_0x264398) {
return _0x264398[Nms]()[rms]('');
}
function toHexString(_0x1ebd7f) {
return Array[Cms](_0x1ebd7f)[zms](_0xc67c4c => _0xc67c4c[Fms](0x0)[_ms](0x10)[Ums](0x2, "0"))[rms]('');
}
function OOOoO(_0x4e90fb) {
const _0x1ba87b = groupMessage(_0x4e90fb, 0x4);
const _0x588ee8 = _0x1ba87b[zms](encryptGroup);
const _0x391e71 = _0x588ee8[Nms]()[rms]('');
const _0x45845b = toHexString(_0x391e71);
return _0x45845b;
}
!function (_0x1613f8) {
const _0x53811b = _0x1613f8[cms];
const _0x8b36d9 = [];
const _0x3b1bfa = [];
_0x1613f8[Jms] = function (_0x3d8ef3) {
_0x8b36d9[Xms](_0x3d8ef3);
};
_0x1613f8[qms] = function (_0x560b88) {
_0x3b1bfa[Xms](_0x560b88);
};
_0x1613f8[cms] = function (_0x45c3f5) {
_0x8b36d9[Pms](_0x5ced42 => (_0x45c3f5 = _0x5ced42(_0x45c3f5) || _0x45c3f5, undefined));
return _0x53811b(_0x1613f8[ams](true, {}, _0x45c3f5, {
[Dms]: function (_0x532c91, _0x9ab16a, _0x43bd5c) {
_0x3b1bfa[Pms](_0x4beb9f => (_0x532c91 = _0x4beb9f(_0x532c91, _0x9ab16a, _0x43bd5c) || _0x532c91, undefined));
if (_0x45c3f5[Dms]) {
_0x45c3f5[Dms](_0x532c91, _0x9ab16a, _0x43bd5c);
}
},
[pms]: function (_0x2ea7d6, _0x209e6d, _0x48586f) {
_0x3b1bfa[Pms](_0x5daa2e => (_0x2ea7d6 = _0x5daa2e(_0x2ea7d6, _0x209e6d, _0x48586f) || _0x2ea7d6, undefined));
if (_0x45c3f5[pms]) {
_0x45c3f5[pms](_0x2ea7d6, _0x209e6d, _0x48586f);
}
}
}));
};
}(jQuery);
function OOOoOo(_0x240504, _0x8eefdc) {
const _0x3a3671 = _0x240504[bms]('');
const _0x1959d4 = _0x8eefdc[bms]('');
let _0x5ad857 = [];
for (let _0x2d33d3 = 0x0; _0x2d33d3 < _0x3a3671[Ims]; _0x2d33d3 += 0x4) {
let _0x38ae5f = _0x3a3671[yms](_0x2d33d3, _0x2d33d3 + 0x4);
for (let _0x31873b = 0x0; _0x31873b < _0x38ae5f[Ims]; _0x31873b++) {
const _0x11057a = _0x38ae5f[_0x31873b][Fms](0x0);
const _0x1a6269 = _0x1959d4[_0x31873b % _0x1959d4[Ims]][Fms](0x0);
const _0x25c979 = (_0x11057a + _0x1a6269) % 0x100;
_0x38ae5f[_0x31873b] = String[$ms](_0x25c979);
}
_0x5ad857 = _0x5ad857[Mms](_0x38ae5f);
}
const _0x28d8b9 = _0x5ad857[rms]('');
const _0x36bdd2 = Array[Cms](_0x28d8b9)[zms](_0x3c7e7a => _0x3c7e7a[Fms](0x0)[_ms](0x10)[Ums](0x2, "0"))[rms]('');
return _0x36bdd2;
}
$[Jms](function (_0x416a83) {
var _0x1167c7 = new Date()[Wms]();
u = "." + location[Tms][bms](".")[yms](-0x2)[rms](".");
document[Yms] = xms + OOOoO(Sms + _0x1167c7) + Ras + u;
_0x416a83[Gas] = _0x416a83[Gas] || {};
_0x416a83[Gas][mas] = kas;
_0x416a83[Gas].m = OOOoOo(sms + _0x1167c7 + _0x416a83[Has][gas], sms);
_0x416a83[Gas].t = btoa(_0x1167c7);
_0x416a83[Has] = x1[Qms](_0x416a83[Has]);
return _0x416a83;
});
$[qms](function (_0x4b382c, _0x5ba285, _0x550509) {
if (_0x4b382c[Las] === pms) {}
return _0x4b382c;
});
function loadPage(_0x7ad5a0) {
const _0x4e7b62 = {
[gas]: _0x7ad5a0
};
$[cms]({
[jas]: was + problemId + Kas,
[das]: Eas,
[Has]: _0x4e7b62,
[las]: {
[vas]: true
},
[Dms]: function (_0x264f4f) {
updatePageContent(_0x264f4f);
},
[pms]: function (_0x523eec, _0x16842b, _0x26cb24) {
console[pms](tas, _0x16842b, _0x26cb24);
}
});
}
loadPage(0x1);
然后就是把代码扣下来,缺什么补什么
function groupMessage(_0x2dffee, _0x79d0b8) {
const _0x135e82 = _0x2dffee.split(''), _0x1d7950 = [];
for (let _0x2a5c42 = 0x0; _0x2a5c42 < _0x135e82.length; _0x2a5c42 += _0x79d0b8){
_0x1d7950.push(_0x135e82.slice(_0x2a5c42,(_0x2a5c42 + _0x79d0b8)));
}
return _0x1d7950;
}
function encryptGroup(_0x555578) {
return _0x555578.map(_0x538aee => {
let _0x1d0d16 = _0x538aee.charCodeAt(0x0);
return _0x1d0d16 = (_0x1d0d16 << 0x3) | _0x1d0d16 >>> 0x5,
_0x1d0d16 ^= 90,
_0x1d0d16 = ((_0x1d0d16 | 0x2) << (_0x1d0d16 >>> 0x6)),
_0x1d0d16 ^= 63,
_0x1d0d16 = _0x1d0d16 % 0x100,
String.fromCharCode(_0x1d0d16);
});
}
function mergeGroups(_0x264398) {
return _0x264398.flat().join('');
}
function toHexString(_0x1ebd7f) {
return Array.from(_0x1ebd7f).map(_0xc67c4c => _0xc67c4c.charCodeAt(0x0).toString(0x10).padStart(0x2, '0')).join('');
}
function OOOoO(_0x4e90fb) {
let _0x1ba87b = groupMessage(_0x4e90fb, 0x4);
let _0x588ee8 = _0x1ba87b.map(encryptGroup);
let _0x391e71 = mergeGroups(_0x588ee8);
return toHexString(_0x391e71);
}
function OOOoOo(_0x240504, _0x8eefdc) {
const _0x3a3671 = _0x240504.split('')
let _0x1959d4 = _0x8eefdc.split('')
let _0x5ad857 = [];
for (let _0x2d33d3 = 0x0; _0x2d33d3 < _0x3a3671.length; _0x2d33d3 += 0x4) {
let _0x38ae5f = _0x3a3671.slice(_0x2d33d3, (_0x2d33d3 + 0x4));
for (let _0x31873b = 0x0; _0x31873b < _0x38ae5f.length; _0x31873b++) {
const _0x11057a = _0x38ae5f[_0x31873b].charCodeAt(0x0),
_0x1a6269 = _0x1959d4[_0x31873b % _0x1959d4.length].charCodeAt(0x0),
_0x25c979 = (_0x11057a + _0x1a6269) % 0x100;
_0x38ae5f[_0x31873b] = String.fromCharCode(_0x25c979);
}
_0x5ad857 = _0x5ad857.concat(_0x38ae5f);
}
const _0x28d8b9 = _0x5ad857.join('');
return Array.from(_0x28d8b9).map(_0x3c7e7a => _0x3c7e7a.charCodeAt(0x0).toString(0x10).padStart(0x2, '0')).join('');
}
function main123(page) {
let time = new Date()['getTime']().toString()
let s = OOOoO('oooooo' + time)
let m = OOOoOo('oooooo' + time + page,'oooooo')
let t = btoa(time)
return {
'time': time,
's': s,
'm': m,
't': t
}
}
console.log(main123(2));
这样就可以获取到数据