JS逆向常见情况

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

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

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

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

以下属于混淆范畴:

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

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

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

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

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

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

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

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

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

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值