javascript反混淆

 

有一些js代码由于代码保护的原因会增加混淆, 使代码逻辑看不懂, 这时可以使用部分反混淆工具对代码进行部分还原.

常用工具介绍

混淆工具

反混淆工具

使用python库还原字面量

针对数组类混淆, 可以找出变量函数然后进行代码替换

先使用jsbeautifier进行一遍格式化

安装python库PyExecJS

pip install PyExecJS

参考如下代码deobfuscate-javascript, 手动找到混淆函数

如果碰到UnicodeEncodeError: 'gbk' codec can't encode character '\U0001f55b' in position 7226: illegal multibyte sequence, 则修改subprocess.py文件,如C:\Users\Lenovo\AppData\Local\Programs\Python\Python39\Lib\subprocess.py, 中的class Popen->def __init__->encoding=None改成encoding="utf-8"


参考