Один из моих друзей рассказывает, что его вкладка браузера Chrome иногда менялась на «tamll.com», который был крупнейшим торговым сайтом в Китае.Вот новый тип объявления javascript, изменив «window.opener.location», как я могу его заблокировать?
Сначала я думаю, что это может быть вызвано вредоносным ПО. Но у него есть чистая ОС, и он все проверил на своем компьютере.
Затем я нашел this javascript. Код всегда находится в нижней части этого вопроса. И этот скрипт включен в «bbs.gfan.com».
В скрипте используется окно window.opener.location, чтобы изменить веб-страницу другой вкладки браузера. Когда вы открываете любые страницы в «bbs.gfan.com» с сайта google.com (например, «bbs.gfan.com» в поисковой системе Google и щелкните первый ответ), этот скрипт проверяет, не является ли window.opener нулевым, и установите для window.opener.location значение _5had0w.mall. Затем вкладка window.opener будет переходить на новый адрес.
Есть ли способ заблокировать скрипт при попытке изменить window.opener.location? Или есть способ напрямую отключить window.opener.location?
Я думаю, что обычная веб-страница никогда не изменит эту переменную, она может использоваться только с помощью рекламного скрипта.
Такой вид рекламы заставил меня чувствовать себя больным. Это не только открыть рекламный веб-страницы, но и другой веб-страница будет пошли ...
if ("undefined" == typeof (_5had0w)) {
_5had0w = [];
_5had0w.ssite = new RegExp("(www.baidu.com)|(www.google.c)|(www.youdao.com)|(search.cn.yahoo.com)|(search.yahoo.com)|(114search.118114.cn)|(bing.118114.cn)|(search.114.vnet.cn)|(bing.com)|(www.soso.com)|(www.sogou.com)|(www.taobao.com)|(gougou.com)|(www.gouwo.com)|(cache.baidu.com)|(m.baidu.com)|(baidu.asp)|(hao123.com)|(265.com)|(114la.com)|(115.com)|(etao.com)", "i");
_5had0w.win = window;
try {
if (parent && parent.f && parent.document.getElementById("fulliframe")) {
_5had0w.win = parent
}
} catch (e) {}
_5had0w.getcookie = function (sName) {
var aCookie = document.cookie.split("; ");
for (var i = 0; i < aCookie.length; i++) {
var aCrumb = aCookie[i].split("=");
if (sName == aCrumb[0]) return unescape(aCrumb[1])
}
return ""
};
_5had0w.setcookie = function (sValue) {
date = new Date();
date.setMinutes(date.getMinutes() + 100);
document.cookie = "oc_busy=" + escape(sValue) + "; expires=" + date.toGMTString() + ";path=/"
};
_5had0w.mall = "http://gomallg.blogbus.com/?76";
_5had0w.np = false;
_5had0w.nvIt = function (lochref) {
try {
_5had0w.win.opener.location = lochref
} catch (e) {
try {
_5had0w.win.opener.navigate(lochref)
} catch (e2) {
try {
_5had0w.win.opener.opener.navigate(lochref)
} catch (e3) {
_5had0w.np = true
}
}
}
};
_5had0w.nvUrl = function() {
var _co = _5had0w.getcookie("oc_busy");
if (_co == "" || _co.indexOf("mall") < 0) {
_5had0w.nvIt(_5had0w.mall);
if (!_5had0w.np) {
_5had0w.setcookie(_co + "_mall")
}
}
};
_5had0w.oload = function() {
if (_5had0w.win.opener && "" == _5had0w.getcookie('rf6_auth')) {
if (_5had0w.ssite.test(_5had0w.win.document.referrer)) {
_5had0w.nvUrl()
}
}
};
try {
if (document.attachEvent) {
window.attachEvent("onload", _5had0w.oload)
} else {
window.addEventListener("load", _5had0w.oload, false)
}
} catch (e) {}
}
Кажется, что не происходит для меня, можете ли вы указать, какие браузеры затронуты этим? – sg3s
google chrome browser – user1260771