大佬们来看看这个JS怎么解密

78次阅读

共计 2731 个字符,预计需要花费 7 分钟才能阅读完成。

万能 MJJ 全靠你们了
代码文件 TXT:
https://qnfx.lanzoub.com/icNMx0cibu5c
感谢各位 1111
大佬们来看看这个 JS 怎么解密大佬们来看看这个 JS 怎么解密

function decode(data) {
let key =
‘zm"fci’©!13NaybhsRG:-jwr_6IQ=.,W$BLF>(MlApCUe 2H@#kd97nXvT+JOut4&gSDY;V80K/q5EPoZx)<‘;
let length = 84;
let main = {
data: ”,
push(val) {
this.data += val;
},
clear() {
this.data = null;
},
};
for (let i = 0; i < data.length; i++) {
let current = data[i]; // 第一个字符是 z
let currentPosition = key.indexOf(current); // z 的位置是 0
// 在 key 中找到 z,则把当前字符的前一个字符添加至 main.data
// 如果未找到,则把当前字符添加至 main.data
if (currentPosition > -1) {
currentPosition -= (i + 1) % length;
// 如果是第一位,则移动到最后一位
if (currentPosition < 0) {
currentPosition += length;
}
current = key[currentPosition];
}
main.push(current);
}
document.write(main.data);
// 源码中有这一步,但没任何作用
// main.clear();
} 复制代码
最后是个 htmlresult.zip 昨天 19:39 上传点击文件名下载附件 13.78 KB, 下载次数: 1 你如果诚心就把文件发上来!!
让大佬们帮你研究一下!
你发个图片,让大佬们怎么做事?一个一个帮你敲代码?逆向这个比重新写一个同样功能的 js 还难

叼爆小朋友 发表于 2022-9-28 17:23
逆向这个比重新写一个同样功能的 js 还难

真的吗,扒了个模板里面全是这玩意大佬们来看看这个 JS 怎么解密插眼直接传文件上来别人还看看,这样怎么解

gamerock 发表于 2022-9-28 17:34
你如果诚心就把文件发上来!!
让大佬们帮你研究一下!
你发个图片,让大佬们怎么做事?一个一个帮 …

谢谢大佬,代码已经能下载了,帮我看看哈。
https://qnfx.lanzoub.com/icNMx0cibu5c大佬们来看看这个 JS 怎么解密插眼学习

本人马保国 发表于 2022-9-28 17:39
直接传文件上来别人还看看,这样怎么解

谢谢大佬,代码已经能下载了,帮我看看哈。
https://qnfx.lanzoub.com/icNMx0cibu5c大佬们来看看这个 JS 怎么解密费这功夫干嘛?还不如重写研究了一下,主要函数就是前面的那个函数 k8b2,追了一下然后改了改内容:
let totalHTML = ”
function k8b2(jhxv) {
var
ekvq, il5l = "zm"fci’©!13NaybhsRG:-jwr_6IQ=.,W$BLF>(MlApCUe 2H@#kd97nXvT+JOut4&gSDY;V80K/q5EPoZx)<",
aqey = Function, nktr, juga, mree = il5l.length, n00l = {cd: ""}, ue = new aqey("ret" + "urn unesc" + "ape")(),
mw50 = new aqey("x", ue("this.cd+=x;console.log(x)")), cb1a = new aqey("x", "y", ue("%72et%75rn%20x.c%68ar%41t(%79)"));
for (nktr = 0; nktr < jhxv.length; nktr++) {
juga = cb1a(jhxv, nktr);
ekvq = il5l.indexOf(juga);
let now = ”
if (ekvq > -1) {
ekvq -= (nktr + 1) % mree;
if (ekvq < 0) {
ekvq += mree;
}
now = cb1a(il5l, ekvq)
mw50.call(n00l, now);
} else {
now = juga
mw50.call(n00l, now);
}
totalHTML += now
}
new aqey(ue("%64oc%75me%6Et.w%72it%65(t%68is.%63d)%3Bth%69s.c%64=n%75ll")).call(n00l);
}
复制代码
将上面这个替换原来的那个函数,并且暴露出来一个 totalHTML 用于接收处理的结果
然后将 totalHTML 在末尾打出来就搞定了,反正最终的输出是:
不知道是啥.zip(11.21 KB, 下载次数: 4)昨天 18:35 上传点击文件名下载附件影视展模板 function decode(data) {
let key =
‘zm"fci’©!13NaybhsRG:-jwr_6IQ=.,W$BLF>(MlApCUe 2H@#kd97nXvT+JOut4&gSDY;V80K/q5EPoZx)<‘;
let length = 84;
let main = {
data: ”,
push(val) {
this.data += val;
},
clear() {
this.data = null;
},
};
for (let i = 0; i < data.length; i++) {
let current = data[i]; // 第一个字符是 z
let currentPosition = key.indexOf(current); // z 的位置是 0
// 在 key 中找到 z,则把当前字符的前一个字符添加至 main.data
// 如果未找到,则把当前字符添加至 main.data
if (currentPosition > -1) {
currentPosition -= (i + 1) % length;
// 如果是第一位,则移动到最后一位
if (currentPosition < 0) {
currentPosition += length;
}
current = key[currentPosition];
}
main.push(current);
}
document.write(main.data);
// 源码中有这一步,但没任何作用
// main.clear();
} 复制代码
最后是个 htmlresult.zip 昨天 19:39 上传点击文件名下载附件 13.78 KB, 下载次数: 1

千牛 发表于 2022-9-28 18:35
研究了一下,主要函数就是前面的那个函数 k8b2,追了一下然后改了改内容:

牛啊 大佬 膜拜大佬们来看看这个 JS 怎么解密

电脑 发表于 2022-9-28 19:39
最后是个 html

mjj 一个个的果然藏龙卧虎大佬们来看看这个 JS 怎么解密真正难得是用 vm 保护的那些 js,或者分支混淆的,这种才头痛,可以看看知乎的接口参数生成算法就懂了

正文完
 0