返回博客

浏览器插件权限清单:能读到什么、该防什么

浏览器插件能读到页面内容、Cookie、代理设置甚至登录凭证。这里梳理四类权限、几种高风险组合,以及团队里怎么审查和管控插件。

在已经登录业务账号的浏览器里装第三方扩展,基本没人会犹豫。但它拿到的权限,通常比装的人以为的多。

浏览器插件权限清单:能读到什么、该防什么的关键步骤与判断维度示意图

扩展实际能碰到什么

扩展的权限模型是一次授权、长期有效。装的时候点一下允许,之后它读了什么、改了什么,一般不会再弹提示。按影响程度看,主要是四类。

先说页面内容。声明了对应权限的扩展,可以读取和修改你打开的任意页面上的文字、表单和按钮。放在广告后台里,这意味着它看得到投放数据、账户余额和收件箱,也能替你按下提交。

Cookie 与本地存储。这是最容易被低估的一类。Cookie 里存的是登录态,拿到它就等于拿到会话;LocalStorage 里则可能留着 token、草稿和界面配置。扩展只要能读站点数据,就已经越过了只看页面这条线。

代理设置。能改代理的扩展,可以把你所有流量导向它指定的服务器。这类权限被滥用时不弹窗,表现是你访问的页面已经被悄悄替换过。

登录凭证与输入数据。自动填充、密码管理这类扩展,能读到你在任何站点里敲进去的账号密码。还有一类会申请读取浏览历史和标签页,于是它知道你同时开着哪些页面,而不只是当前这一页。

真正危险的是组合

一个只读当前页面、而且只在自己站点生效的扩展,风险有限。怕的是几种权限同时出现:能读页面内容,又能读 Cookie,还能自己发网络请求。这三样凑齐,页面上的数据就可以被原样打包送出去,而你看到的界面不会有任何变化。

再叠加代理设置,流量往哪走也不由你决定。如果这个扩展还支持远程更新——更新不由你触发、内容你也不一定看得到——那么今天审查通过的版本,和三个月后跑在你浏览器里的版本,可能不是同一个东西。

装之前值得核对的几项

与其等出事再卸载,不如装之前花几分钟。

来源是否清楚。来自官方商店、有明确维护方的扩展,至少出问题找得到人;来路不明的压缩包,以及从第三方聚合站下载的版本,都绕过了商店那层审核。

权限范围与功能是否匹配。一个只用来导出表格的扩展,不需要读取所有站点的 Cookie,也不需要改代理。凡是权限明显大于功能的,先放一放。

开发者与更新记录。看更新日志写的是套话还是具体改了什么,看最近一次更新距今多久,看提的问题有没有人回。长期不维护的扩展,遇到浏览器内核升级后出故障,通常没人修。

是否申请了远程代码或远程配置。这决定了它的行为能不能在你不知情的情况下被改变。

团队里更该做的是收口

个人装机可以靠自觉,团队不行。人一多,扩展来源就散了,出了问题也说不清是谁装的。

比较实际的做法是分环境:把需要装扩展的环境和核心业务账号的环境分开,收款、主体后台这类账号尽量在干净、不带扩展的浏览器里操作。接着定期盘点,把没人用的、来源不明的扩展清掉。再加上一条规则,新装扩展需要说明用途,基本就能把大部分意外挡在外面。

多个账号、多个成员共用设备时,用 PurpleMark 给不同用途建立相互独立的浏览器环境,把实验性质的插件环境与核心账号环境隔开,是让这件事可控的常见做法。

对扩展的态度不必走到另一个极端。它确实能省时间,前提是你知道它要什么权限,并且让它待在合适的环境里。