资讯 小学 初中 高中 语言 会计职称 学历提升 法考 计算机考试 医护考试 建工考试 教育百科
栏目分类:
子分类:
返回
空麓网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
空麓网 > 计算机考试 > 软件开发 > 后端开发 > Java

今日份JS解密日志

Java 更新时间: 发布时间: 计算机考试归档 最新发布

今日份JS解密日志

今天拿到手的JS加密源代码如下

function enterKeyDown(_0x28623b) {
    const _0x32979d = _0x58fe;
    const _0xde64a8 = _0x1d66;
    try {
        let _0x1f57e5 = msgInput['previousSibling'];
        let _0x595e47 = _0x1f57e5['value'];
        sendLock = ![];
        if ((msgInput['childNodes'][0x2cf1a ^ 0x2cf1a]['nodeName'] === _0xde64a8(0x98, '(Vjy') || msgInput['innerHTML']['indexOf'](_0x32979d(0x1f)) === (0x3995f ^ 0x3995f)) && msgInput['childNodes']['length'] !== 0x1) {
            InputTipsMsg(_0xde64a8(0xa9, 'K^s['), _0xde64a8(0x7f, 'xtHf'));
            return;
        }
        if (!__DisableSendTT) {
            if (!IsEmpty(_0x595e47)) {
                InputTipsMsg(_0x32979d(0xa1), _0x32979d(0xa8));
                TranslateMessagesDirectly(_0x595e47, function (_0x37519a) {
                    const _0x4c0c26 = _0x58fe;
                    const _0x504cb8 = _0x1d66;
                    let _0x1b155d = GetRetStr(_0x37519a);
                    if (_0x1b155d['indexOf'](_0x504cb8(0x6d, 'epCC')) === 0x0) {
                        sendLock = ![];
                        InputTipsMsg(_0x37519a['msg'] === undefined ? _0x4c0c26(0x90) : _0x37519a['msg'], _0x4c0c26(0x1c));
                    } else {
                        _0x1f57e5['value'] = _0x1b155d;
                        msgInput['innerHTML'] = _0x1b155d;
                        FireMessageInputEvent(_0x1f57e5);
                        sendLock = !![];
                        setTimeout(() => {
                            const _0x1313e1 = _0x58fe;
                            sendLock = ![];
                            if (hasChinese(msgInput['innerText']) && zh_translation_switch === ![]) {
                            } else {
                                sendButton['click']();
                                InputTipsMsg(_0x1313e1(0x9b), _0x1313e1(0xa8));
                            }
                        }, 0x1);
                    }
                }, send_from, send_to);
            }
        } else {
            setTimeout(() => {
                const _0x133bc1 = _0x1d66;
                const _0xe44700 = _0x58fe;
                sendLock = ![];
                InputTipsMsg(_0xe44700(0x6a), _0x133bc1(0x73, 't)Zd'));
                sendButton['click']();
            }, 0x808b2 ^ 0x808b8);
        }
    } catch (_0x21b8b7) {
        sendLock = ![];
        console['error'](_0x21b8b7);
    }
}

我手工解密后如下

function enterKeyDown() {
  try {
    let previousSibling = msgInput.previousSibling;
    let psValue = previousSibling.value;
    sendLock = false;

    if ((msgInput.childNodes[0].nodeName === "IMG" || msgInput.innerHTML.indexOf(") === 0) && msgInput.childNodes.length !== 1) {
      InputTipsMsg("表情不能在最前面翻译", "error");
      return;
    }

    if (!__DisableSendTT) {
      if (!IsEmpty(psValue)) {
        InputTipsMsg("正在翻译中", "info");
        TranslateMessagesDirectly(psValue, function (res) {
          let retStr = GetRetStr(res);

          if (retStr.indexOf("error:") === 0) {
            sendLock = false;
            InputTipsMsg(res.msg === undefined ? "服务错误" : res.msg, "error");
          } else {
            previousSibling.value = retStr;
            msgInput.innerHTML = retStr;
            FireMessageInputEvent(previousSibling);
            sendLock = true;
            setTimeout(() => {
              sendLock = false;

              if (!(hasChinese(msgInput.innerText) && zh_translation_switch === false)) {
                sendButton.click();
                InputTipsMsg("翻译成功", "info");
              }
            }, 1);
          }
        }, send_from, send_to);
      }
    } else {
      setTimeout(() => {
        sendLock = false;
        InputTipsMsg("未开启翻译,发送原文", "info");
        sendButton.click();
      }, 10);
    }
  } catch (e) {
    sendLock = false;
    console.error(e);
  }
}

解密思路

1.咱们解密啥都不用想,首先将加密的JS代码丢到在线JS加密解密工具站一键解一遍。

2.在工具站解完了后,人工分析代码加密逻辑手工挨个改回来

3.解密完毕

结论

这个我看了下,这个js应该是翻译某游戏客户端的说明注释的,将英文版的客户端数据通过调用翻译接口翻译成汉语,应该是某些人想把国外的开源代码搬运进来,初步做一个汉译。

转载请注明:文章转载自 http://www.konglu.com/
本文地址:http://www.konglu.com/it/1093799.html
免责声明:

我们致力于保护作者版权,注重分享,被刊用文章【今日份JS解密日志】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2023 成都空麓科技有限公司

ICP备案号:蜀ICP备2023000828号-2