CNB仓库异常行为检测
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f12a44b7/anomaly-detector。
技能介绍
要解决什么问题
团队把代码放在 CNB 仓库里,日常变更里一旦混入 .env、*.pem 等敏感文件,或出现大批量删除、凌晨批量提交,往往要到事后审计才发现。CNB 仓库异常行为检测 把这类模式当成可规则化的信号:按提交记录做扫描,命中规则后通过 Dashboard 发到群聊,让值班同学能先看到再决定是否介入。
技能如何工作
触发方式主要是 cron 定时(文档建议约每 30 分钟),也支持你在做手动安全巡检时直接跑一遍。检测依赖 CNB API 拉取仓库提交,告警走 Dashboard API;认证分别用环境变量 CNB_TOKEN 与 DASHBOARD_TOKEN。
规则按严重级别分层:
- CRITICAL — 敏感文件变更:新增或修改
.env、credentials、*.pem、*.key、id_rsa*、secret*等(可用SENSITIVE_PATTERNS扩展),命中即告警。 - CRITICAL — 大批量删除:单次 commit 删除文件数 > 10 记为异常;> 50 视为严重事件。
- WARN — 异常时段提交:UTC+8 凌晨 03:00–05:00(
QUIET_HOURS_START/QUIET_HOURS_END可配)内,批量变更(> 3 个文件)或非工作时间的权限类变更。 - INFO — 活跃度突变:原先 > 14 天 无提交的 stale 仓库突然大量提交,或单仓库 1 小时内 commit 数 > 10。
告警内容由技能按约定格式组装,发送方默认可通过 ALERT_SENDER(默认 openclaw-c)指定。
适用边界与注意点
这是 提交模式与文件路径层面的启发式检测,不能替代代码审查、密钥轮换或 IAM 审计;误报(例如计划内的大重构删除)需要结合仓库上下文人工确认。CNB / Dashboard 令牌需妥善保管,定时任务频率与规则阈值应按团队规模与变更节奏调整,避免告警疲劳。
使用场景
- 平台组为 CNB 上数十个业务仓配置 cron(约 30 分钟),自动扫新 commit 并在群聊推送敏感路径或大批量删除告警
- 发布前做一次手动安全巡检:拉近期提交,确认是否有人改 `.env`、`*.pem` 或单次删掉超过 10 个文件
- 值班同学收到 Dashboard 群告警后,按 CRITICAL/WARN 级别决定是否冻结合并、回滚或联系提交者核实
- 长期无提交的 stale 仓突然出现 1 小时内超过 10 次 commit 时,用 INFO 级信号排查是否账号被盗或误操作批量推送
适合人员
- 负责 CNB 多仓库接入与 `CNB_TOKEN` 维护的基础平台或 DevOps 工程师,需要把提交扫描做成定时任务
- 安全或合规同学,要把敏感文件变更、非工作时段批量提交纳入可审计的即时通知而非事后翻 log
- 对仓库有审批权的 Tech Lead,希望在群聊里先看到大批量删除或权限相关变更再决定是否放行
- 承担夜间/on-call 的 SRE,收到 Dashboard 告警后要在值班通道里快速区分误报与需介入的安全事件