---
title: "证明您的浏览器并非保管库"
description: "Chrome 和 Firefox 会将您保存的密码交给任何以您的身份运行的程序。以下是通俗易懂的文字和代码证明，以及为什么 Clavitor 的保管库无法以同样的方式被读取。"
lang: zh
url: https://clavitor.ai/zh/security/browsers
markdown: https://clavitor.ai/zh/security/browsers.md
translation_of: https://clavitor.ai/en/security/browsers.md
authoritative: false
publisher: Clavitor LLC
---

> This is the Chinese translation of [Proof your browser isn't a vault](https://clavitor.ai/en/security/browsers.md). The original English text is authoritative; where the two differ, the English version prevails.

# 安全: 证明您的浏览器并非保管库。

Chrome 和 Firefox 会保存您的密码，然后将它们交给任何以您的身份运行的程序。这不是漏洞，而是设计使然。以下是证明：一次用通俗的文字，一次用代码。

## 通俗文字版

您浏览器的“密码管理器”仅受一把锁保护：您的电脑登录状态。一旦您登录笔记本电脑，浏览器就能立即读取所有保存的密码，因此在您的帐户下运行的任何其他程序也能做到。

一次糟糕的下载。一个可疑的浏览器游戏。您克隆的项目中一个被投毒的包。在它运行的那一刻——在您已登录的状态下，就像您平时一样——它会在打开一个文件的时间内读取浏览器保存的每一个密码。没有主密码需要破解，因为根本无需破解：浏览器被设计为自动为您解锁，而恶意软件只需以“您”的身份礼貌地请求即可。

这并非理论假设。这是普通人丢失帐户的最常见方式。这种恶意软件甚至有一个枯燥的行业名称——“信息窃取程序”——因为它太常见了。您的密码、保存的信用卡、会话 Cookie：在您察觉之前就被复制并消失了。

解决方法说起来很简单：您的密码应该用电脑其他部分没有的东西来锁定，而且它们根本不应该存放在这台机器上。

## 附带确凿证据的版本

不要只听我们的一面之词。Chromium 和 Firefox 是开源的，读取路径有文档记录、标准化且简短。以下是密码的确切位置以及它们是如何被提取的。

#### Chrome（以及所有 Chromium 浏览器）

Chrome 将登录信息存储在 SQLite 数据库中——`Login Data`，表 `logins`，列 `password_value`——并使用 AES-256-GCM 加密。AES 密钥存放在 `Local State` 中，由操作系统“保护”：Windows 上的 DPAPI，macOS 上的登录钥匙串，Linux 上的 gnome-keyring/kwallet（或纯文本）。

您可以自己阅读——代码是开源的。在 Chromium 中搜索标记封装密钥的常量：[`os_crypt` 中的 `kDPAPIKeyPrefix`](https://source.chromium.org/search?q=kDPAPIKeyPrefix%20file:os_crypt)。该密钥经过 DPAPI 封装、标记并存储，然后通过一次调用解包，而这道防线对*您*毫无保护作用：

```
const char kDPAPIKeyPrefix[] = "DPAPI";

CryptUnprotectData(&intermediate, /*ppszDataDescr=*/nullptr,
                   /*pOptionalEntropy=*/nullptr, nullptr, nullptr, 0, &output);
```

没有第二道机密，没有密码，没有提示。`CryptUnprotectData` 会将密钥交还给您的会话中运行的任何进程——这正是 [DPAPI 文档中描述的威胁模型](https://learn.microsoft.com/en-us/windows/win32/api/dpapi/nf-dpapi-cryptunprotectdata)：如果它以您的身份运行，它*就是*您。攻击者的全部工作只需三行代码：从 `Local State` 读取密钥，解包它，然后对 `Login Data` 中的每一行进行 AES-GCM 解密。信息窃取恶意软件多年来一直正是这样做的。

#### “设备端加密”同样无法拯救您

Google 的解决方案是一个 6 位数 PIN 码，用于加密您同步的保管库。2026 年 5 月，Phishu 的研究人员展示了这种保护有多么薄弱。一个逼真的伪造 Google 登录页面——中间人钓鱼攻击——会捕获会话和该 PIN 码，而这个 PIN 码*就是*同步帐户中每个密码和通行密钥的主密钥。借助它，攻击者可以将自己的设备加入您的 Google“安全域”，整个保管库会直接同步给他们——一步即可完全接管。

设计缺陷：Google 允许设备仅凭 6 位数 PIN 码即可加入，无需您已有设备的批准。

[VaultJacking — GBHackers，2026 年 5 月](https://gbhackers.com/google-password-vaults-via-single-pin/)

#### Firefox

Firefox 将登录信息保存在 `logins.json` 中，将密钥保存在 `key4.db` 中，由 NSS 的“Secret Decoder Ring”解密——这也是开源的：[`security/nss/lib/pk11wrap/pk11sdr.c`](https://searchfox.org/firefox-main/source/security/nss/lib/pk11wrap/pk11sdr.c)。如果您设置了[主密码](https://support.mozilla.org/en-US/kb/use-primary-password-protect-stored-logins)，该密钥就会用它来密封。

默认情况下，您并没有设置——因此该密钥是用空字符串密封的，并且存储的“password-check”值确认空密码可以解密它。从您的配置文件中复制两个文件（`key4.db` + `logins.json`），让 NSS 或开源的 `firepwd.py` 指向它们，它们就会被解密。一把钥匙贴在门上的锁算不上锁。

## The common thread

每个浏览器的密码存储都有相同的结构：机密存在于您工作的地方，由您已登录的会话解锁。您电脑的其他部分可以撤销的加密，并不能保护您免受真正清空帐户的威胁——即以您的身份运行的代码。

## 为什么 Clavitor 无法以这种方式被读取

Clavitor 不会将您的保管库保存在本地机器上。没有 `Login Data`，没有 `key4.db`，`Local State` 中也没有密钥——磁盘上没有任何东西可供以您的身份运行的进程抓取。

解密密钥并非用您的操作系统登录状态密封。它源自硬件触碰——Touch ID、Face ID 或 YubiKey——在浏览器中计算，用于单次请求，然后丢弃。凭据仅在您请求时通过作用域 API 获取，且从不缓存。以您的身份运行的恶意软件只会扑个空。

这就是“在您的设备上加密”与“根本不在您的设备上”之间的区别。

[Clavitor 的完整加密方式](https://clavitor.ai/zh/security)

## 不要再将您的密码托付给浏览器。

Clavitor 扩展程序的填充方式与您的浏览器一样，并将保管库保存在您的笔记本电脑无法读取的地方。
[从 Chrome 网上应用店安装](https://chromewebstore.google.com/detail/clavitor/ddbhcfcclgjplbibgcphifegjadnmfpf)
[阅读安全模型](https://clavitor.ai/zh/security)
