做简单手机网站多少钱呀建设一中校园网站
2026/3/26 22:58:44 网站建设 项目流程
做简单手机网站多少钱呀,建设一中校园网站,湛江做网站多少钱,wordpress hao123声明本文仅供学习交流使用, 如侵立删#xff01;目标网址aHR0cHM6Ly95LnFxLmNvbS8JSVMPJSVMP是一种JS代码虚拟化保护技术 原理是将JS源代码编译成自定义的字节码 这些字节码由操作码和操作数组成 并且这些字节码只能由特定的解释器执行 类比于解释型语言的实现与执行 比如 Jav…声明本文仅供学习交流使用, 如侵立删目标网址aHR0cHM6Ly95LnFxLmNvbS8JSVMPJSVMP是一种JS代码虚拟化保护技术原理是将JS源代码编译成自定义的字节码这些字节码由操作码和操作数组成并且这些字节码只能由特定的解释器执行类比于解释型语言的实现与执行比如Java代码编译成Java字节码由JVM执行python代码编译成python字节码由CPython执行也就是说JSVMP的本质是自定义字节码 JS虚拟机的代码保护方案目标代码访问QQ音乐网址使用关键字 P(r.data)进行搜索即可找到加密参数sign生成的代码位置然后查看P函数代码进入到了一个JSVMP中这个JSVMP就是反编译的目标代码JSVMP代码结构浏览器中的JSVMP主要由两部分组成加密自定义字节码自定义虚拟机JSVMP代码优化在自定义虚拟机中会对加密自定义字节码进行解密并且在自定义虚拟机中有两个相同的自定义解释器第一个解释器第二个解释器针对自定义虚拟机的代码结构和运行流程对其进行优化方便后续反编译与调试首先对加密自定义字节码进行解密得到解密后的自定义字节码然后删除与解密相关函数最后对两个相同的自定义解释器进行适当的修改保留其中一个解释器自定义虚拟机自定义虚拟机主要分成三部分执行环境(VMcontext)对计算机执行环境的抽象模拟在执行环境中最重要的就是存储上下文环境信息的容器根据这个容器结构区分当前虚拟机是栈式虚拟机还是寄存器虚拟机调度器(Dispatcher)通过for循环和switch这种分发器结构实现的调度器控制着程序正确的运行(取指和译码)在调度器中最关键的就是程序计数器PC程序计数器控制着程序的执行流程程序集(Handlers)解释程序集由switch语句中的所有case块组成每个case块对应一种自定义操作码的处理逻辑反编译根据程序集中不同case块所对应的处理逻辑构建出相应的ast节点从而生成js源代码的ast形式最后将构建的ast转换成可读的js源代码便完成了jsvmp的反编译将JSVMP代码复制到Node环境中引入Babel库然后对虚拟机函数进行适当的修改再创建一个数组变量保存构建的ast节点当虚拟机函数执行完后将数组变量转换成program节点最后将其转换成对应的js源码写入到result_code.js文件中自定义操作码节点构建在JSVMP中程序集一共有82个case块根据执行流程对执行case块进行相应的ast节点构建因为case块比较多这里只挑选其中几个进行讲解case 2(函数声明)case 46(函数声明)case 2与case 46节点构建case 21(算术运算)case 21节点构建反编译结果对所有执行case块进行相应的节点构建后运行程序就得到了一份反编译代码查看反编译代码很容易就找到了加密方式加密结果拼接还有几个环境检测运行环境检测因为反编译后的代码有些难以阅读同样需要进行优化这时可以选择手动优化也可以选择使用AI进行优化这里我选择使用AI进行优化优化完成后就得到了一份程序功能等价可阅读性和可调试性更高的代码将优化后的代码替换浏览器的JSVMP代码然后查看加密结果最后查看验证请求成功的通过了验证说明反编译代码没有问题

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询