1

作为安全测试的一部分,我构建了一个非常基本的 Chrome 扩展,目的是能够读取安全 cookie 以及 localStorage 数据。我设法让它工作,这本身就是一件很糟糕的事情,但是,在构建时我使用了以下行:

chrome.tabs.executeScript(tabs[0].id, {code: '...'});

现在,根据我的理解,这行代码实际上将允许您在页面上执行任何 javascript,当然前提是用户已同意权限。

有了这个,即使打开了 CSP 标头,任何人都可以很容易地创建一个扩展来完成我上面所做的事情。

使用扩展程序将 Javascript 注入网页应该那么容易吗?确定不是!?

请记住,我在我的机器上以开发者模式运行扩展程序,并没有将其发布到 Chrome 商店,但我没有看到任何关于扩展程序被批准的信息,只是它们被批准并立即生效。

如果设计上可能发生这种情况,是否有任何方法可以防止这种情况发生?是否有任何 CSP 标头等可以帮助防止这种情况?

非常感谢大家

4

1 回答 1

2

正如 Chirag Ranvindra 在评论中提到的:

浏览器扩展通常会绕过在普通网站上设置的所有安全功能

谷歌声明,用户安装谷歌 Chrome 扩展程序的风险自负,大多数允许插件、插件、模组等的软件都是如此。

为减少用户安装存在潜在风险的扩展程序的机会,向用户发出若干警告,例如安装前请求的许可、“开发者”扩展程序可能存在安全风险的提醒,以及作为其条款的一部分和条件,可以并且确实停用违反其扩展指南的扩展。

请参阅Google Chrome 条款和条件,特别是“20. Google Chrome 扩展程序的附加条款”。

与您下载的任何程序一样,您应该认真考虑是否有必要安装,以及是否来自信誉良好的开发人员。我建议仅通过Google Chrome 官方扩展网上商店安装扩展

于 2018-01-22T10:57:13.797 回答