Einer meiner Freund-Gefilde, dass sein Chrome-Browser-Tab manchmal in "tamll.com" geändert wurde, welches die größte Shopping-Website in China war.Hier ist eine neue Art von Ad-Javascript durch Änderung "window.opener.location", wie kann ich es blockieren?
Zuerst denke ich, dass es durch eine Malware verursacht werden kann. Aber er hat ein sauberes Betriebssystem und er hat alles in seinem Computer überprüft. Dann habe ich this javascript gefunden. Der Code befindet sich immer am Ende dieser Frage. Und dieses Skript ist in "bbs.gfan.com" enthalten.
Das Skript verwendet window.opener.location, um die Webseite eines anderen Browser-Tabs zu ändern. Wenn Sie irgendwelche Seiten in "bbs.gfan.com" von google.com öffnen (zum Beispiel "bbs.gfan.com" in Google suchen und auf die erste Antwort klicken), prüft dieses Skript, ob der window.opener nicht null ist, und setze die window.opener.location auf _5had0w.mall. Dann wird der window.opener Tab auf die neue Adresse gesprungen.
Gibt es eine Möglichkeit, ein Skript zu blockieren, wenn es versucht, window.opener.location zu ändern? Oder gibt es eine Möglichkeit, die window.opener.location direkt zu deaktivieren?
Ich denke, eine normale Webseite wird diese Variable niemals ändern, sie darf nur von einem solchen Ad-Skript verwendet werden.
Diese Art von Anzeigen-Skript hat mich krank gemacht. Es ist nicht nur eine Anzeige Homepage öffnen, sondern auch wird eine andere Webseite gegangen ...
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) {}
}
Scheint nicht zu passieren für mich, können Sie angeben, welche Browser davon betroffen sind? – sg3s
Google Chrome Browser – user1260771