这个工具可以完整获取本地 Chrome 浏览器的所有 Cookie,并正确解密后导出为 JSON 格式。
✅ 完整导出 - 获取所有 Cookie(2000+ 个),包含 SQLite 数据库中的所有原始字段
✅ 正确解密 - 智能处理 Chrome 的加密格式,自动跳过前导混淆字节
✅ 干净数据 - 解密后的 Cookie 值无乱码,可直接使用
✅ 详细信息 - 保留完整的元数据(过期时间、安全标志、域名等)
✅ 统计分析 - 自动生成 Cookie 统计报告
- export_all_cookies.py - 主脚本,完整的 Cookie 导出和解密工具
- chrome_cookies_all.json - 导出的 Cookie 数据(运行后生成)
- README.md - 本文档
pip3 install cryptographypython3 export_all_cookies.py导出的文件位置:chrome_cookies_all.json(当前目录)
每个 Cookie 包含以下字段(完全对应 SQLite 表结构):
{
"creation_utc": 13397492224534834,
"host_key": ".example.com",
"top_frame_site_key": "",
"name": "cookie_name",
"value": "",
"encrypted_value": "763130698b2460...",
"decrypted_value": "actual_cookie_value",
"path": "/",
"expires_utc": 13429028261000000,
"is_secure": 1,
"is_httponly": 1,
"last_access_utc": 13397492261674879,
"has_expires": 1,
"is_persistent": 1,
"priority": 1,
"samesite": 0,
"source_scheme": 2,
"source_port": 443,
"last_update_utc": 13397492261674879,
"source_type": 2,
"has_cross_site_ancestor": 1,
"creation_time": "2025-07-20 13:37:04",
"expires_time": "2026-07-20 13:37:41",
"last_access_time": "2025-07-20 13:37:41",
"last_update_time": "2025-07-20 13:37:41"
}creation_utc- 创建时间(微秒)expires_utc- 过期时间(微秒)last_access_utc- 最后访问时间(微秒)last_update_utc- 最后更新时间(微秒)
Chrome 时间戳从 1601-01-01 00:00:00 UTC 开始计算的微秒数
value- 明文值(通常为空)encrypted_value- 加密值(十六进制字符串)decrypted_value- 解密后的实际值(额外添加)
host_key- Cookie 所属域名top_frame_site_key- 顶级框架站点name- Cookie 名称path- Cookie 路径
is_secure- 是否仅 HTTPS(0 或 1)is_httponly- 是否 HttpOnly(0 或 1)samesite- SameSite 策略-1: NO_RESTRICTION0: NONE1: LAX2: STRICT
has_expires- 是否有过期时间is_persistent- 是否持久化priority- 优先级(0=低, 1=中, 2=高)source_scheme- 来源协议(0=未设置, 1=HTTP, 2=HTTPS)source_port- 来源端口source_type- 来源类型has_cross_site_ancestor- 是否有跨站祖先
creation_time- 创建时间(可读格式)expires_time- 过期时间(可读格式)last_access_time- 最后访问时间(可读格式)last_update_time- 最后更新时间(可读格式)
Chrome 使用多层加密保护 Cookie 数据,根据 CyberArk 的安全研究:
-
获取密钥:从 macOS Keychain 获取 "Chrome Safe Storage" 密钥
security find-generic-password -w -s 'Chrome Safe Storage' -a 'Chrome'
-
密钥派生:使用 PBKDF2-SHA1 派生 AES 密钥
- Salt:
saltysalt - Iterations: 1003
- Key Length: 16 bytes (AES-128)
- Salt:
-
AES 解密:使用 AES-128-CBC 模式解密
- IV: 固定的 16 个空格字符
- 数据格式:
v10+ encrypted_data - 移除 PKCS7 padding
-
智能数据清理:
- Chrome 在 Cookie 值前添加 32 字节随机混淆数据作为安全措施
- 本工具智能识别并跳过这些前导字节
- 只提取真正的 Cookie 值
加密数据: v10 + [32字节随机数据] + [实际Cookie值]
↓
解密后: [32字节乱码] + GA1.1.1131695084.1751282747
↓ (智能清理)
最终输出: GA1.1.1131695084.1751282747
Windows 系统使用不同的加密机制:
- 使用 DPAPI (Data Protection API) 加密密钥
- 从
%LOCALAPPDATA%\Google\Chrome\User Data\Local State获取加密密钥 - Cookie 加密格式:
v10+ 12字节IV + AES-GCM加密数据
注意:本工具目前仅支持 macOS 系统
- CyberArk - The Current State of Browser Cookies
- Chrome Cookie 解密原理(中文)
- Chromium 源码:
components/os_crypt/
- macOS:
~/Library/Application Support/Google/Chrome/Default/Cookies - Windows:
%LOCALAPPDATA%\Google\Chrome\User Data\Default\Network\Cookies - Linux:
~/.config/google-chrome/Default/Cookies
- 关闭 Chrome:运行脚本前建议关闭 Chrome 浏览器,避免数据库锁定
- 权限要求:macOS 需要 Keychain 访问权限
- 数据安全:导出的 JSON 包含解密后的 Cookie,请妥善保管
- 仅供学习:本工具仅用于学习研究,请遵守相关法律法规
脚本会自动显示:
- 总 Cookie 数量
- 涉及域名数量
- 加密/明文统计
- 安全标志统计
- SameSite 分布
- Top 10 域名(按 Cookie 数量)
MIT License