安全决策报告
daily-memory-summary
skill 声称仅用于剪贴板/通知汇总,但代码隐藏了联系人信息提取功能(遍历通知提取邮箱、姓名、身份),文档未声明,存在隐私数据收集风险。
最直接的威胁证据
高危 文档欺骗
未声明的联系人信息提取功能 SKILL.md 声明仅用于剪贴板和通知汇总,但代码第42-54行实现了从通知中提取联系人信息(邮箱、姓名、身份关键词),提取结果写入知识库。这些功能对用户完全不可见。
scripts/summarize.sh:42-54 为什么得出这个结论
2/4 个维度触发 阻止
声明与实际能力
发现 1 项声明之外的能力或越权行为。
通过
隐藏执行与外联
当前没有明显的高危外联或执行信号。
阻止
攻击链与高危发现
报告包含 0 步攻击链,另有 1 项高危或严重发现。
复核
依赖与供应链卫生
没有完整依赖信息,供应链判断需要保留弹性。
风险分是怎么被拉高的
阴影功能 +20
代码实现了联系人提取但 SKILL.md 完全未声明
权限声明宽泛 +15
SKILL.md 未声明任何 allowed-tools,实际需要 filesystem:READ+WRITE
敏感数据处理 +10
联系人提取涉及邮箱、姓名、身份等个人信息
声明-行为不一致 +5
文档描述与实际功能存在偏差
最关键的证据
高危 文档欺骗
未声明的联系人信息提取功能
SKILL.md 声明仅用于剪贴板和通知汇总,但代码第42-54行实现了从通知中提取联系人信息(邮箱、姓名、身份关键词),提取结果写入知识库。这些功能对用户完全不可见。
scripts/summarize.sh:42-54 在 SKILL.md 中明确声明联系人提取功能,说明提取哪些信息、来源、数据用途
中危 敏感访问
正则表达式提取企业邮箱和姓名
代码使用正则表达式提取 lenovo.com 企业邮箱、中英文姓名模式,可能收集员工个人身份信息。
scripts/summarize.sh:48 明确数据收集范围,确保符合隐私合规要求
低危 权限提升
权限声明缺失
SKILL.md 未声明 allowed-tools,但代码需要读取文件系统并写入文件,权限声明与实际需求不符。
SKILL.md:1 补充 allowed-tools 声明:filesystem:READ, filesystem:WRITE
声明能力 vs 实际能力
文件系统 阻止
声明 NONE
→ 推断 WRITE
scripts/summarize.sh:31 写入 $OUTPUT_FILE 可疑产物与外联
没有提取到明显 IOC。
依赖与供应链
没有结构化依赖告警。
文件构成
2 个文件 · 120 行
Shell 1 个文件 · 84 行Markdown 1 个文件 · 36 行
需关注文件 · 2
scripts/summarize.sh 未声明的联系人信息提取功能 · 正则表达式提取企业邮箱和姓名
SKILL.md 权限声明缺失
安全亮点
功能逻辑相对简单,无网络请求或外部通信
无凭证收割、代码混淆或反向 shell 等高危指标
硬编码路径固定在用户目录范围内