JS常见加密混淆方式

  • 2020 年 10 月 12 日
  • 笔记

前端js常见混淆加密保护方式

代码压缩:去除空格、换行等
代码加密:eval、emscripten、WebAssembly等
代码混淆:变量混淆、常量混淆、控制流扁平化、调试保护等

eval方法等字符串参数

emscripten

核心:C/C++
编译:emscripten
结果:asm.js
调用:JavaScript

WebAssembly

核心:C/C++
结果:wasm文件
调用:JavaScript

js混淆实现

JSFuck

AAEncode

JJEncode

代码压缩

变量名混淆

字符串混淆

自我保护,比如卡死浏览器

控制流平坦化


僵尸代码注入

对象键名替换

禁用控制台输出

调试保护,比如无限Debug,定时Debug

域名锁定