当前位置: 首页 > news >正文

不常见的JS加密分析

前言

​ 今天发现一个很少见的JS加密代码,他由一段十分少见的环境检测逻辑,修改一个字符都会被检测到,十分神奇,今天献上。

源代码

let hiJsJiami;!function(){const Zg3G=Array.prototype.slice.call(arguments);return eval("(function MpGw(vFNo){const P2Fo=fpxp(vFNo,nxap(MpGw.toString()));try{let rAIo=eval(P2Fo);return rAIo.apply(null,Zg3G);}catch(LXAo){var nvDo=(0o202222-66693);while(nvDo<(0o400161%65574))switch(nvDo){case (0x30058%0o200031):nvDo=LXAo instanceof SyntaxError?(0o400126%0x1001D):(0...省略一大堆代码...6%04%19%1F%1A%05SV%19Z%05%03%25(%5D%0B%11%06\'W%0E%1E%1D%0C%10%08%02%04@B%08%1D%01%15%18%18%06KA_%19Z%05%03%25(%5D%07%16%05%25W%0E%1E%1D%0C%10%08%02%04@B%08%1D%01%15%18%18%06K@_%19Z%05%03%25(%5D-+T*W%0E%1E%1D%0C%10%08%02%04@B%08%1D%01%15%18%18%06KB%5C%19Z%05%03%25(%5D%1B#%12%25W%0E%1E%1D%0C%10%08%02%04@B%08%1D%01%15%18%18%06KAX%19Z%05%03%25(%5D9%00%17%25W%0E%1E%1D%0C%10%08%02%04@B%08%1D%01%15%18%18%06K@V%19%1CD\")")}();

在线JS解密进行第一层还原

(function MpGw(vFNo){const P2Fo=fpxp(vFNo,nxap(MpGw.toString()));try{let rAIo=eval(P2Fo);return rAIo.apply(null,Zg3G);}catch(LXAo){var nvDo=(0o202222-66693);while(nvDo<(0o400161%65574))switch(nvDo){case (0x30058%0o200031):nvDo=LXAo instanceof SyntaxError?(0o400126%0x1001D):(0o400163%0x10027);break;case (0o201510-0x1032C):nvDo=(0o400177%65581);{console.log('Error: the code has been tampered!');return}break;}throw LXAo;}function nxap(P4cp){let js5o=539378785;var LZ7o=(0o400075%65550);{let fn0o;while(LZ7o<(0x10550-0o202456)){switch(LZ7o){case (0O144657447^0x1935F20):LZ7o=(0o202032-0x1040B);{js5o^=(P4cp.charCodeAt(fn0o)*(15658734^0O73567354)+P4cp.charCodeAt(fn0o>>>(0x4A5D0CE&0O320423424)))^810782314;}break;case (0x40073%0o200031):LZ7o=(0x4004F%0o200021);fn0o++;break;case (0o201736-66515):LZ7o=fn0o<P4cp.length?(0O264353757%8):(0o1000236%65567);break;case (0o202450-0x10507):LZ7o=(0o1000107%0x1000F);fn0o=(0x21786%3);break;}}}let HU2o="";var biVo=(67216-0o203164);{let DPXo;while(biVo<(0x105C8-0o202643)){switch(biVo){case (0o204300-67748):biVo=(0o204730-0x109B4);DPXo=(0x21786%3);break;case (262308%0o200040):biVo=DPXo<(0O3153050563-0x19AC516B)?(66316-0o201362):(0o201344-0x102BF);break;case (0x10618-0o202776):biVo=(0x2005E%0o200040);{const DRup=js5o%(68296-0o205261);js5o=Math.floor(js5o/(0o204026-0x107FF));HU2o+=DRup>=(0x1071C-0o203402)?String.fromCharCode((0o600404%65601)+(DRup-(0o1000136%0x10011))):String.fromCharCode((0o217120-0x11DEF)+DRup);}break;case (0o204064-67606):biVo=(0o202070-0x10414);DPXo++;break;}}}return HU2o;}function fpxp(zMpp,bksp){zMpp=decodeURI(zMpp);let vHkp=(0x21786%3);let Xenp="";var rCfp=(68506-0o205571);{let T9hp;while(rCfp<(0o600152%0x10018)){switch(rCfp){case (0x9D8DE4-0O47306735):rCfp=(0o203410-0x106F9);{Xenp+=String.fromCharCode(zMpp.charCodeAt(T9hp)^bksp.charCodeAt(vHkp));vHkp++;var TbPp=(0o206666-0x10D9B);while(TbPp<(0x111D0-0o210652))switch(TbPp){case (0o200416-0x100F3):TbPp=vHkp>=bksp.length?(0o201344-66239):(0o203554-0x10746);break;case (0x300AF%0o200056):TbPp=(0o400144%65567);{vHkp=(0x75bcd15-0O726746425);}break;}}break;case (0o1000107%65551):rCfp=T9hp<zMpp.length?(0O264353757%8):(0o600171%65565);break;case (0o1000141%65552):rCfp=(196652%0o200013);T9hp=(0x75bcd15-0O726746425);break;case (0o202260-66721):rCfp=(0o202114-66625);T9hp++;break;}}}return Xenp;}})("E%0C%1D%05%10%1B%0D%0E%03BA%10%15%1A%0A%02%19%03%07%05S%19%22/%02BA%10%01%0A%10%14%1F%04HL/%1ATQX_O%16%15%1A%0A%02%19%03%07%05S?V'%02BA%10%01%0A%10%14%1F%04HC%05-.%0FECA0%01%18!%0FEC5C'Z%00%0EECA%16%15%1A%0A%02%19%03%07%05S%1D%25(%02B$32%00H%0F%1B.%07G%1D%17%05%11D%11%04%0E%07O4U%0E%1AUIQT%12%00%1...省略一万字代码...0A%03F%5BI%5D%12Y%5BG-TL%5D%05Z%5BA%5DPPDP@%5B%1C%5DTP_X%5CFC%17UQ_%5D%5BBH%0D%16%04%0C%01S%08%12%1C%01AE%5C%5EREYIQ%02XXYE%5EWHW%00%1B%5E%1CRLQ%22%5B%5C_EZSUY%5D6%5B%0B%5E%5DRX,Z%5BZT(;Z%05U%05%05+%0%19%1CD")

分析

方法体内一大段都是验证逻辑,验证方法是否有变动,如果有则验证不通过。

结尾

解密后的代码就不放出来了,对用户不尊重。

有js相关问题可以私信我

相关文章:

不常见的JS加密分析

前言 ​ 今天发现一个很少见的JS加密代码&#xff0c;他由一段十分少见的环境检测逻辑&#xff0c;修改一个字符都会被检测到&#xff0c;十分神奇&#xff0c;今天献上。 源代码 let hiJsJiami;!function(){const Zg3GArray.prototype.slice.call(arguments);return eval(&…...

TCP原理特性详解

文章目录 可靠传输机制1.确认应答2.超时重传2.连接管理1.三次握手2.四次挥手 传输效率1.滑动窗口2.流量控制3.拥塞控制4.延时应答5.捎带应答 面向字节流粘包问题 TCP异常情况 可靠传输机制 可靠性&#xff1a;即发送方知道数据是发送成功了&#xff0c;还是失败了。 1.确认应答…...

什么是懒加载,JS如何实现懒加载,在php中如何去实现懒加载

懒加载&#xff08;Lazy Loading&#xff09;是一种前端优化技术&#xff0c;用于推迟加载页面中的某些资源&#xff08;如图片、脚本、样式等&#xff09;&#xff0c;直到用户需要访问或者接近该资源时才进行加载。这可以减少初始页面加载时间&#xff0c;并提高页面性能和用…...

Cesium 展示——读取文件——加载 geojson 文件数据

文章目录 需求分析方法一:加载 geojson 文件方法二:加载 后台解析后的 geojson 文件结果需求 在做项目时,对加载 geojson 格式的数据有了一定的了解,因此试着尝试接手后台解析的 geojson 数据进行绘制,因此做了总结如下 分析 方法一:加载 geojson 文件 this.od6 = wi…...

(二)Apache log4net™ 手册 - 配置

0、引言 在上一篇文章中我们简单介绍了 Log4Net 及其核心的三大组件。本文将在上一篇文章的基础上继续探讨与 Log4Net 配置相关的内容。 1、配置 将日志请求插入到应用程序代码中需要进行大量的计划和工作。观察表明&#xff0c;大约4%的代码专门用于日志记录。因此&#xf…...

Elasticsearch:时间点 API

Elasticsearch&#xff1a;时间点 API-CSDN博客 在今天的文章中&#xff0c;我将着重介绍 Point in time API。在接下来的文章中&#xff0c;我将介绍如何运用 PIT 来对搜索结果进行分页。这也是被推荐使用的方法。 Point in time API 默认情况下&#xff0c;搜索请求针对目标…...

hive数据表定义

分隔符 CREATE TABLE emp( userid bigint, emp_name array<string>, emp_date map<string,date>, other_info struct<deptname:string, gender:string>) ROW FORMAT DELIMITED FIELDS TERMINATED BY \t COLLECTION ITEMS TERMINATED BY , MAP KEYS TERMINAT…...

OpenMesh 网格简化之顶点聚类

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 顶点聚类方法将落在给定大小体素中的所有顶点集中到单个顶点之上,其过程有点类似于点云体素下采样,之后再基于聚类之后的顶点重新连接面片,以达到网格简化的目的。 二、实现代码 #define _USE_MATH_DEFINES #in…...

C++ 类和对象篇(八) const成员函数和取地址运算符重载

目录 一、const成员函数 1. const成员函数是什么&#xff1f; 2. 为什么有const成员函数&#xff1f; 3. 什么时候需要使用const修饰成员函数&#xff1f; 二、取地址运算符重载 1. 为什么需要重载取地址运算符&#xff1f; 2. 默认取地址运算符重载函数 3. 默认const取地址运…...

k8s 集群安装(vagrant + virtualbox + CentOS8)

主机环境&#xff1a;windows 11 k8s版本&#xff1a;v1.25 dashboard版本&#xff1a;v2.7.0 calico版本&#xff1a; v3.26.1 CentOS8版本&#xff1a;4.18.0-348.7.1.el8_5.x86_64 用到的脚本&#xff1a; https://gitcode.net/sundongsdu/k8s_cluster 1. Vagrant创建…...

8、Docker数据卷与数据卷容器

一、数据卷(Data Volumes) 为了很好的实现数据保存和数据共享&#xff0c;Docker提出了Volume这个概念&#xff0c;简单的说就是绕过默认的联合文件系统&#xff0c;而以正常的文件或者目录的形式存在于宿主机上。又被称作数据卷。 数据卷 是一个可供一个或多个容器使用的特殊目…...

大数据与Hadoop入门理论

一、大数据的3种数据类型 1、结构化数据 可定义&#xff0c;有类型、格式、结构的强制约束 如&#xff1a;RDBMS&#xff08;关系型数据库管理系统&#xff09; 2、非结构化数据 没有规律没有数据约束可言&#xff0c;很复杂难以解析 如&#xff1a;文本文件&#xff0c;视…...

持续集成部署-k8s-深入了解 Pod:探针

持续集成部署-k8s-深入了解 Pod:探针 1. 探针分类2. 探针探测方式3. 探针参数配置4. 启动探针的应用5. Liveness 探针的应用6. Readiness 探针的应用1. 探针分类 Kubernetes 中的探针是指容器内的进程用于告知 Kubernetes 组件其自身状态的机制; Readiness Probe:就绪探针用…...

来单提醒/客户催单 ----苍穹外卖day9

来单提醒 需求分析 代码开发 注意:前端请求的并不是8080端口;而是先请求Nginx,Nginx进行反向代理以后转发到8080端口 这段代码首先创建了一个orders类用于更新订单状态 并且在更新状态后使用websocket发送给后端提醒 将信息放在map后,使用json的string化方式传给一个接收对象,…...

【单片机】18-红外线遥控

一、红外遥控背景知识 1.人机界面 &#xff08;1&#xff09;当面操作&#xff1a;按键&#xff0c;旋转/触摸按键&#xff0c;触摸屏 &#xff08;2&#xff09;遥控操作&#xff1a;红外遥控&#xff0c;433M/2.4G无线通信【穿墙能力强】&#xff0c;蓝牙-WIFI-Zigbee-LoRa等…...

【Node.js】module 模块化

认识 node.js Node.js 是一个独立的 JavaScript 运行环境&#xff0c;能独立执行 JS 代码&#xff0c;可以用来编写服务器后端的应用程序。基于Chrome V8 引擎封装&#xff0c;但是没有 DOM 和 BOM。Node.js 没有图形化界面。node -v 检查是否安装成功。node index.js 执行该文…...

Vue中如何进行分布式日志收集与日志分析(如ELK Stack)

在Vue中实现分布式日志收集与日志分析&#xff08;使用ELK Stack&#xff09; 日志收集和分析在现代应用程序中是至关重要的&#xff0c;它们可以帮助开发人员监视和诊断应用程序的行为&#xff0c;从而提高应用程序的稳定性和性能。ELK Stack&#xff08;Elasticsearch、Logs…...

java学习--day23(线程池)

1.线程池Pool 线程池一个容纳了多个线程的容器&#xff0c;其中的线程可以反复的使用。省去了频繁创建线程的对象的操作&#xff0c;无需反复创建线程而消耗更多的资源 在 Java 语言中&#xff0c;并发编程都是通过创建线程池来实现的&#xff0c;而线程池的创建方式也有很多种…...

Unity Golang教程-Shader编写一个流动的云效果

创建目录 一个友好的项目&#xff0c;项目目录结构是很重要的。我们先导入一个登录界面模型资源。 我们先创建Art表示是美术类的资源&#xff0c;资源是模型创建Model文件夹&#xff0c;由于是在登录界面所以创建Login文件夹&#xff0c;下面依次是模型对应的资源&#xff0c…...

Python数据攻略-Pandas与地理空间数据分析

地理空间数据分析已经成为数据分析不可或缺的一部分。无论是在城市规划、交通分析,还是在环境科学中,地理空间数据都发挥着关键作用。 本文将为初学者和新手提供一个详细的指南,通过使用Python的Pandas库和Geopandas库,来进行地理空间数据分析。 文章目录 用Pandas处理地理…...

华为五级流程体系(L1-L5) 、流程框架、实施方法与最佳实践108页PPT

一、华为流程体系 业务流程持续变革促进华为业务的高速发展,持续管理变革&#xff0c;降低运作成本、提升运作效率&#xff0c;实现对客户端到端优质交付.把过去&#xff0c;好的方法固话下来。推广出去&#xff0c;提高效率和质量降低业务风险;提供多条路径和方法&#xff0c;…...

基于SpringBoot + Vue的校园流浪动物救助平台

文章目录前言一、详细操作演示视频二、具体实现截图三、技术栈1.前端-Vue.js2.后端-SpringBoot3.数据库-MySQL4.系统架构-B/S四、系统测试1.系统测试概述2.系统功能测试3.系统测试结论五、项目代码参考六、数据库代码参考七、项目论文示例结语前言 &#x1f49b;博主介绍&#…...

保姆级教程:用Python复现MIT Cheetah的刚体模型与正运动学(附代码)

从零实现MIT Cheetah四足机器人刚体建模与运动学仿真 四足机器人一直是机器人领域的热门研究方向&#xff0c;而MIT Cheetah作为开源四足机器人中的佼佼者&#xff0c;其设计理念和算法实现值得每一位机器人爱好者深入研究。本文将带你从零开始&#xff0c;用Python完整实现MI…...

Univer全栈框架实战指南:3步构建企业级AI原生表格应用

Univer全栈框架实战指南&#xff1a;3步构建企业级AI原生表格应用 【免费下载链接】univer Build AI-native spreadsheets. Univer is a full-stack framework for creating and editing spreadsheets on both web and server. With Univer Platform, Univer Spreadsheets is d…...

Z-Image-Turbo-辉夜巫女快速入门:10分钟完成Dify工作流集成与调用

Z-Image-Turbo-辉夜巫女快速入门&#xff1a;10分钟完成Dify工作流集成与调用 想在自己的应用里快速加上AI画图功能&#xff0c;但又不想写一堆复杂的代码&#xff1f;今天咱们就来聊聊怎么把Z-Image-Turbo-辉夜巫女这个挺火的图像生成模型&#xff0c;轻松集成到Dify平台的工…...

linux https拦截与url解析

uprobe 拦截TLS库 用 eBPF uprobe 拦截 TLS 库&#xff08;OpenSSL/GnuTLS/Go TLS&#xff09;&#xff0c;在加密前 / 解密后捕获明文 HTTP 请求&#xff0c;即可解析出 HTTPS URL&#xff0c;无需 CA 证书、无需修改应用。 核心原理 HTTPS 明文&#xff08;含 URL&#xf…...

Phi-4-mini-reasoning应用场景:数学建模竞赛辅助推导与公式生成

Phi-4-mini-reasoning应用场景&#xff1a;数学建模竞赛辅助推导与公式生成 1. 模型概述与核心能力 Phi-4-mini-reasoning是一款由微软开发的轻量级开源模型&#xff0c;专为数学推理、逻辑推导和多步解题等强逻辑任务设计。这个3.8B参数的模型虽然体积小巧&#xff0c;但在数…...

传统文化与现代AI结合:Guohua Diffusion国风绘画商业应用案例

传统文化与现代AI结合&#xff1a;Guohua Diffusion国风绘画商业应用案例 1. 国风绘画生成工具概述 Guohua Diffusion是一款专为国风绘画设计的本地生成工具&#xff0c;基于原生Guohua-Diffusion模型开发。这款工具完美融合了中国传统绘画艺术与现代AI技术&#xff0c;为艺术…...

如何快速掌握ViGEmBus虚拟手柄驱动:新手5分钟完全指南

如何快速掌握ViGEmBus虚拟手柄驱动&#xff1a;新手5分钟完全指南 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 你是否遇到过这样的困扰&#xff1a;心爱的…...

HY-MT1.5-1.8B功能体验:格式保留翻译,完美处理srt字幕和网页标签

HY-MT1.5-1.8B功能体验&#xff1a;格式保留翻译&#xff0c;完美处理srt字幕和网页标签 1. 引言&#xff1a;翻译模型的新挑战 在全球化内容爆炸式增长的今天&#xff0c;传统翻译工具面临两大核心痛点&#xff1a; 格式丢失问题&#xff1a;翻译srt字幕、HTML网页等内容时…...