echo094 / decode-js

JS混淆代码的AST分析工具 AST analysis tool for obfuscated JS code
MIT License
717 stars 336 forks source link

obfuscator: 无法识别不含有rotate-function的旧版本string-array模版 #115

Closed goodwenhao closed 2 months ago

goodwenhao commented 3 months ago

Which plugin are you reporting a bug for?

obfuscator

Version of Node

18.20.4

Input code

https://github.com/goodwenhao/study/blob/main/test2

Additional context

类型: obfuscator 输入: input.js 输出: output.js 还原数值... 处理全局加密... Try v3 mode... Try v2 mode... Essential code missing! Cannot find string list!

echo094 commented 3 months ago

这个样本的string array是数组,且不含有排序函数,导致它无法被已知的obfuscator混淆特征所匹配。

目前的匹配方案是当string array是数组时,先匹配排序函数,然后定位其它必要内容。

goodwenhao commented 2 months ago

这个样本的string array是数组,且不含有排序函数,导致它无法被已知的obfuscator混淆特征所匹配。

目前的匹配方案是当string array是数组时,先匹配排序函数,然后定位其它必要内容。

最新版还不行

echo094 commented 2 months ago

经过仔细比较,根据模版 StringArrayRC4DecodeTemplate 基本确认这个样本使用的版本在(0.25.0 <= v < 2.10.0)

后续会进行适配

echo094 commented 2 months ago

已更新