尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

BrowserSkill 扩展隐私全景拆解:数据边界、11 项权限与浏览器扩展安全模型

BrowserSkill 扩展隐私全景拆解:数据边界、11 项权限与浏览器扩展安全模型 BrowserSkill 扩展隐私全景拆解数据边界、11 项权限与浏览器扩展安全模型【免费下载链接】BrowserSkillLet AI agents use your real, logged-in browser without interrupting your work. CLI extension for browser automation across any shell-capable AI agent.项目地址: https://gitcode.com/GitHub_Trending/br/BrowserSkill当 AI Agent 要驱动你的真实浏览器——带着你的登录态、你的会话——去操作网页隐私边界到底画在哪里BrowserSkill 就是干这件事的开源项目bskCLI 加 Chromium 扩展让 AI Agent 操作你本地已登录的浏览器。这篇拆解围绕一个信任问题展开这个扩展访问了哪些数据、凭什么申请这些权限、数据流向哪里、保留多久以及你随时可以拉掉的闸有哪些。第一章 它不碰 AI只当桥BrowserSkill 的工作方式先说结论这个扩展不是大脑是桥梁。扩展本身不包含 LLM 客户端内部没有任何 AI Provider 的 API Key。它不思考只执行。完整链路长这样用户 / AI Agent → bsk CLI → daemon本地进程→ 扩展 → Chromium 页面CDPCDPChrome DevTools Protocol浏览器调试协议是扩展真正操作页面的通道。链路上有两段模式之分本地模式默认扩展连接同一台机器上的 daemon走环回 WebSocket默认端口52800。在 wxt.config.ts 中可找到依据——__BSK_DAEMON_WS_URL__构建时默认解析为ws://127.0.0.1:52800daemon-endpoint.ts 里的normalizeDaemonPort只接受1–65535范围内的自定义端口非法输入一律回退默认值。远程模式可选你显式与运行bsk的服务器或兼容网关配对走认证 WSS。此时自动化数据会发送到那台服务器。扩展与 daemon 之间的通信全部由 transport/ 目录承载ws-transport.ts、remote-endpoint.ts、remote-storage.ts自动化工具实现集中在 tools/。它只向你选定的 daemon 或网关暴露浏览器自动化原语——单一用途是这套 BrowserSkill 隐私设计的第一块基石。第二章 它能看到什么浏览器数据访问全景这里有个容易建立边界的认知扩展只在命令触发时才访问数据。没有命令就没有访问。访问范围与用途一一对应数据类别具体访问内容为何需要网页内容Agent Window 中受控页面的 DOM、可访问性树、HTML 与截图及借用的标签页、Quick Actions 所选页面读取页面、定位元素、校验结果、捕获你请求的截图Agent 模拟的输入CDP 派发的鼠标点击、按键与表单值执行 AI Agent 要求的自动化动作标签页与窗口元数据标签页 ID、URL、标题与窗口 ID含列出用户标签页把自动化命令定向到正确的标签页/窗口本地扩展存储8 字符实例 ID、可选标签、功能偏好含审计开关、配对端点与设备凭证识别浏览器实例、恢复你的设置文件传输显式提供给bsk upload的本地文件单次bsk download产生的文件向网页附加任务文件、把下载交还给调用方 Agent系统通知借用你既有标签页前的确认通知权限启用浏览器确认时请求逐标签页同意它能看到的是命令作用到的那一小块页面它看不到你的浏览历史、书签、密码库——这一点后面专门讲。本地扩展存储一项可以精确落到源码chrome.storage.local中的bsk_instance_id由crypto.getRandomValues生成4 字节随机数转成8 位十六进制串32 位熵。它的唯一用途是让 daemon 在 Service Worker 重启后关联同一浏览器实例——对 daemon 而言这是个不透明标识见 instance-id.ts。你截图中看到的实例 ID 2b9dffbe就是它。第三章 它不做什么BrowserSkill 数据收集边界边界比功能更能定义一个扩展的隐私姿态。BrowserSkill 明确不做的事只把自动化结果发给你选定的 daemon 或网关BrowserSkill 作者不接收遥测不运营强制的托管服务。不独立调用 LLM、AI 或云 API内部不含任何 AI Provider 密钥。不枚举浏览器历史、书签、已保存密码或自动填充数据库。下载处理只观察由当前bsk download调用发起的单次下载——download.ts 的全局downloadActive标志保证同一时刻只有一个事务其余下载不纳入关联与路由。不含分析、广告、指纹识别或跨站跟踪系统不出售你的数据。这些否定句不是营销话术每一项都能在对应模块的实现里找到对应逻辑。第四章 BrowserSkill 权限说明11 项 Chrome 权限逐项说清这是非扩展开发者最常卡住的一步。先给结论每一项权限只服务于上文的单一用途声明与 wxt.config.ts 中 manifest 的permissions数组完全一致可以逐项对照。权限用途说明manifest 声明位置debugger通过 CDP 附加到被选中做自动化或你主动捕获的标签页wxt.config.ts permissions 数组activeTab你调用扩展时为 Quick Actions 提供活动标签页的临时访问同上scripting向所选页面注入缺失的全页截图辅助脚本如扩展重载后同上webNavigation跟踪页面导航与 frame让捕获、录制、人工协助跟随正确文档同上tabs在 Agent Window 中检查、创建、关闭标签页查询标签页元数据同上windows创建并管理独立的 Agent Window隔离 Agent 活动与你的正常浏览同上alarms周期性唤醒 Service Worker保持连接存活并续期远程设备授权同上idle检测设备从空闲/锁屏返回及时重建 WebSocket 连接不存储、不传输空闲数据同上notifications启用浏览器确认时借用你自有标签页前弹系统通知请求批准同上downloads认领并路由活动bsk download发起的唯一一次下载同上storage在chrome.storage.local持久化实例 ID、标签与功能偏好同上all_urls主机权限在受控页面注入Agent Active状态浮层允许访问你指示的任何站点host_permissions字段downloads一项值得单独说它的范围被刻意收得很紧——不枚举下载历史、不改动未被认领的下载若认领事务失败扩展会取消进行中的文件或删除其临时文件。实现路径也是先验证 session/tab 所有权再委托单个浏览器级chrome.downloads事务。第五章 bsk 数据流向本地与远程数据流向对比你的数据只有两条出路。本地模式环回 daemon端口52800。数据不出你的机器。远程模式HTTPS 发送配对与续期请求认证 WSS 发送自动化流量明文 HTTP/WS 仅允许在环回上用于开发配对密钥在发起网络请求前会从 URL 中移除。数据到达服务器后服务器接收任务结果含请求的页面内容、截图、录制轨迹与标签页元数据Agent 与网关运营方可能按自身策略保留或转发。远程模式下若启用了操作审计审计记录存放在 daemon 所在的服务器上而不是浏览器所在的电脑。这里有个 Chromium 扩展数据安全上很关键的设计细节——明文偏好与机密凭证的物理分层见 remote-storage.tschrome.storage.local只暴露非机密信息bsk_connection_mode与bsk_remote_connection_revision一个修订号不是密钥。真正的端点与设备凭证写入扩展源 IndexedDB 数据库bsk-remote-authorization对象存储connection。失败关闭机制全新本地配置或显式选择本地模式时根本不打开凭证数据库凭证缺失而模式为 remote 时直接报错绝不自动回退。第六章 操作审计的保留与脱敏机制数据保留多久、存在哪里不同数据类型保留策略完全不同逐层看。扩展侧本地存储实例 ID、标签、功能偏好持久化于chrome.storage.local直到你卸载扩展或清除扩展存储。观察数据页面内容、截图、DOM 快照随命令响应返回给你选定的 daemon 或网关可能在录制或截图导出期间临时保留直到操作结束或结果被释放。上传/下载暂存字节由本地 daemon 暂存在私有、按会话隔离的目录下载暂存复制到目标位置后即删除上传暂存保留到会话结束后续表单提交仍需读取附件会话结束、断开或 daemon 崩溃后下次启动时清除剩余暂存。操作审计默认关闭的可选历史这是保留策略里最值得展开的一块依据 audit.rs 与 operation-audit.md默认关闭。开关在chrome.storage.local键bsk_audit_enabled审计正文由 daemon 保存不占扩展存储配额。位置daemon 主机上BSK_HOME/audit默认~/.bsk/audit/macOS/Users/用户名/.bsk/audit/、Linux/home/用户名/.bsk/audit/、WindowsC:\Users\用户名\.bsk\audit\。记录内容时间戳、工具类型、网站来源仅 origin协议域名端口、带基础脱敏的元素名称、状态、错误码。排除输入值、页面正文、截图、脚本、文件内容、完整选择器。保留期限已结束任务30 天常量即RETENTION_MS 30 * 24 * 60 * 60 * 1000目录权限0700、文件0600。单任务上限MAX_RUN_BYTES 16 * 1024 * 102416 MiB以开始时间戳-UUID.jsonl逐行追加恢复读取时忽略最后一条未写完的事件绝不把未知结果推定为成功。脱敏做了纵深防御safe_params只挑tab_id、x/y、width/height、timeout_ms等数值元数据凡出现value、text、expression、key、prompt等字段一律只记已隐藏标记files只记数量safe_url只保留 http/https 的 originsafe_text对含、超长词、6 位以上连续数字或token/password/bearer/sk-/ghp_前缀的词直接替换为[redacted]。审计接口仅由扩展页面经后台服务访问网页内容脚本不能调用且服务按已连接的浏览器实例隔离不信任请求参数中的浏览器身份。远程凭证存于扩展源 IndexedDB直到你选择本地连接、清除扩展存储或卸载。需要特别注意断开连接不会删除服务器上已持有的结果或审计记录——这一条对你做合规评估很重要。第七章 你的紧急出口六种随时可行使的控制手段掌控感来自出口数量。以下六种手段任意时刻可用无需等待卸载扩展chrome://extensions→ 移除扩展存储daemon 主机上的审计文件与导出的副本需另行删除。关闭操作审计→ 停止收集新操作但保留已有历史此前任务仍会收到最终生命周期状态。关闭 Agent Window→ 立即停止所有 Agent 自动化。开启借用前确认并拒绝标签页借用→ 你既有的标签页保持不可触碰。禁用连接 / 选择本地连接 / 停止所选 daemon→ 断开连接。运行bsk daemon revoke DEVICE_ID撤销已配对设备 → 同时关闭现有连接并拒绝新连接。第八章 信任边界在哪里浏览器扩展安全模型像做安全架构评审一样把三条信任假设摆到台面上。本地模式的信任假设信任能绑定所配置环回端口的进程——同一系统账户下的本地进程不在威胁模型内。daemon 主机上的审计文件不构成对同账户恶意进程的安全边界。远程模式的信任假设要求显式配对与加密传输环回开发除外内置服务器存储凭证哈希、校验连接、支持轮换撤销或过期时关闭连接。第三方网关须自行实现同样的授权生命周期与设备路由隔离。页面读取的授权前提远程页面读取与操作要求任务自有的标签页——仅仅把用户标签页移入 Agent Window 并不构成授权借用遵循浏览器内受控的确认偏好。一句话提醒应把已配对服务器视为可信赖其操作你的浏览器配置与已登录网站的一方。部署远程时浏览器配置文档、服务器数据与 TLS 私钥必须对受信任的本地用户保持私密配对 TTL 参数--pairing-ttl/--device-ttl/--renew-after等完整细节见 remote-extension-connection.md。第九章 其他需要知道的这是开发者工具不面向 13 岁以下也不有意收集任何人的个人信息含儿童。开源可审计任何人可对照源码核验本文所述声明扩展不含隐藏网络调用的混淆代码路径。政策实质性变更会更新最近更新日期并随扩展发新版更新后继续使用即视为接受。隐私相关问题直接在项目仓库提交 issue。结语三条主线收束了整个 BrowserSkill 隐私设计单一用途只桥接浏览器自动化不内置 AI 推理、最小化收集明文设置与机密凭证分层存储、审计只落元数据、下载仅认领单个事务、用户可撤回卸载即清存储、开关即停收集、撤销即断连接。如果你准备部署远程连接先把 docs/remote-extension-connection.md 与 docs/operation-audit.md 完整读一遍——信任边界从环回扩到服务器的那一刻所有合规判断的责任就回到了你手上。最后的行动建议依据自身数据合规要求明确两件事——审计开关是开还是关以及服务器侧留存数据由谁、按什么周期处置。【免费下载链接】BrowserSkillLet AI agents use your real, logged-in browser without interrupting your work. CLI extension for browser automation across any shell-capable AI agent.项目地址: https://gitcode.com/GitHub_Trending/br/BrowserSkill创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表