aHR0cDovL2NyZWRpdC5jdXN0b21zLmdvdi5jbi9jY3Bwd2Vic2VydmVyL3BhZ2VzL2NjcHAvaHRtbC9sb3N0Y3JlZGl0Lmh0bWw=
nUdYJ1Ji
hook xhr值
var code2 = function(){var open = window.XMLHttpRequest.prototype.open;window.XMLHttpRequest.prototype.open = function (method, url, async){ if (url.indexOf("nUdYJ1Ji")>-1){ debugger; } return open.apply(this, arguments);};};var script = document.createElement('script');script.textCOntent= '(' + code2 + ')()';(document.head||document.documentElement).appendChild(script);script.parentNode.removeChild(script);
用插件什么的自己随便找一个就行
处理一下console.log 被重写的问题 作者太笨直接用插件重写了
hook到参数的位置
跟栈到这里 可以发现在send这里是没有加密的
所以加密在上一个调用栈 _$fJ
_$fJ
_$_x
在平坦流中定位到加密入口
继续 加入已加密的arguments进行日志断点
可以发现在判断值为100---》30----》30----》60这个流程完成的加密
进一步进行插桩断点 (若是在这一步进行判断断点的话会发现再此之前已经完成了加密 说明有其他变量已经存储了我们的加密 这时候只能把变量台中的可疑变量都拿出来 再进行一步插桩)
在进行一次插桩断点 把可疑的值带上一起
v_log(_$ly+'----'+_$bi['_$_W']+'----'+_$cO[2]['_$_W']+'----'+_$h4[2]['_$_W']+'----'+_$ha[2][2]['_$_W']+'-----'+Array.prototype.slice.call(_$ha[0])[1])
进行插桩判断这个值的走向 进行断点
v_log(_$hT);window.LSL.push(_$hT);if(LSL[LSL.length-1]==5 && LSL[LSL.length-2]==30 && LSL[LSL.length-3]==5){true}
断点到这里发现还是有加密的参数 不管了 进行跟栈看看吧
qq 320783214