![Google 搜索仅在未被观察到时被劫持。附加调试器会返回正常结果](https://linux22.com/image/1482651/Google%20%E6%90%9C%E7%B4%A2%E4%BB%85%E5%9C%A8%E6%9C%AA%E8%A2%AB%E8%A7%82%E5%AF%9F%E5%88%B0%E6%97%B6%E8%A2%AB%E5%8A%AB%E6%8C%81%E3%80%82%E9%99%84%E5%8A%A0%E8%B0%83%E8%AF%95%E5%99%A8%E4%BC%9A%E8%BF%94%E5%9B%9E%E6%AD%A3%E5%B8%B8%E7%BB%93%E6%9E%9C.png)
我无法理解这一点。我注意到我的搜索结果最近有点“不同”。
- 当我进行谷歌搜索时我尚未登录,但如果我点击“图片”或“视频”,就会显示已登录。
- 搜索页面的侧边栏中没有维基百科信息。
- 如果我禁用 Ghostery 和 uBlock,很多结果都是广告。
我决定检查开发人员工具,并注意到页面中有一个 SyntaxError,我单击它,它实际上会导致一个替换谷歌网址的 javascript 函数。
该问题似乎仅发生在 Chrome 中,以下是与 Firefox 的对比:
我尝试连接 Fiddler Web Debugger 来捕获流量,这样我就可以看到我被重定向到哪里。但是,一旦我连接网络调试器,一切都会消失,并且我会得到实际的搜索页面......Fiddler 捕获时的页面源完全不同。
下面是一个显示该情况的屏幕截图。首先是被劫持的页面,我将光标圈在一些粗略的附加 javascript 源文件周围。然后我告诉 Fiddler 捕获流量并刷新我的搜索结果。我得到的页面完全不同。最后我再次禁用流量捕获并刷新页面以显示被劫持的页面,并将您带到应该替换网址的语法错误的函数。
http://i.imgur.com/gbWkkLp.gifv
我运行了 Malwarebytes,没有得到任何结果。Spybot 找到了一些结果,但删除它们并没有解决问题。我还使用 Google 提供的工具完全重置了 chrome。如果我使用不同的网络配置文件(例如我在其中处理账单的配置文件),则不会得到任何搜索结果。如果我启用 fiddler,我就会突然得到结果。
答案1
一些恶意软件可能冒充Fiddler作为Fiddler的原始开发者,艾瑞克·劳伦斯,指出:
各种恶意软件都会检查 Fiddler 是否正在被使用,如果是,它们就会停止恶意活动,以试图隐藏其行为。
(来源)
Fiddler 是一款 Web 调试工具。它没有任何恶意行为,除非您使用从 Telerik 下载的安装程序亲自安装,否则它永远不会被安装。此处描述的场景是一种恶意软件,它试图通过使自己看起来像 Fiddler 来避免检测。
(来源)
行为
恶意软件最明显的迹象是,除非您使用 Fiddler 捕获流量,否则 Google Chrome 不会按预期加载 HTTPS 网站。Fiddler 的设计初衷是当不使用时,不会干扰您的正常网页浏览。
为了使恶意软件隐藏自身,它需要劫持 Fiddler 代理并使用 Fiddler 证书的私钥重新签署 HTTPS 流量。更改代理设置,并且可以获取 Fiddler 安装的私钥副本。
根证书
你让 Fiddler 在你的计算机上安装了一个根证书,这允许它将自己插入为中间人(MitM)监控通过 HTTPS 发送的数据内容:
相反,以下是方法https://www.google.com/通常是受信任的:
您的计算机信任该DO_NOT_TRUST_FiddlerRoot
证书,因为它已安装到您的操作系统的证书信任存储中。
代理拦截 HTTPS
您指出 HTTPS 在 Mozilla Firefox 上正常运行,可以将其配置为使用其自己的独立代理规则,而不是操作系统的代理规则。Google Chrome 使用操作系统代理,没有其他简单的选择。
通过 Fiddler 的操作系统级代理,Fiddler 现在可以成为中间人,在仍为网站提供服务的同时捕获未加密的 HTTPS 数据。Fiddler 获取一些网页,然后使用之前信任的证书将其签名为“www.google.com” DO_NOT_TRUST_FiddlerRoot
。
在这种情况下,恶意软件可以接管代理和证书,向您提供错误的网站,同时仍向您显示。我认为这将引发精心策划的网络钓鱼攻击。
安全问题
Security Stack Exchange 上的相关内容:软件供应商在用户桌面上部署 SSL 拦截代理会带来哪些安全风险
作为埃里克·劳伦斯曾经写道,
Fiddler 的 HTTPS 拦截功能(理所当然地)引起了注重安全的用户的关注。
这就是为什么 Fiddler 警告拦截 HTTPS 流量的安全隐患:
由于用户错误或恶意软件安装,Fiddler 存在各种问题:
- Fiddler 显示通往未知 IP 的隧道
- 发现我的系统上安装了一堆 DO_NOT_TRUST_FiddlerRoot 个人证书
- 我不知道怎么做,但我的电脑上有 Fiddler(我没有批准任何安装)
- Thunderbird 证书警报不断弹出
- PC 的代理设置被覆盖
虽然 Fiddler 本身并不是一个有害的程序,但它的误用和误解导致了过去坏名声和伪装成 Fiddler 的病毒。
移动
我不知道你的电脑是否被 Fiddler 劫持者入侵了,但是你表示您没有时间清除计算机并重新安装,因此希望以下步骤可以摆脱 Fiddler 并恢复正确的安全网络行为。(我仍然建议您重新安装并在之后更改密码,特别是如果您非常重视安全性。您写道 Spybot – Search & Destroy 发现了一些恶意软件。)
前言:解除 Fiddler 的配置
原帖者发现这些额外的步骤解决 Fiddler 的问题:
最终修复它的方法是:设置->显示高级设置->网络下->更改代理设置->高级->重置
另外,在 Fiddler 设置中,我禁用了允许其在卸载和重新清除证书之前解密 HTTPS 流量的选项。
删除 Fiddler 的根证书
- 按Win+r
- 打开:
certmgr.msc
- 查看所有文件夹并删除
DO_NOT_TRUST_FiddlerRoot
证书。
卸载 Fiddler
- 转到控制面板»程序»程序和功能。
- 卸载 Fiddler。 一个来源说Fiddler可能被称为“FiddlerRoot”或“BrowserSafeguard”。
清除代理设置
假设您通常不使用其他代理……
删除恶意软件
作为之前在超级用户上建议,您应该尝试查找并删除显示修改后的 HTTPS 网页的原始恶意软件。