本混淆代码是此博主仿制的:https://blog.csdn.net/github_36788573/article/details/102866435
混淆代码
$$=1;$=[($+"_")[$$+!+[]+$$]+($+"_")[$$+!+[]+$$+$$+!+[]+$$]+($+"_")[$$+!+[]+$$+$$+!+[]+$$+$$]+(($$==$)+"_")[$$+!+[]+$$]+(($$==$$)+"_")[$$-!+[]]+(($$==$$)+"_")[$$]+(($$==$$)+"_")[$$+!+[]]+($+"_")[$$+!+[]+$$]+(($$==$$)+"_")[$$-!+[]]+($+"_")[$$+!+[]+$$+$$+!+[]+$$]+(($$==$$)+"_")[$$]];$$[$][$]((($$==$)+"_")[$$]+(($$==$)+"_")[$$+$$]+(($$==$$)+"_")[$$+!+[]+$$]+(($$==$$)+"_")[$$]+(($$==$$)+"_")[$$-!+[]]+"("+$$+")")("_")
反混淆代码
function $() {}
$.toString = (() => { return "function $(selector, [startNode]) { [Command Line API] }" });
var code = "";
const path = require('path');
const generator = require("@babel/generator").default;
var ast = require("@babel/parser").parse(require('fs').readFileSync(path.resolve(__dirname, `test.js`), "utf-8"));
buildRequire = require("@babel/template").default(`LEFT.toString()`);
ast.program.body[ast.program.body.length-1].expression = buildRequire({ LEFT: ast.program.body[ast.program.body.length-1].expression.callee });
var jiami = generator(ast.program).code
console.log(eval(jiami))
/** 输出显示 ***************************
*
* function anonymous(
) {
alert(1)
}
* */
// 测试执行 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
// var jiami =`
// $$ = 1;
// $ = [($ + "_")[$$ + !+[] + $$] + ($ + "_")[$$ + !+[] + $$ + $$ + !+[] + $$] + ($ + "_")[$$ + !+[] + $$ + $$ + !+[] + $$ + $$] + (($$ == $) + "_")[$$ + !+[] + $$] + (($$ == $$) + "_")[$$ - !+[]] + (($$ == $$) + "_")[$$] + (($$ == $$) + "_")[$$ + !+[]] + ($ + "_")[$$ + !+[] + $$] + (($$ == $$) + "_")[$$ - !+[]] + ($ + "_")[$$ + !+[] + $$ + $$ + !+[] + $$] + (($$ == $$) + "_")[$$]];
// $$[$][$]((($$ == $) + "_")[$$] + (($$ == $) + "_")[$$ + $$] + (($$ == $$) + "_")[$$ + !+[] + $$] + (($$ == $$) + "_")[$$] + (($$ == $$) + "_")[$$ - !+[]] + "(" + $$ + ")").toString();
// `;
// console.log(eval(jiami))
// process.exit(0)