海關 瑞數5.5 找後綴加密入口解析
RS5.5 的加密 解決方法RPC 插樁找入口
- 站點
aHR0cDovL2NyZWRpdC5jdXN0b21zLmdvdi5jbi9jY3Bwd2Vic2VydmVyL3BhZ2VzL2NjcHAvaHRtbC9sb3N0Y3JlZGl0Lmh0bWw=
- 加密參數:
nUdYJ1Ji
過一下debugger
- 自己想辦法
找到加密入口
-
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
- 這個函數可以發現和瑞數5 的加密有點相似
- 可以到這裡已經完成加密了 加密的上一個函數是
-
在平坦流中定位到加密入口
- 先打一個日記斷點 重新點擊下一步 查看這個判斷的值的走勢以及到最後哪些變量中有我們的加密值
-
繼續 加入已加密的arguments進行日誌斷點
-
可以發現在判斷值為100—》30—-》30—-》60這個流程完成的加密
-
進一步進行插樁斷點 (若是在這一步進行判斷斷點的話會發現再此之前已經完成了加密 說明有其他變量已經存儲了我們的加密 這時候只能把變量台中的可疑變量都拿出來 再進行一步插樁)
- 到這裡很容易看出來我們判斷的arguments還沒加密 但是有點變量裏面已經把這個url加密了 所以我們要找到這些可疑變量加密的位置
-
在進行一次插樁斷點 把可疑的值帶上一起
v_log(_$ly+'----'+_$bi['_$_W']+'----'+_$cO[2]['_$_W']+'----'+_$h4[2]['_$_W']+'----'+_$ha[2][2]['_$_W']+'-----'+Array.prototype.slice.call(_$ha[0])[1])
- 這次可以發現加密的判斷值流程變了在30—5—62完成加密
-
進行插樁判斷這個值的走向 進行斷點
v_log(_$hT);window.LSL.push(_$hT);if(LSL[LSL.length-1]==5 && LSL[LSL.length-2]==30 && LSL[LSL.length-3]==5){true}
-
斷點到這裡發現還是有加密的參數 不管了 進行跟棧看看吧
- 其實還可以進一步進行插樁看看怎麼到底在哪加密的 判斷這加密後綴長度為96即可
- 我們跟棧發現 到這個apply函數就沒有加密的參數了
- apply函數的用法可以自己百度看看
- 主要看apply前面的函數
- 繼續查看調用棧
- 繼續查看調用棧
- 繼續跟棧 終於找到了這個加密入口
完結 後續的扣代碼或者RPC都可以試試
qq 320783214