JS逆向 | 某售房网高度混淆分析(二)

声明:本文只作学习研究,禁止用于非法用途,否则后果自负,如有侵权,请告知删除,谢谢!

本文接着上篇文章分析,没看过的请先看《JS逆向 | 某售房网高度混淆及浏览器指纹分析(一)》

 直接搜索this[Y],清空cookie后在下图断点并刷新页面
JS逆向 | 某售房网高度混淆分析(二)_第1张图片
 成功断在此处,这里的function(e, f)为回调函数,后面再看。F11跟进
JS逆向 | 某售房网高度混淆分析(二)_第2张图片
 这里的c同样在获取浏览器环境信息,具体自行跟进查看。然后到这
JS逆向 | 某售房网高度混淆分析(二)_第3张图片
 将c传入fontsKey进行处理,跟进看下
JS逆向 | 某售房网高度混淆分析(二)_第4张图片
 三元运算为false,因此调用后面的jsFontsKey函数,传入前面的c和回调函数,继续跟进
JS逆向 | 某售房网高度混淆分析(二)_第5张图片
 前面一大堆都在操作DOM,最后生成这个x列表,push进a列表中,a即为前面的c,最后执行d(a),d为之前的回调函数。直接把这个x拿来用即可。现在再看下回调函数
JS逆向 | 某售房网高度混淆分析(二)_第6张图片
 先将c按一定规则分成d和e列表,再经过x64hash128运算得到n,再传回给一开始的那个回调函数,继续跟进查看
JS逆向 | 某售房网高度混淆分析(二)_第7张图片
 最后回到这里,将传入的c(即这里的f)经过类似VD、WD等函数调用后,一个个push到this[Y]中。VD、WD等如下:
JS逆向 | 某售房网高度混淆分析(二)_第8张图片
 就是生成键值对而已,这里就不一一分析了,具体请自行跟进,有些还是作过函数处理的。最后生成类似如下:
JS逆向 | 某售房网高度混淆分析(二)_第9张图片
 经过对比,与上篇中生成的this[Y]相同,至此全部分析完毕。这个难的就是有好多回调函数,很容易搞混。代码我就不扣了,简单说下那些常量的逻辑
JS逆向 | 某售房网高度混淆分析(二)_第10张图片
 通过定义了固定的ok字符列表,然后传入匿名函数a
JS逆向 | 某售房网高度混淆分析(二)_第11张图片

 然后这里对常量赋值,把这些部分截取出来就行了。其它缺啥补啥。对于怎么模拟浏览器指纹的,请参考这篇《JS逆向 | 骚操作教你如何伪造浏览器环境》

 同时欢迎关注我的公众号“逆向新手”,逆向系列将持续更新!

你可能感兴趣的:(JS逆向 | 某售房网高度混淆分析(二))