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

JS逆向常见情况

分类:JS压缩混淆加密     与   URL/API参数的加密

代码压缩:去除不必要的空格换行等内容,使源码变成几行,大大降低可读性并提升网站加载速度

代码混淆:使用变量替换、字符串阵列化、控制流平坦化、多态变异、僵尸函数、调试保护等手段,使代码变得难以阅读跟分析

代码加密:通过某种手段将代码加密,转化成人无法阅读或者解析的代码,如借用WebAssembly技术,可以将JS代码用C++实现,JS调用编译后的文件进行执行

以下属于混淆范畴:

字符串混淆:将字符串阵列化集中放置并可进行MD5或base64加密存储,使代码中不出现明文字符串,这样可以避免使用全局搜索字符串的方式定位到入口

对象键名替换:针对JS对象的属性进行加密转化,隐藏代码之间的调用关系

控制流平坦化:打乱函数原有的代码的执行流程,使代码逻辑变得混乱无序

无用代码注入:注入不被执行的代码,更加混乱

调试保护:基于调试器特性,对当前运行环境进行检验,加入一些debugger语句,使其在调试模式下难以顺利执行js语句

多态变异:是JS代码每次被调用时:将代码自身立刻自动发生变异,变为与之前完全不同的代码,即功能完全不变,只是代码形式变异,以此杜绝代码被动分析和调试

域名锁定:使JS代码只能在指定域名下执行

代码自我保护:如果对JS进行格式化,则无法执行,导致浏览器假死

特殊编码:将JS完全编码为人不可读的代码,如表情符号

禁用控制台输出:运行JS时无输出,增大了调试难度

http://www.lryc.cn/news/91472.html

相关文章:

  • 利用matlab对滤波器频率特性分析
  • 对比 RS232,RS422,RS485
  • python使用requests+excel进行接口自动化测试(建议收藏)
  • 华为OD机试真题 Java 实现【食堂供餐】【2023 B卷 考生抽中题】,附详细解题思路
  • 一分钟学一个 Linux 命令 - cd
  • vi(vim)常用命令汇总
  • 模特信息管理系统的开发与实现(ASP.NET,SQLServer)
  • 文件上传漏洞
  • 前端还是后端,该怎么选择
  • 【Python】Python系列教程-- Python3 循环语句(十七)
  • chatgpt赋能python:Python如何变为列表
  • 高频面试八股文用法篇(二) hive中几种排序类型区别
  • linuxOPS基础_linux umask
  • K8s基础核心
  • Web开发中的图片管理:策略与实践
  • SNK施努卡 - 机器视食品检测 食品中视觉检查的作用是什么?
  • 【七】设计模式~~~结构型模式~~~桥接模式(Java)
  • Python 教程:使用 pandas 和 glob 库合并多个 Excel 文件
  • 16. Vue-element-template记住密码
  • Python文件打包成exe文件
  • 【简单实用框架】【十大排序算法直接调用】【可移植】
  • 微服务架构之RPC调用
  • One2Multi Graph Autoencoder for Multi-view Graph Clustering
  • Java编程实现输入数的阶乘(for循环):读入一个小于 10 的整数 n,输出它的阶乘 n。(for循环)
  • 算法提高-搜索-FloodFill和最短路
  • 【蓝桥杯单片机第八届国赛真题】
  • 一种简单的Android骨架屏实现方案----0侵入0成本
  • 【Kubernetes 架构】了解 Kubernetes 网络模型
  • shell
  • springboot+ssm+java校园二手物品交易系统vxkyj