Agent Skills
返回列表
🔒

Jenkins 共享库审计器

IT 运维与安全 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/jenkins-shared-library-auditor-agent

技能介绍

安全风险:共享库中的隐形炸弹

Jenkins共享库作为流水线的“心脏”,承载着代码编译、测试、部署等核心逻辑。然而,当开发者在共享库中编写Groovy脚本时,可能无意中引入安全漏洞:调用Runtime.exec()执行系统命令、在日志中打印环境变量中的密码、利用@NonNull注解绕过沙箱限制……这些“隐形炸弹”一旦被触发,轻则导致构建失败,重则引发数据泄露或服务器沦陷。传统代码扫描工具往往忽略Jenkins特有的脚本上下文,而共享库审计器正是为填补这一空白而生。

核心能力:深度审计的三大支柱

该技能通过“API拉取+AST解析+规则匹配”三重机制实现精准检测:

  • Jenkins Script Console API集成:自动获取共享库的代码结构,支持多分支、多目录的递归遍历,确保审计覆盖全量脚本。
  • Groovy AST静态分析:构建抽象语法树,识别动态方法调用(如invokeMethod)、跨文件变量传递(如env对象污染)等隐蔽风险,比正则匹配更可靠。
  • 安全规则引擎:内置20+条Jenkins专属规则,涵盖沙箱逃逸(如GroovyShell滥用)、凭据泄露(如credentials插件API误用)、危险操作(如sh命令注入)等场景,支持自定义规则扩展。

适用边界:审计不是万能药

  • 动态代码盲区:对于运行时生成的脚本(如通过writeFile动态写入的Groovy代码),AST分析可能失效,需结合运行时日志二次验证。
  • 版本兼容性:依赖Jenkins核心版本(建议2.289+),旧版本可能存在API差异导致漏报。
  • 误报控制:当共享库使用动态方法名(如method${suffix})时,可能触发规则误报,需通过白名单机制手动豁免。

使用场景

  • 安全团队定期审计CI/CD流水线中的共享库代码,检测潜在安全漏洞
  • 开发团队在共享库更新后进行安全扫描,确保新代码符合安全规范
  • CI/CD工程师排查流水线安全问题,定位共享库中的不安全方法调用
  • DevOps工程师优化共享库代码前执行安全检查,预防沙箱逃逸风险

适合人员

  • Jenkins管理员,负责维护和优化共享库安全
  • CI/CD工程师,需要确保流水线共享库代码安全
  • 安全工程师,专注于CI/CD环境的安全审计工作
  • DevOps团队,管理共享库的开发和维护流程