浏览器将已安装的扩展程序泄漏到站点
安全研究人员发现了所有现代浏览器的扩展系统中的漏洞,攻击者可能会利用这些漏洞枚举所有已安装的浏览器扩展。
该攻击会影响所有现代浏览器。研究人员在基于Chromium的浏览器中证实了这一点,并认为它会影响其他使用相同扩展系统的浏览器,例如Firefox或Edge。Firefox的旧式附加系统也容易受到攻击。
基于铬的浏览器(如Google Chrome,Yandex和Opera)以及基于Firefox的浏览器(如Firefox或Pale Moon)以及Microsoft Edge均会受到影响。
所有浏览器都保护扩展数据,以防止Web浏览器中访问的网站直接访问扩展数据。但是,过去已经表明,站点可能使用各种技术来扫描已安装的加载项。
我们在“通过扩展名,登录名和浏览器识别您,以及修复Firefox资源URI泄漏”中讨论了此问题。
首次引入扩展程序时,并未阻止网站访问本地资源。Mozilla和Google引入了控件来阻止网站访问这些资源。这是由访问控制设置处理的,默认情况下,这些控制声明所有资源扩展在Firefox,基于Chromium的浏览器和Microsoft Edge中都声明为私有。
Safari使用不同的保护机制,因为它随机化了资源URI。
浏览器扩展枚举攻击
安全研究人员发现了一种在最新版本的Web浏览器中枚举已安装的浏览器扩展的方法。通过监视浏览器对资源访问的响应,“定时侧信道攻击”可用于枚举已安装的浏览器扩展。
当站点在浏览器中请求访问扩展的资源时,浏览器需要运行两次检查以查看扩展是否存在,以及该站点要访问的资源是否公开可用。
通过监视响应,攻击者可以确定拒绝请求的原因。该站点测量使用假资源返回假扩展请求所花费的时间以及使用假路径请求实际扩展所花费的时间。
通过比较时间,可以显示已安装的扩展。根据研究人员的说法,如果在现代Web浏览器中安装了扩展程序,则可以使用他们的方法以100%的精度确定。
通过区分作为扩展设置验证一部分的两个集中检查(由于侧通道或由于不同的异常行为),可以完全枚举所有已安装的扩展。攻击者只需简单地循环搜索所有现有扩展,以精确枚举系统中安装的扩展就足够了。