CNB仓库异常行为检测
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f12a44b7/cnbll-anomaly-detector。
技能介绍
要解决什么问题
CNB 仓库里的提交往往分散在多个项目与账号下,敏感配置误提交、短时间大量删文件、或在非工作时段的权限与批量变更,单靠人工翻 commit 很难及时发现。本技能把这类模式做成可重复执行的检测规则,并在命中时用群聊把上下文推给值班同学。
技能如何工作
技能通过 CNB API 拉取仓库提交记录,再按内置规则逐条评估是否告警:
- 敏感文件变更(CRITICAL):新增或修改
.env、credentials、*.pem、*.key、id_rsa*、secret*等路径,命中即告警。 - 大批量删除(CRITICAL):单次 commit 删除文件数 > 10 视为异常;> 50 视为严重事件。
- 异常时段提交(WARN):UTC+8 03:00–05:00 且单次变更 > 3 个文件,或非工作时间的仓库权限变更。
- 活跃度突变(INFO):原先 > 14 天无提交的仓库突然大量提交,或单仓库 1 小时内 commit 数 > 10。
告警经 Dashboard API 发到群聊;认证依赖环境变量 CNB_TOKEN 与 DASHBOARD_TOKEN,发送者、敏感路径匹配与「安静时段」起止可通过 ALERT_SENDER、SENSITIVE_PATTERNS、QUIET_HOURS_START / QUIET_HOURS_END 调整。
适用边界与注意点
- 推荐由 cron 每 30 分钟触发,也可在手动安全巡检时执行;规则是启发式,WARN/INFO 级别需结合业务判断,避免把正常发布误当事故。
- 检测质量取决于 CNB 提交 API 的完整性与时间范围;未覆盖的仓库或延迟同步的 commit 可能漏报。
- 自定义
SENSITIVE_PATTERNS时建议与团队密钥管理规范对齐,否则要么噪音多要么漏掉新型密钥文件。
使用场景
- 平台组用 cron 每 30 分钟扫一遍 CNB 组织仓库,有人改 `.env` 或上传 `*.pem` 时在值班群立刻收到 CRITICAL 告警。
- 发布前做一次手动安全巡检:核对近期 commit 是否出现单次删除超过 10 个文件的异常提交。
- 凌晨运维窗口外若出现批量改 3 个以上文件的提交,或发生非工作时间的仓库权限变更,需要 WARN 级提醒当班同学复核。
- 长期无提交的仓库突然 1 小时内 commit 超过 10 次,或 stale 超过 14 天后集中推送,用 INFO 提示排查是否账号被盗或误操作。
适合人员
- 负责 CNB 多仓库治理的平台工程师,需要把敏感文件误提交和大批删除从人工翻 log 改成定时规则 + 群聊推送。
- 做周期性代码仓安全审计的安全工程师,希望在巡检日一键拉近期提交并按 CRITICAL/WARN 分级汇总。
- 承担仓库权限与合规的 DevOps 值班,要覆盖 UTC+8 凌晨时段与非工作时间的异常批量变更。
- 管理大量长期闲置项目仓库的技术负责人,关注 stale 仓库突然被大量 commit 时的早期信号。