【计算机工具类-安全工具Skills】agentic-actions-auditor 技能
审计GitHub Actions工作流中AI代理集成的安全漏洞,包括Claude Code Action、Gemini CLI、OpenAI Codex和GitHub AI Inference。检测攻击者控制的输入到达CI/CD管道中运行的AI代理的攻击向量。技能概述agentic-actions-auditor 技能是一个专门用于GitHub Actions工作流安全审计的技能,专注于检测AI编码代理集成中的安全漏洞。该技能提供静态安全分析指导,帮助发现工作流文件、识别AI操作步骤、跟踪跨文件引用、捕获安全相关配置,并检测攻击者控制的输入到达CI/CD管道中AI代理的攻击向量。下载地址:https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/agentic-actions-auditor主要功能工作流发现: 本地或远程发现GitHub Actions工作流文件AI操作识别: 识别Claude Code Action、Gemini CLI、OpenAI Codex、GitHub AI Inference等AI代理跨文件解析: 跟踪复合操作和可重用工作流中的隐藏AI代理安全上下文捕获: 捕获触发事件、环境变量、权限配置等安全相关信息攻击向量检测: 检测9种主要攻击向量,包括环境变量中介、直接表达式注入、CLI数据获取等结构化报告: 生成可操作的安全发现报告,包含严重性评估和修复建议触发条件在以下情况下应该调用此技能:审计仓库的GitHub Actions工作流中的AI代理安全审查调用Claude Code Action、Gemini CLI或OpenAI Codex的CI/CD配置检查攻击者控制的输入是否可以到达AI代理提示评估代理操作配置(沙箱设置、工具权限、用户白名单)评估暴露工作流到外部输入的触发事件调查从GitHub事件上下文通过env块到AI提示字段的数据流使用场景场景1: 本地工作流审计扫描本地仓库的.github/workflows/目录,识别所有AI代理集成并检测安全漏洞。场景2: 远程仓库审计通过GitHub API获取远程仓库的工作流文件,进行安全分析并生成报告。场景3: CI/CD安全审查在CI/CD管道中集成此技能,自动检测新添加的AI代理集成的安全问题。处理过程1. 确定分析模式根据用户提供的是GitHub仓库URL还是本地路径,选择远程分析模式或本地分析模式。2. 发现工作流文件使用Glob定位所有GitHub Actions工作流文件(.github/workflows/*.yml和*.yaml)。3. 识别AI操作步骤检查每个工作流文件中的每个作业和步骤,识别已知的AI操作引用:anthropics/claude-code-actiongoogle-github-actions/run-gemini-cliopenai/codex-actionactions/ai-inference4. 捕获安全上下文为每个识别的AI操作步骤捕获安全相关信息:步骤级配置: prompt、claude_args、allowed_non_write_users、sandbox等工作流级上下文: 触发事件、环境变量、权限配置5. 分析攻击向量检查9种主要攻击向量:向量A: 环境变量中介向量B: 直接表达式注入向量C: CLI数据获取向量D: PR Target Checkout向量E: 错误日志注入向量F: 子shell扩展向量G: AI输出eval向量H: 危险沙箱配置向量I: 通配符白名单6. 报告发现生成结构化的发现报告,包含:执行摘要摘要表格按工作流分组的详细发现严重性评估数据流跟踪修复建议输入要求使用此技能时,用户需要提供:本地仓库路径,或GitHub仓库URL或owner/repo标识符可选: 特定分支、标签或SHA引用输出说明技能将提供:分析的工作流数量和AI操作实例数量安全发现总数及按严重性分类每个发现的详细信息(标题、严重性、文件、步骤、影响、证据、数据流、修复)跨文件引用解析结果安全配置评估使用示例示例1: 审计本地仓库请审计当前仓库的GitHub Actions工作流中的AI代理安全示例2: 审计远程仓库请审计 https://github.com/owner/repo 的AI代理集成安全示例3: 审计特定分支请审计 owner/repomain 分支的工作流安全最佳实践定期审计: 在添加新的AI代理集成或修改工作流时进行安全审计关注触发事件: 特别注意pull_request_target、issue_comment等外部触发事件检查环境变量: 仔细检查env块中是否包含事件数据引用验证沙箱配置: 确保沙箱配置安全,避免danger-full-access等危险模式限制用户白名单: 避免使用通配符*,使用明确的用户列表审查工具权限: 限制AI代理可用的工具集,避免危险的子shell扩展常见错误认知错误1: 只对维护者的PR运行错误原因: 忽略了pull_request_target、issue_comment等触发事件会将操作暴露给外部输入。攻击者不需要写权限即可触发这些工作流。错误2: 我们使用allowed_tools限制功能错误原因: 工具限制仍可能被武器化。即使受限的工具如echo也可能通过子shell扩展被滥用。错误3: 提示中没有${{ }},所以安全错误原因: 这是经典的环境变量中介遗漏。数据通过env块流向提示字段,提示本身看起来很干净,但AI代理仍接收攻击者控制的输入。错误4: 沙箱防止任何实际损害错误原因: 沙箱配置错误会完全禁用保护。即使正确配置的沙箱,如果AI代理可以读取环境变量或挂载文件,也会泄露秘密。注意事项仅用于分析使用AI代理操作的工作流这是静态分析指导,不是运行时提示注入测试不适用于非GitHub CI/CD系统(Jenkins、GitLab CI、CircleCI)此技能报告发现,不自动修复或修改工作流文件该技能具有安全风险等级,可以放心使用