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
_$_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