当开发者或安全研究人员想了解一个web应用下的js是否存在漏洞,流氓行为,以及是否由侵权及不合规问题时,往往发现遇到的js已经被混淆加密了,非常难以阅读,甚至看起来像天书。这个时候要么放弃,要么作为有追求的大佬可能想到将这个js代码进行反混淆,目的是让代码重新变得容易阅读。网上人们所说的Javascript DeObfuscator 都是指对JavaScript 代码混淆并消除混淆的描述。 就如前面所说的一样,它对 JavaScript 混淆代码进行重新编码,将其恢复为原始代码。
Deobfuscate.io一个简单但功能强大的反混淆器,用于消除常见的 JavaScript 混淆技术和工具,它主要采取以下原理:
1.解压包含文字(字符串、数字等)的数组并替换对它们的所有引用
2.删除简单代理函数(调用另一个函数)、数组代理函数和算术代理函数(二进制表达式)
3.简化算术表达式
4.简化字符串连接
5.重命名不可读的十六进制标识符(例如 _0xca830a)
6.将计算转换为静态成员表达式并美化代码
deobfuscate.io反混淆
MindedsecurityRaz1nerDejsYuanRenXue反混淆过程中支持:特征检查 ,字面量可视化, 简化重复值, 控制流复原, 删除死代码, 强制删除死代码等多种处理模式和选项。