mcpField
C
cookie-audit

cookie-audit

github.com/mukul975安全32344 次安装32 周前更新
代码仓库

关于 cookie-audit

cookie-audit 是面向隐私与网站团队的 Cookie 审计流程指南,涵盖扫描、分类、合规差距分析和报告,并包括持续监测建议。

主要功能

  1. 01规划审计范围与扫描
  2. 02识别 Cookie 和跟踪技术
  3. 03按用途分类 Cookie
  4. 04核查同意与披露差距
  5. 05整理审计报告并持续监测

适用场景

  1. 01盘点网站及子域的跟踪技术
  2. 02检查 Cookie 同意机制是否合规
  3. 03部署前审查新增 Cookie

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mukul975/privacy-data-protection-skills --skill cookie-audit

安装后在 Claude Code 中输入/cookie-audit确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

assets/
template.md
references/
standards.md
workflows.md
scripts/
process.py

详细介绍

网站 Cookie 和跟踪器审计

概述

Cookie 审计是实现 Cookie 同意合规的基础步骤。审计需要系统地识别、分类并记录网站部署的每个 Cookie 和跟踪技术。欧盟法院在 Planet49 GmbH v. Bundesverband der Verbraucherzentralen(案件 C-673/17,2019 年 10 月 1 日)中确立,预先勾选的复选框不构成《电子隐私指令》下的有效同意,且用户必须在同意前获知 Cookie 的有效期和第三方访问情况。全面的审计能够明确必须取得哪些同意,以及必须披露哪些信息。

审计方法

阶段 1:准备

开始扫描前,记录 Pinnacle E-Commerce Ltd 的审计范围:

参数值
主域名www.pinnacle-ecommerce.com
范围内的子域名shop.pinnacle-ecommerce.com、account.pinnacle-ecommerce.com、blog.pinnacle-ecommerce.com
需身份验证的页面是 — 客户账户、结账流程
移动端专属页面m.pinnacle-ecommerce.com
第三方集成Google Analytics 4、Meta Pixel、Hotjar、Stripe、Intercom
扫描频率每季度(下次:2026 年第 2 季度)
阶段 2:自动扫描

部署扫描工具,捕获所有 Cookie 和跟踪技术:

基于浏览器的扫描

使用无头 Chromium 实例爬取网站并捕获:

  • 通过 Set-Cookie 标头设置的第一方 Cookie
  • 通过 document.cookie JavaScript API 设置的第一方 Cookie
  • 来自嵌入式资源的第三方 Cookie
  • LocalStorage 和 SessionStorage 条目
  • IndexedDB 数据库
  • 像素和信标(1x1 图像请求、navigator.sendBeacon() 调用)
  • 浏览器指纹识别脚本(canvas、WebGL、AudioContext)

网络层捕获

监控 HTTP/HTTPS 流量,以识别:

  • URL 查询字符串中的跟踪参数(utm_*、fbclid、gclid)
  • 经由跟踪域名的重定向链
  • 第三方之间的 Cookie 同步
  • 服务器到服务器的数据共享端点
阶段 3:Cookie 分类

根据 ICC UK Cookie 指南类别对每个 Cookie 进行分类,并遵循《ePrivacy 指令》第 5(3) 条:

类别 1:严格必要 网站正常运行所必需的 Cookie。根据第 5(3) 条的豁免规定,无需征求同意。

Pinnacle E-Commerce Ltd 的示例:

Cookie 名称域名有效期用途
session_id.pinnacle-ecommerce.comSession维护用户会话状态
csrf_token.pinnacle-ecommerce.comSession防止跨站请求伪造
cart_itemsshop.pinnacle-ecommerce.com24 hours购物车内容
auth_tokenaccount.pinnacle-ecommerce.com30 minutes身份验证状态
load_balancer.pinnacle-ecommerce.comSession服务器负载分配

类别 2:性能/分析 收集汇总使用数据的 Cookie。需要征求同意。

Cookie 名称域名有效期用途
_ga.pinnacle-ecommerce.com2 yearsGoogle Analytics 客户端 ID
_ga_XXXXXXX.pinnacle-ecommerce.com2 years保留 GA4 会话状态
_gid.pinnacle-ecommerce.com24 hours区分 GA4 会话
hjSessionUser*.pinnacle-ecommerce.com1 yearHotjar 用户识别
hjSession*.pinnacle-ecommerce.com30 minutesHotjar 会话数据

类别 3:功能 记住用户偏好设置的 Cookie。除非严格必要,否则需要征求同意。

Cookie 名称域名有效期用途
locale.pinnacle-ecommerce.com1 year语言偏好
currencyshop.pinnacle-ecommerce.com1 year货币选择
recently_viewedshop.pinnacle-ecommerce.com30 days最近查看的商品

类别 4:定向/广告 用于广告定向和跨站追踪的 Cookie。始终需要征求同意。

Cookie 名称域名有效期用途
_fbp.pinnacle-ecommerce.com90 daysMeta Pixel 浏览器 ID
_fbc.pinnacle-ecommerce.com90 daysMeta 点击标识符
_gcl_au.pinnacle-ecommerce.com90 daysGoogle Ads 转化关联器
IDE.doubleclick.net13 monthsGoogle 广告投放
fr.facebook.com90 daysMeta 广告投放与衡量
阶段 4:差距分析

针对识别出的每个 Cookie,依据 Planet49 要求进行核查:

Planet49 合规检查清单:

  1. 主动同意机制:是否通过用户主动操作(点击、切换开关)征求同意,而非使用预先勾选的复选框?(Planet49,第 62 段)
  2. 同意前告知:在用户表示同意前,是否已告知用户:
    • Cookie 的有效期?(Planet49,第 81 段)
    • 第三方是否可以访问?(Planet49,第 81 段)
    • 每个 Cookie 类别的具体用途?
  3. 选择粒度:用户能否分别同意各 Cookie 类别,而非只能全部接受?
  4. 无 Cookie 墙:用户是否可以在不接受非必要 Cookie 的情况下访问网站?
  5. 撤回机制:用户能否像给予同意一样轻松地撤回同意?

差距分析模板:

Cookie类别已征求同意已披露有效期已披露第三方差距
_ga分析是否 — 列为“持久性”而非“2 年”否 — 未注明 Google有效期 + 第三方披露
_fbp定向是是是无
locale功能否否不适用评估是否严格必要
第 5 阶段:报告

Pinnacle E-Commerce Ltd 的审计报告必须包含:

  1. 执行摘要:发现的 Cookie 总数、按类别细分的数量、关键缺口
  2. 完整的 Cookie 清单:包含名称、域名、时长、用途、类别、法律依据的完整表格
  3. 第三方跟踪器清单:所有接收数据的第三方域名,以及共享的数据类型
  4. 合规缺口登记表:每项缺口、严重程度(高/中/低)、整改建议
  5. Cookie 政策更新建议:需要修改的具体文本
  6. 同意机制评估:当前横幅是否符合 Planet49 的要求
  7. 建议的扫描计划:生产环境每季度扫描一次,新功能部署时按需扫描

持续监控

安排自动扫描,以检测通过以下方式引入的新 Cookie:

  • 开发人员部署(新增分析或营销标签)
  • 第三方脚本更新(供应商 SDK 更新并添加新 Cookie)
  • A/B 测试平台添加实验 Cookie
  • CDN 或基础设施变更

将 Cookie 扫描集成到 CI/CD 流水线中:在预发布环境检测到任何新 Cookie 后,必须先进行分类并记录,才能部署到生产环境。

主要法律参考

  • CJEU Case C-673/17 (Planet49) — 必须取得主动同意;预先勾选的选项无效;必须在取得同意前披露 Cookie 的期限和第三方访问情况
  • ePrivacy Directive 2002/58/EC, Article 5(3) — 存储或访问用户设备上的信息必须取得同意,但严格必要的情形除外
  • GDPR Article 4(11) — 同意的定义:自由作出、具体、知情且明确的表示
  • EDPB Guidelines 05/2020 on Consent — 关于有效同意机制的详细指导
  • ICC UK Cookie Guide (2012) — Cookie 分类框架(严格必要、性能、功能、定向)
  • CNIL Deliberation No. 2020-091 (17 September 2020) — 关于 Cookie 和其他跟踪器的指南

评论

支持 Markdown