haibo3434358/scareaisec/cookie-analysis
Claude Code and agent skill by haibo3434358/scareaisec
- community
Checking that the SKILL.md file is still in the repository.
Session cookie 分析与伪造方法论。当发现 Web 应用使用 cookie 进行认证、需要判断 cookie 类型并选择伪造方法时使用。覆盖 unsigned base64 cookie 直接伪造、Flask 签名 cookie(flask-unsign 爆破密钥)、加密/二进制 cookie 的识别。本技能负责 cookie 类型判断和分流:如果判断为 JWT(三段式 eyJ 开头),应转至 jwt-attack-methodology;如果判断为加密 cookie 需要 Padding Oracle,应转至 crypto-web-attack
Install
npx vskill@latest install haibo3434358/scareaisec/cookie-analysisSKILL.md
Cookie Analysis & Forgery Methodology
0. 立即执行摘要:Cookie 先分型,再测服务端是否信任
看到 Cookie 后不要直接爆破。按下面顺序判断:
- 属性风险:检查
HttpOnly、Secure、SameSite、Domain、Path、Expires,判断 XSS/CSRF/子域注入/明文传输风险。 - 值结构:识别 JWT、Base64 JSON、Flask/Django/Rails/Express session、加密 blob、随机 session id。
- 服务端信任边界:改
user_id/role/is_admin/tenant_id/exp后必须重放请求,只有服务端接受才算漏洞。 - 会话混用:删除单个 Cookie、只保留部分 Cookie、A/B 账号 Cookie 交叉混用,测试是否发生会话固定或权限错配。
- Remember-me:长期登录 token、弱随机、可预测、未绑定设备/用户代理时要单独测试。
如果只是能解码 Cookie,但不能证明服务端接受篡改,最多是信息泄露或 suspected,不能判定认证绕过。
🤖 Agent 工具映射
以下 bash/curl 命令仅供理解原理。Agent 应使用对应工具执行:
| 方法论中的命令 | Agent 实际工具 | 用法 | ||
|---|---|---|---|---|
curl -sI 获取 Set-Cookie | browser_get_cookies | 直接获取浏览器所有 Cookie | ||
| `echo ... \ | base64 -d` 解码 | browser_evaluate | browser_evaluate("atob('cookie_value')") | |
flask-unsign --decode | browser_evaluate | 手动拆解 . 分隔的 cookie,base64 解码第一段 | ||
| 设置伪造 Cookie | browser_set_cookie | browser_set_cookie(name, forged_value, domain) | ||
curl -b 'session=...' 验证 | proxy_send_request | 带伪造 Cookie 头请求目标 |
When to Use
- You found a session cookie and want to forge it
- BEFORE running flask-unsign or any brute-force tool
- When you need to bypass authentication via cookie manipulation
Step 1: Extract the cookie
Step 2: Identify cookie type
Test A: Base64 decode
If it decodes to valid JSON → UNSIGNED BASE64 (most common in CTF!)
- Attack: forge directly — takes 5 seconds
- Try variations:
Test B: Flask itsdangerous signature
If the cookie has a . followed by a signature portion:
Test C: JWT
If the cookie has three base64 parts separated by .:
Test D: Encrypted/Binary
If base64 decode produces garbage → encrypted cookie
- Need key or padding oracle attack
- Check source code for encryption key
Step 3: Common bypass patterns
- If unsigned: forge with user_id=1, role=admin, is_admin=true
- If Flask-signed: try common keys ('secret', app name, etc.)
- If JWT with alg=none: remove signature, set alg to "none"
- If JWT with HS256: try common secrets, check for JWKS endpoint
最低必测自检
标记 not_vuln 前必须确认:
| # | 必测项 | 说明 | |
|---|---|---|---|
| 1 | 已记录所有认证相关 Cookie 的属性 | HttpOnly/Secure/SameSite/Domain/Path/Expires | |
| 2 | 已分型 Cookie 值结构 | JWT、Base64 JSON、签名 Cookie、随机 session id、加密 blob | |
| 3 | 已测试删除单个 Cookie、删除全部 Cookie、只保留某个 Cookie | 判断是否存在弱鉴权或多 Cookie 混用 | |
| 4 | 已用 A/B 账号交叉替换 Cookie | 判断会话固定、权限错配、Remember-me 绑定缺失 | |
| 5 | 可解码 Cookie 已尝试篡改权限字段并由服务端验证 | 前端解析成功不算服务端接受 | |
| 6 | JWT 已转入 jwt-attack-methodology | Cookie 中的 JWT 不在本 skill 内重复展开 | |
| 7 | 加密 Cookie 有异常差异时已转入 crypto-web-attack | 例如 padding oracle、MAC 校验差异 |
Critical Reminders
- NEVER run flask-unsign on unsigned cookies — wastes 25+ minutes and ALWAYS fails
- Always decode the cookie FIRST to determine its type
- Base64 JSON cookies are the most common type in CTF challenges
- Direct forgery takes 5 seconds vs brute-forcing takes 25+ minutes
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills_my/discovery/builtin/_core/cookie-analysis/SKILL.md
Popularity
- Repository stars
- 61
- Repository forks
- 31
- 7-day trend score
- 0
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/haibo3434358/scareaisec/cookie-analysis)