Pre Publish Security

Polar Sponsor
爱发电 赞助
.NET 9.0

针对GitHub/ClawHub 发布版的多层安全审计系统,防止凭证泄露、检测漏洞、验证文档,支持频率感知。

预配置安全协议

功能概述

预配置安全协议是一项面向实际任务的技能,主要用于防止安全漏洞, 如公开源代码中已曝光的证书;FeaturesQQQ 多级别扫描QQ快速扫描: 每一次推(~5s). 历史扫描: 每月深。

核心要点

  • 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
  • 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
  • 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。

使用与执行

从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;

结果检查与注意事项

若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

发布前安全协议

防止在开源发布中暴露凭据等安全漏洞。

功能特性

多层级扫描

  • 快速扫描:每次推送时执行(约 5 秒)
  • 历史扫描:每月一次深度扫描(约 2–5 分钟)
  • 依赖项 CVE 扫描:每周执行 npm/Python 检查(约 30 秒)
  • 完整审计:按需触发的全面扫描(约 3–6 分钟)

智能频率管理

  • 状态跟踪可记录每类扫描的最后执行时间
  • 自动判断需运行哪些扫描任务
  • 避免重复检查

检测范围

  • GitHub PAT、API 密钥、密码、私钥
  • Git 历史中的密钥(即使已“删除”仍可访问)
  • npm/Python 依赖项的 CVE 漏洞
  • 不安全代码模式(如 evalexec
  • 文档占位符(如 [ORG]example.com
  • 缺失 LICENSE/README 文件
  • 导出含密钥的环境变量

自动化防护

  • Git pre-push 钩子阻止存在风险的提交
  • 基于严重等级返回退出码(CRITICAL/HIGH/MEDIUM/LOW)
  • 生成含可操作修复建议的 Markdown 报告

快速上手

安装 pre-push 钩子

# 每次推送时自动启用防护
./install-hooks.sh /path/to/your/repo

首次执行历史扫描

# 一次性深度扫描(或每月执行)
./audit-full.sh /path/to/repo history

查看当前状态

# 查看各扫描任务最后执行时间
./schedule.sh status

运行计划内审计

# 根据时间自动判断需执行的扫描类型
./schedule.sh run /path/to/repo

手动扫描

# 快速扫描(每次推送时执行)
./audit-simple.sh /path/to/repo

# Git 历史扫描(每月执行)
./audit-full.sh /path/to/repo history

# 依赖项扫描(每周执行)
./audit-full.sh /path/to/repo dependencies

# 完整审计(发布前执行)
./audit-full.sh /path/to/repo full

扫描内容说明

快速扫描(每次推送)

  • 当前文件中的密钥模式匹配
  • 文档占位符检测
  • 基础 LICENSE/README 文件存在性检查
  • 执行耗时:约 5 秒

历史扫描(每月执行)

  • 完整 Git 提交历史遍历
  • 已删除但仍可访问的凭据
  • 历史遗留的安全问题
  • 执行耗时:2–5 分钟

依赖项扫描(每周执行)

  • npm audit(Node.js CVE 检测)
  • Python safety 检查
  • 已知漏洞识别
  • 执行耗时:约 30 秒

完整审计(按需执行)

  • 涵盖上述全部检查项
  • 环境变量泄露检测
  • pre-commit 钩子有效性验证
  • 代码质量模式检查
  • 执行耗时:3–6 分钟

严重等级定义

  • CRITICAL → 阻止推送(密钥、凭据泄露)
  • HIGH → 需人工审批(漏洞、缺失 LICENSE)
  • MEDIUM → 警告(TODO 注释、缺失 README)
  • LOW → 信息提示

集成方式

pre-push 钩子(推荐)

./install-hooks.sh ~/my-repo
git push  # 自动执行安全检查

每周定时任务(Cron)

# 添加至 OpenClaw cron
openclaw cron add 
  --name "weekly-repo-scan" 
  --cron "0 3 * * 1" 
  --announce 
  --message "Run: ~/.openclaw/workspace/skills/pre-publish-security/schedule.sh run ~/repo"

手动发布前检查

# 在 clawhub publish 前执行
./audit-full.sh ~/skills/my-skill full
clawhub publish skills/my-skill --version 1.0.1

相关文件

  • audit-simple.sh — 快速 pre-push 扫描脚本
  • audit-full.sh — 具备状态跟踪能力的完整扫描器
  • schedule.sh — 状态查询与智能调度脚本
  • install-hooks.sh — Git 钩子安装脚本
  • audit-state.json — 状态跟踪文件(自动生成)
  • AUDIT-SCHEDULE.md — 详细扫描频率指南
  • README.md — 完整使用文档
  • agents/ — 子代理定义目录(预留未来扩展)

运行依赖

必需依赖:

  • git
  • jq
  • grep

可选依赖(增强检测能力):

  • npm(用于 Node.js 依赖项扫描)
  • pip + safety(用于 Python 依赖项扫描)
  • shellcheck(用于 Bash 脚本校验)

状态跟踪

自动记录以下信息:

  • 每类扫描的最后执行时间戳
  • 各类扫描的累计执行次数
  • 按严重等级统计的累计发现数

查看方式:./schedule.sh status

退出码说明

  • 0 — 通过(无问题,或仅存在 LOW/MEDIUM 级别问题)
  • 1 — 存在 CRITICAL 级别问题(阻止推送)
  • 2 — 存在 HIGH 级别问题(需人工复核)

真实案例

问题:误将 GitHub PAT 写入 git remote URL 并推送
解决方案:本工具捕获该风险并阻止推送
结果:凭据从未被公开暴露

适用场景

  1. 个人开发者:pre-push 钩子防止误操作
  2. 开源项目:防范贡献者引入的安全失误
  3. ClawHub 技能:确保技能发布前完成合规验证
  4. CI/CD 流水线:集成至 GitHub Actions 实现自动化检查
  5. 安全审计:对代码仓库执行全面审查

设计初衷

2026-03-15,某项目因在 git 配置文件中意外暴露 GitHub PAT 导致安全事件。本协议旨在彻底杜绝此类问题——对任何人皆然。

许可证

MIT 协议 — 欢迎自由使用、改进与分享。

参与贡献

欢迎提交 Issue 与 Pull Request:https://github.com/solmas/pre-publish-security

相关专题

更多
Buffalo框架数据库开发全教程
Buffalo框架数据库开发全教程

本专题围绕Buffalo框架数据库开发,讲解database.yml多环境配置、soda与fizz迁移生成回滚、模型结构体标签、增删改查与条件查询、一对多与多对多关联、数据校验、回调钩子、事务处理及原生SQL执行能力。

2026.09.23

0

15

Buffalo框架路由与请求处理实操指南
Buffalo框架路由与请求处理实操指南

本专题讲解Buffalo框架路由与请求处理机制,涵盖路由注册与分组、资源路由、Handler编写规范、Context上下文方法、参数绑定、中间件编写挂载、Session与Cookie读写、Flash消息及错误页面定制方法。

2026.09.23

0

15

Buffalo框架零基础入门教程
Buffalo框架零基础入门教程

本专题整理Buffalo框架入门内容,涵盖Go环境准备、buffalo CLI安装、新项目生成、目录结构说明、dev热加载启动、数据库连接配置与常见报错排查,帮助新手按约定优于配置的思路跑通第一个Buffalo框架应用。

2026.09.23

0

15

Conan创建软件包配方指南
Conan创建软件包配方指南

本专题介绍通过conanfile.py创建软件包的方法,讲解包名、版本、依赖和构建设置等基础信息,以及source、build、package、package_info等常用方法的作用及编写思路。

2026.09.22

0

12

Conan二进制包配置指南
Conan二进制包配置指南

本专题介绍Conan根据操作系统、编译器、架构和构建类型生成二进制包的方法,讲解Profile、Settings、Options及Package ID的作用,帮助管理不同平台和编译环境下的包版本。

2026.09.22

0

13

Conan私有仓库搭建教程
Conan私有仓库搭建教程

本专题系统的讲解Conan私有仓库的搭建流程,涵盖仓库服务部署、存储目录配置、用户认证、权限划分和远程地址添加,并介绍内部C++依赖包的上传、下载及版本维护方法。

2026.09.22

0

19

loomy官网入口地址合集
loomy官网入口地址合集

本专题汇总了 Loomy 桌面 AI 助理的官方入口地址合集及使用指南。提供 macOS 与 Windows 客户端下载 。Loomy 是讯飞推出的桌面级 AI 工作搭子,支持文件整理、数据分析、网页操作及通过飞书/钉钉远程操控电脑,助你高效完成本地办公任务 。

2026.09.22

0

19

NumPy常见函数使用方法
NumPy常见函数使用方法

本专题整理 NumPy 常见函数使用方法相关教程,覆盖函数大全、参数用法、数组运算、统计聚合、排序处理、where 条件筛选、linspace 创建数列等常用场景,帮助读者快速掌握 NumPy 函数调用思路和实际数据处理技巧。

2026.09.22

0

21

NumPy性能优化版本更新与常见报错排查
NumPy性能优化版本更新与常见报错排查

本专题整理 NumPy 性能优化、版本更新与常见报错排查相关教程,覆盖向量化计算、广播性能、内存布局、NumPy 2.0 升级、版本兼容冲突、安装导入报错、dtype 溢出、矩阵运算异常和 broadcasting 报错修复,帮助读者系统掌握 NumPy 性能调优与问题定位方法。

2026.09.22

0

25

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.6万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.2万人学习