Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Например, запретить onload/onerror для скриптов на сайтах с подобной дрянью, переопределив пустым сеттером, добавить zfgloadedpopup === true и, по желанию, сломать геттер у свойства 'content' стилей.
var estraverse = require('estraverse');
(function() {
module.exports = function (ast){
var count = 0;
estraverse.replace(ast, {
enter: function(n, p){
if(n.type == 'ConditionalExpression' &&
n.test.type == 'BinaryExpression' &&
n.test.left.type == 'Literal' &&
n.test.right.type == 'Literal'){
count++;
var l = n.test.left.value;
var r = n.test.right.value;
var test;
switch(n.test.operator){
case '>': test = l > r; break;
case '>=': test = l >= r; break;
case '<': test = l < r; break;
case '<=': test = l <= r; break;
}
return test ? n.consequent : n.alternate;
}
return n;
}
});
return count;
};
}());
var estraverse = require('estraverse');
(function() {
module.exports = function (ast){
estraverse.replace(ast, {
enter: function(n, p){
if(n.type == 'SequenceExpression' && n.expressions.length == 2){
return n.expressions[1];
}
return n;
}
});
};
}());
X.document.write(decodeURIComponent(M) + (nn + F + Sn + Ln + nn + yt + Ln + Vn + z + R + S + vn + L + pn + H + Jn + Dn + Fn + E + Ln + Qn + Fn + Cn + Rn + Qn + vn + W + Ln + vn + P + nn + F + Sn + T + yt + pn + N + G + Ln + vn + yt + Bn + Dn + Vn + pn + _n + w + k) + m.href + y + decodeURIComponent(b + O + g + b + Z + v + p + I3x.Y2h + b + O + s + b + O + g + b + Z + A + C + x + b + O + s + b + O + g + l + d + b + O + s + b + O + g + b + Z + A + jn + a + f + b + O + s + b + O + g + b + Z + u + b + O + s))
Деобфускация одного скрипта с попапами