今天,我在谷歌上搜索了一个据称提供恶意软件的域名。我的搜索结果出现了(受感染的域位于列表顶部),几秒钟内我的 AV 发出警报,说它在我的临时文件中检测到一些 js 恶意软件。
我只在谷歌上搜索过这家公司。没有点击。因此,我假设这个检测是谷歌浏览器执行预取的结果,它一定已经加载了恶意文件。
我的问题是:这个恶意软件可以执行,还是会被预取/预加载页面可能存在的某种安全机制沙盒化?
今天,我在谷歌上搜索了一个据称提供恶意软件的域名。我的搜索结果出现了(受感染的域位于列表顶部),几秒钟内我的 AV 发出警报,说它在我的临时文件中检测到一些 js 恶意软件。
我只在谷歌上搜索过这家公司。没有点击。因此,我假设这个检测是谷歌浏览器执行预取的结果,它一定已经加载了恶意文件。
我的问题是:这个恶意软件可以执行,还是会被预取/预加载页面可能存在的某种安全机制沙盒化?
据我所知,谷歌浏览器中的预取执行诸如 DNS 查找和静态内容缓存之类的事情。为了确定要下载的静态内容,必须对其预取的 HTML 文档进行一些解析,并且众所周知,过去浏览器容易受到恶意 HTML 有效负载的攻击(Internet Explorer CSS 和 HTML 解析错误导致 shell -代码执行)。
然后必须合理地得出结论,是的,预取确实对用户构成安全风险,因为它从您可能不打算这样做的页面下载和处理本质上的代码。
我假设预取的处理逻辑仍然强制执行同源策略请求,但再次取决于预取逻辑与普通页面加载的分离程度,这里可能存在漏洞,该漏洞仅在恶意页面出现时发生预取而不是直接访问。
考虑到页面加载速度稍微快一点的好处有限,我建议如果您有可能经常访问引用已知恶意页面的页面(例如,因为您正在进行安全研究),那么禁用预取是值得的。