技术解析

如何读懂一个混淆过的 js 文件(变量全是 ABCDEFG)
0
2021-08-30 22:06:19
idczone

rt 求助~


努力看。。。。然后你就发现看不懂放弃了。。。现在的 js 有两次处理,一种是压缩,就是把变量和空格减少长度,还有就是混淆,混淆过的代码,能逆向出传参能调用就算 nb 了,想读懂,估计要罢人脑升级为量子的吧

devtools 里 overide 打断点,写 console 调试

混淆而已,比编译过的 smali 都好太多了,更不用说汇编。
起码处理一下,把格式展开,变量函数改成 var_1,func_1 这样的还好一些。

哭了 是一个很简单的 js (淘宝下载页的逻辑)

打断点慢慢看

感谢
overide 好用

淘宝啊,淘宝的就更恶心了,字符串拆分重组是家常便饭,你能轻松读懂对得起淘宝的工程师么

举个简单的例子 比如 addEventListener,在淘宝里首先要拆成 add,Event,Listener,然后每一个反序为 dda,tnevE,renetsiL,这个我是真见过这么玩的,淘宝的混淆绝对不是简单的变量函数名替换,花样超出你想象

不要想着全部读懂,只去找自己关心的部分.从一小部分开始.代码拉出来格式化,尝试将混淆过的变量名改名.理清各个作用域.
这玩意没什么套路,就是细致的一点一点看.
你只要相信浏览器能看懂,你也能看懂,很累就是了

不一定要看懂, 找关键函数被调用的地方,打断点看参数, 然后直接调用被混淆的代码

哈哈哈我目前看的下载页的混淆还好 就是 abcde addeventlistener 还是在的

想找到自己想哟的那块关键代码 死活找不到 真是哭了
是的 但是找不到 自己要的那块代码疯狂打断点了现在

前几天做的 https://uvwvu.xyz/JavaScript/deobfuscate-JavaScript.rs

先过个 JSNice 再看

只能一点点看,打断点

一般看混淆后代码总归有特定的目的。
先 beautify 一下,打断点,定位到要找的目标代码大概位置,然后慢慢看。
可以用代理工具替换下,边改边看,一些局部变量,压缩后变成三元运算符,多个逗号分隔的表达式可以改写成看起来方便的代码。

你预估用别人写代码的十分之一时间去读,应该可以的。打乱的代码只是读起来费时间。

阿里有个代码 chrome 直接 pretty 不行,看前面写了类似((((((((((((((((((((((((((((((())))))))))))))))))))))))))这样大量无用的标签闭合,是想让 chrome 直接报错放弃美化么?

想办法格式化

在 dom 上打断点试试

以前尝试过找 JS 存在内存中的变量,也是想反向看代码没看明白,最后用 Memory 找到的 https://www.cnblogs.com/jffun-blog/p/8724252.html
感觉即使是普通压缩过想读懂也是太难了

感谢 还不错的样子
好尴尬不能直接打开那个链接
感谢 jsnice 可以哈哈哈
同意 只能勉强找到自己需要的代码了

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服