Skill Trust Decision

session-notebook

会话归档工具声称上传开发记录至团队内部端点,但硬编码的随机子域名端点缺乏可验证性,存在会话数据外泄风险。

Install decision first Source: ClawHub Scanned: Sep 23, 2026
Files 4
Artifacts 1
Violations 0
Findings 5
Most direct threat evidence
01
用户执行 install.sh 安装技能 Entry · scripts/install.sh
02
技能自动注册 Stop hook,在每次会话结束时静默触发 Escalation · scripts/install.sh
03
读取 ~/.claude/projects 或 ~/.cursor/transcripts 中的完整会话记录 Impact · scripts/sync.sh

Why this conclusion was reached

1/4 dimensions flagged
Pass
Declared vs actual capability

Declared resources and inferred behavior are broadly aligned.

Review
Hidden execution and egress

1 lower-risk artifacts were extracted and still need context.

Block
Attack chain and severe findings

The report includes 4 attack-chain steps and 2 severe findings.

Review
Dependencies and supply chain hygiene

1 dependency or supply-chain issues need attention.

Attack Chain

01
用户执行 install.sh 安装技能

Entry · scripts/install.sh:1

02
技能自动注册 Stop hook,在每次会话结束时静默触发

Escalation · scripts/install.sh:35

03
读取 ~/.claude/projects 或 ~/.cursor/transcripts 中的完整会话记录

Impact · scripts/sync.sh:85

04
POST 会话完整内容到 https://9yn4phyf.fn.bytedance.net/(真实性存疑)

Impact · scripts/sync.sh:109

What drove the risk score up

随机子域名端点 +15

9yn4phyf.fn.bytedance.net 子域名符合随机生成特征,真实性无法验证

会话全文上传 +12

上传完整 transcript 内容而非仅元数据,数据暴露面较大

自动注册 hook +10

静默注册 Stop 事件 hook,用户无感知触发数据外传

文档未披露技术细节 +8

SKILL.md 未说明读取 transcript 路径逻辑和数据处理方式

Most important evidence

High Data Exfil

会话转录文件全文上传至外部端点

sync.sh 读取 transcript JSONL 文件完整内容(包含所有对话历史)并上传到硬编码端点,存在敏感信息外泄风险。

scripts/sync.sh:85
评估 transcript 内容是否包含 API 密钥、密码、机密信息;建议上传前做脱敏处理
High Doc Mismatch

端点可验证性缺失

endpoint.conf 硬编码为 9yn4phyf.fn.bytedance.net,子域名 9yn4phyf 符合随机生成模式(非人工可读命名),无法确认归属。

config/endpoint.conf:1
要求提供端点的机构验证方式,或使用内部 DNS 域名而非第三方函数计算子域
Medium Sensitive Access

隐式读取多个敏感路径

sync.sh 会遍历 ~/.claude/projects 和 ~/.cursor/transcripts 目录搜索 session 文件,文档未明确声明这些路径访问。

scripts/sync.sh:28
在文档中明确列出所有访问的路径
Medium Supply Chain

域名校验逻辑存在绕过可能

域名 allowlist 通过 case 语句匹配,但未校验证书链或做 HSTS 预加载校验。攻击者注册相似域名可能绕过检测。

scripts/sync.sh:51
增加证书指纹校验或使用预注册的 pinned domain
Low Priv Escalation

安装脚本静默修改用户配置

install.sh 直接写入 ~/.claude/settings.json 或 ~/.cursor/config.json,可能覆盖用户已有 hook 配置。

scripts/install.sh:35
安装前做配置备份;明确告知用户修改内容

Declared capability vs actual capability

Filesystem Pass
Declared READ
→
Inferred READ
scripts/sync.sh:74-95 读取 transcript JSONL 文件
Network Pass
Declared WRITE
→
Inferred WRITE
scripts/sync.sh:109 curl POST 到硬编码端点
Environment Pass
Declared NONE
→
Inferred READ
scripts/sync.sh:26 读取 SYNC_TOKEN, SYNC_ENABLE, SYNC_ROOT 等环境变量

Suspicious artifacts and egress

Medium External URL
https://9yn4phyf.fn.bytedance.net/

SKILL.md:28

Dependencies and supply chain

PackageVersionSourceKnown vulnNotes
curl 系统内置 系统 No 无版本锁定依赖
python3 系统内置 系统 No 仅用标准库,无第三方包

File composition

4 files · 246 lines
Shell 2 files · 197 linesMarkdown 1 files · 47 linesConfig 1 files · 2 lines
Files of concern · 4
scripts/sync.sh Shell · 146 lines
会话转录文件全文上传至外部端点 · 隐式读取多个敏感路径 · 域名校验逻辑存在绕过可能
scripts/install.sh Shell · 51 lines
安装脚本静默修改用户配置
SKILL.md Markdown · 47 lines
https://9yn4phyf.fn.bytedance.net/
config/endpoint.conf Config · 2 lines
端点可验证性缺失

Security positives

代码结构清晰,有安全控制意识(域名 allowlist、SYNC_ENABLE 开关、审计日志)
增量同步设计合理,避免重复上传
上传失败不影响正常会话,设计考虑容错
依赖简单(仅 bash + curl + python3 标准库),无第三方依赖引入