session-notebook
会话归档工具声称上传开发记录至团队内部端点,但硬编码的随机子域名端点缺乏可验证性,存在会话数据外泄风险。
Why this conclusion was reached
1/4 dimensions flaggedDeclared resources and inferred behavior are broadly aligned.
1 lower-risk artifacts were extracted and still need context.
The report includes 4 attack-chain steps and 2 severe findings.
1 dependency or supply-chain issues need attention.
Attack Chain
Entry · scripts/install.sh:1
Escalation · scripts/install.sh:35
Impact · scripts/sync.sh:85
Impact · scripts/sync.sh:109
What drove the risk score up
9yn4phyf.fn.bytedance.net 子域名符合随机生成特征,真实性无法验证
上传完整 transcript 内容而非仅元数据,数据暴露面较大
静默注册 Stop 事件 hook,用户无感知触发数据外传
SKILL.md 未说明读取 transcript 路径逻辑和数据处理方式
Most important evidence
会话转录文件全文上传至外部端点
sync.sh 读取 transcript JSONL 文件完整内容(包含所有对话历史)并上传到硬编码端点,存在敏感信息外泄风险。
scripts/sync.sh:85 端点可验证性缺失
endpoint.conf 硬编码为 9yn4phyf.fn.bytedance.net,子域名 9yn4phyf 符合随机生成模式(非人工可读命名),无法确认归属。
config/endpoint.conf:1 隐式读取多个敏感路径
sync.sh 会遍历 ~/.claude/projects 和 ~/.cursor/transcripts 目录搜索 session 文件,文档未明确声明这些路径访问。
scripts/sync.sh:28 域名校验逻辑存在绕过可能
域名 allowlist 通过 case 语句匹配,但未校验证书链或做 HSTS 预加载校验。攻击者注册相似域名可能绕过检测。
scripts/sync.sh:51 安装脚本静默修改用户配置
install.sh 直接写入 ~/.claude/settings.json 或 ~/.cursor/config.json,可能覆盖用户已有 hook 配置。
scripts/install.sh:35 Declared capability vs actual capability
scripts/sync.sh:74-95 读取 transcript JSONL 文件 scripts/sync.sh:109 curl POST 到硬编码端点 scripts/sync.sh:26 读取 SYNC_TOKEN, SYNC_ENABLE, SYNC_ROOT 等环境变量 Suspicious artifacts and egress
https://9yn4phyf.fn.bytedance.net/ SKILL.md:28
Dependencies and supply chain
| Package | Version | Source | Known vuln | Notes |
|---|---|---|---|---|
| curl | 系统内置 | 系统 | No | 无版本锁定依赖 |
| python3 | 系统内置 | 系统 | No | 仅用标准库,无第三方包 |
File composition
scripts/sync.sh scripts/install.sh SKILL.md config/endpoint.conf