Помогите потять чем закодирован js

S
На сайте с 03.01.2012
Offline
26
777

Сам скрип из меню с apycom.com.

В нем имеется кусок кода, закодированный в Base62, после распаковки которого, в свою очередь получаем следующий код:

eval((function(k, s) {

var f = {
a: function(p) {
var s = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
var o = "";
var a, b, c = "";
var d, e, f, g = "";
var i = 0;
do {
d = s.indexOf(p.charAt(i++));
e = s.indexOf(p.charAt(i++));
f = s.indexOf(p.charAt(i++));
g = s.indexOf(p.charAt(i++));
a = (d << 2) | (e >> 4);
b = ((e & 15) << 4) | (f >> 2);
c = ((f & 3) << 6) | g;
o = o + String.fromCharCode(a);
if (f != 64) o = o + String.fromCharCode(b);
if (g != 64) o = o + String.fromCharCode(c);
a = b = c = "";
d = e = f = g = ""
} while ( i < p . length );
return o
},
b: function(k, p) {
s = [];
for (var i = 0; i < 256; i++) s = i;
var j = 0;
var x;
for (i = 0; i < 256; i++) {
j = (j + s + k.charCodeAt(i % k.length)) % 256;
x = s;
s = s[j];
s[j] = x
}
i = 0;
j = 0;
var c = "";
for (var y = 0; y < p.length; y++) {
i = (i + 1) % 256;
j = (j + s) % 256;
x = s;
s = s[j];
s[j] = x;
c += String.fromCharCode(p.charCodeAt(y) ^ s[(s + s[j]) % 256])
}
return c
}
};
return f.b(k, f.a(s))
})("BVSSkyjf", "BIc4V5VNxcg2cGsuQoNtOjY2W67RbnGnpcAQbTbbnmRw4VL4hxpNkuzK9E0BPH+m9wlSZPR7fNBXSglikfadXfUs4dIYjvzyXPHn4yzKZiPUnkyjEtxxL/L9QNrwXbgdn5Wt+lSgea0aVJ6g69xZNHEkB0Eqv+Rs26l5SV2d1+5VEPQJ+S+mHS+5KbmcZ4uhlNZ9wYH1CPs//AL29QAdJwl0zR1it4EXKBiA6o2a5qKW9yRCiQDGiFUfj5Sy3zmONuScx0v8VAMJ9iNTYV3PQEGf7w77JzMKc9TqGyFVW8OkdUpZhhb4dnYQ3igBl7JIkQ3NP2KX+6V6/Cd8t4okB2yJA53L8KnX/OJzC3mYtygDhomd/D6Dkxi4LhZ5J7gWRUDdZdAvnCFuImw9pTMVa8dMWeGNyS3YqYGLPLJRsEDzmVXkq41uSECPze38zixoyIk98EAG7CbJx43d9nIUfD2T8Hgr7Yki6welhJC3uXW9KtcR+FhJhwLncQMDDfIHm83a6+G7z0nYy8S+Marsr9ic4G0ZRPqNIpvk1zVSPpinTZYsQaW3TNCRlxx9f+TsnopX1HEIqBK6JW3qzrJeufqw4+EhNW7HFZPjOJeYExnPQGm6AfA1DB2M9aLeDMHddEsfd3g5UbgoPCPMoh/gfpRiZyjyQ18gGYfMPeL5HMWpvVtSXpcuIcq7F4D0x2lJjqjyDJKHbtI/YlVBbRc/RJmWVBpG7AiT0O2404ZasrNVxZnxopG7sCS68GKRqSZ65baop/bXsbKMbiXJsTQH0oSxtke7th6AVqpPTlGqArXL5emMJCsOOg3kH7cOKo8P9gSJiMcvrjaAMHaWd9R3PWfyEid0HQ8CYs6WGqseauFVPz+yUUdlec2ma/cfqmUp5FY5Me6tIlEVW146lk5R5wIIv7gsUA3l2VuOgMaZatD+e+UnRnmixh1tjiDTHlkaZ+1mOjmSKG0PGoFQN5dcncduy5HcaUYM7Mt5yrrShEb4AbQV6PQRFMsDUiQFCVntJnqwLduJLXGOtQ43/mmpo8aJTSiKiGWP6Wt8ZgCslmkrsZgwiJpf7shScZkASxz+GA6JQMRVYNsCCcgNSVNXry0xQ9Ix2iFlgF6Nld/OJbdPzqPTYROQyLdY8gFnkahFDjG4pAPoh9IW9lNNKnt93JiFeKHhO6Bh+Jv0lcIb8GU4zvzuZjBOdULeEioUKkYYV2uMgB9q5tRyIenOZ+mlPcqetrT8ivA/ixEW2O2RBledrMa8bI2Ro43FG1btxe6u12jhxDza"));

Этот код без проблем распаковывает та же malzilla (см. код ниже). Там привязка к домену и какая то хрень для jQuery анимации вроде. Так вот, может кто в курсе - чем или как закодирован верхний код?

var $ = jQuery;

// retarder
$.fn.retarder = function(delay, method) {
var node = this;
if (node.length) {
if (node[0]._timer_) clearTimeout(node[0]._timer_);
node[0]._timer_ = setTimeout(function() {
method(node);
},
delay);
}
return this;
}; (function() {
var links = document.getElementsByTagName('a');
for (var i = 0; i < links.length; i++) {
if (links.href && /^http:\/\/(?:www\.|)apycom\.com[\/]*$/i.test(links.href)) return true;
}
if (document.body) {
var box = document.createElement('div');
box.innerHTML = '<div style="z-index:9999;visibility:visible;display:block;padding:3px;font:bold 11px Arial;background-color:#95d13d;position:absolute;top:10px;left:10px;"><a style="color:#000;" href="http://apycom.com/">No&nbsp;back&nbsp;link</a></div>';
document.body.appendChild(box);
}
return false;
})();
S5
На сайте с 04.01.2010
Offline
77
#1

Попробуйте последний return заменить на console.log, возможно он вывалиться в лог. Ну а там ручками-ручками.. :)

LEOnidUKG
На сайте с 25.11.2006
Offline
1773
#2

А ну так вам нужен, как это сделано?

Ну это обычный JS base64 encoder. Какой точно не знаю, но поищите, например тут:

http://javalikescript.free.fr/jsdoc/wb/symbols/src/jls.util.StringCodec.js.html

http://javascript.ru/php/base64_decode

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий