调试一段加密js代码

在某网站的js文件里面看到一段js代码:

$(function() {
    try {
        var _0x2757=['3(6.h(\x227\x22)==\x221\x22){5()}8\x204=!1;9(8\x202\x20b\x20c){3(\x22a\x22===2||\x22d\x22===2||\x22g\x22===2){4=!0;e}}3(4){6.f(\x227\x22,\x221\x22);5()}','replace','toString','\x5cw+','fromCharCode'];var _0x2edc=function(_0x275744,_0x2edcd0){_0x275744=_0x275744-0x0;var _0x282e87=_0x2757[_0x275744];return _0x282e87;};eval(function(_0x34a3c9,_0x43afb0,_0x37cde7,_0x485988,_0x4a8f26,_0x5d1433){_0x4a8f26=function(_0x23a5a4){return(_0x23a5a4<_0x43afb0?'':_0x4a8f26(parseInt(_0x23a5a4/_0x43afb0)))+((_0x23a5a4=_0x23a5a4%_0x43afb0)>0x23?String[_0x2edc('0x4')](_0x23a5a4+0x1d):_0x23a5a4[_0x2edc('0x2')](0x24));};if(!''['replace'](/^/,String)){while(_0x37cde7--)_0x5d1433[_0x4a8f26(_0x37cde7)]=_0x485988[_0x37cde7]||_0x4a8f26(_0x37cde7);_0x485988=[function(_0x22af13){return _0x5d1433[_0x22af13];}];_0x4a8f26=function(){return _0x2edc('0x3');};_0x37cde7=0x1;};while(_0x37cde7--)if(_0x485988[_0x37cde7])_0x34a3c9=_0x34a3c9[_0x2edc('0x1')](new RegExp('\x5cb'+_0x4a8f26(_0x37cde7)+'\x5cb','g'),_0x485988[_0x37cde7]);return _0x34a3c9;}(_0x2edc('0x0'),0x12,0x12,'||o|if|r|llFuncGo|localStorage|gan2040|var|for|eoapi|in|window|eoapi_VerifyThis|break|setItem|eoapi_extInvok|getItem'['split']('|'),0x0,{}));
    } catch (error) {}
});

格式化替换了一下对应变量之后:

eval(function(a, b, c, d, e, f) {
    e = function(g) {
        return (g < b ? '' : e(parseInt(g / b))) + ((g = g % b) > 0x23 ? String["fromCharCode"](g + 0x1d) : g["toString"](0x24));
    };
    if (true) {
        while (c--) f[e(c)] = d[c] || e(c);
        d = [
            function(_0x22af13) {
                return f[_0x22af13];
            }
        ];
        e = function() {
            return "\\w+";
        };
        c = 0x1;
    };
	
    while (c--)
        if (d[c]) a = a["replace"](new RegExp('\\b' + e(c) + '\\b', 'g'), d[c]);
	return a;
}("3(6.h(\"7\")==\"1\"){5()}8 4=!1;9(8 2 b c){3(\"a\"===2||\"d\"===2||\"g\"===2){4=!0;e}}3(4){6.f(\"7\",\"1\");5()}", 0x12, 0x12, '||o|if|r|llFuncGo|localStorage|gan2040|var|for|eoapi|in|window|eoapi_VerifyThis|break|setItem|eoapi_extInvok|getItem' ['split']('|'), 0x0, {}));

得到一段立即执行函数,在最后return前添加console.log(a);
放到console里面执行一下函数,得到:

if (localStorage.getItem("gan2040") == "1") {
    llFuncGo()
}
var r = !1;
for (var o in window) {
    if ("eoapi" === o || "eoapi_VerifyThis" === o || "eoapi_extInvok" === o) {
        r = !0;
        break
    }
}
if (r) {
    localStorage.setItem("gan2040", "1");
    llFuncGo()
}

搜索js文件找到对应函数:

// 智能提示
function llFuncGo() {
    var sha180 = '<div class="ll_check" style......

直接执行这个函数,向服务器发送了一个请求,然后页面上反馈显示:

居然是个检测浏览器的功能

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值