前言¶
GitHub Actions 工作流是供应链攻击的主要入口。开发者常因配置疏忽引入风险,例如使用未锁定的 Action 版本、赋予过宽的权限或在脚本中输出敏感信息。dsh-ci-guard 是一个用于扫描 GitHub Actions 工作流的检查工具,旨在找出这些可被利用的配置,帮助修复潜在的安全漏洞。
插件定位¶
该插件由 feely0208 维护,属于 admin-security 分类。其核心价值在于通过自动化检查,辅助开发者识别工作流中的安全配置缺陷。
核心功能¶
该插件主要执行以下检查:
- 检查 Action 未锁版本
- 检查权限过宽
- 检查脚本注入
- 检查 echo secrets
- 列出规则和依据
安装与启用¶
安装命令如下:
dsh plugin --profile web add @deepwhale-cn/dsh-ci-guard
或直接使用 CLI 运行:
npx @deepwhale-cn/dsh-ci-guard
典型用法¶
安装完成后,可通过以下命令使用:
dsh-ci-guard # 扫描当前目录
dsh-ci-guard --demo # 查看检出效果
dsh-ci-guard --list-rules # 列出规则和依据
dsh-ci-guard --html r.html # 生成 HTML 报告
局限性与注意¶
使用时需注意以下事项:
- 解析方式:插件使用正则匹配 YAML,并非真正的解析器。如果 YAML 写法奇特(如包含锚点或多文档),可能会漏检。
- 覆盖范围:仅覆盖 GitHub Actions,不包含 GitLab CI / Jenkins。
- 人工判断:
pull_request_target单独出现不一定构成危险,需结合上下文人工判断。 - 法律责任:使用者必须遵守所在地区法律法规,对使用本项目造成的任何后果自行承担责任。
结尾¶
该工具适合需要在 DeepSeek Harness 环境中管理 CI/CD 安全风险的开发者。更多插件可查阅 DSH 插件目录 或访问 GitHub 仓库。