GitLab攻击工具链:一键洞穿CI/CD密码的核武器"

admin 2026-10-18 11:10:04 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

cover_image

GitLab攻击工具链:一键洞穿CI/CD密码的核武器

棉花糖糖糖
棉花糖糖糖

棉花糖网络安全工具箱

2026年6月5日 10:52
四川

在小说阅读器读本章

去阅读

郑重声明:本文仅作技术研究交流,切勿用于未授权渗透测试。使用者需严格遵守适用法律法规,因不当使用导致的一切后果概由使用者自行承担。

重点导读功能概览

Glato(GitLab Attack Toolkit)是Praetorian公司开源的GitLab安全评估工具。该工具专用于红队对抗与蓝队防御场景,可对GitLab实例的公开及私有仓库进行深度探测与漏洞利用。

该工具基于Python 3.7+开发,支持OS X与Linux系统,提供Token认证与Cookie认证两种身份验证方式。

重点导读核心能力

PART 01令牌分析

支持对GitLab个人访问令牌(PAT)与会话Cookie进行权限范围评估。可检测令牌所具备的API访问级别与实际权限边界,帮助判断横向移动潜力。

PART 02项目枚举

自动发现目标实例中所有可访问的项目,提取项目元数据、可见性级别、成员列表及访问控制策略。支持批量枚举与结果导出。

PART 03群体枚举

映射GitLab组织内的群组结构,分析群组级别权限模型与继承关系,识别潜在的高权限群组与权限升级路径。

PART 04分支保护检测

识别仓库分支保护规则配置缺陷,发现允许强制推送或缺少必需审批流程的分支,定位低权限开发者直接提交代码的入口点。

PART 05密钥枚举

该功能支持从多个层级提取敏感信息:

  • 项目级CI/CD变量与安全文件
  • 群组级CI/CD变量
  • 实例级CI/CD变量
  • 管道YAML递归插值分析(当API权限受限时触发)
  • 下游管道标志密钥

PART 06运行时枚举

对自托管GitLab运行器进行全面探测,分析要点包括:

  • 注册的自托管运行器发现
  • 运行器标签需求解析
  • 近期管道日志使用模式分析
  • 需求差距识别
  • 完整攻击面映射

PART 07有毒管道攻击

通过管道执行实现敏感信息外泄,整个攻击流程如下:

  1. 在目标项目创建新分支
  2. 生成非对称密钥对
  3. 向仓库推送恶意.gitlab-ci.yml文件
  4. 管道触发后,工具获取构建日志中的加密对称密钥
  5. 使用私钥解密对称密钥
  6. 解密环境变量输出内容
  7. 清理攻击痕迹

PART 08API速率控制

内置请求节流机制,可配置请求间隔时间,避免触发目标实例的异常检测规则。

重点导读技术架构

glato/
├── attack/          # 攻击模块
├── enumerate/      # 枚举模块
├── gitlab/         # GitLab API交互
├── models/         # 数据模型
├── services/       # 服务抽象
└── util/           # 工具函数

核心模块说明:

  • attack/attack.py - 攻击基类与通用逻辑
  • attack/cicd_attack.py - CI/CD攻击实现
  • enumerate/enumerate.py - 枚举逻辑主体
  • gitlab/api.py - GitLab REST API封装
  • gitlab/secrets.py - 敏感信息提取
  • gitlab/workflow_parser.py - 管道YAML解析
  • models/ - 群组、项目、运行器、安全文件、用户、变量等数据模型

重点导读安装方式

通过pip安装:

bashgit clone https://github.com/praetorian-inc/glato.git
cd glato
python3 -m venv venv
source venv/bin/activate
pip install .

或使用Docker:

bashdocker build -t glato .

重点导读认证配置

PART 09Token认证

设置环境变量或运行时指定:

bashexport GL_TOKEN=<your_token>
glato [options]

PART 10Cookie认证

准备cookies.json配置文件:

json{
  \"azure_access\": \"login.microsoftonline.com<cookies>\",
  \"gitlab_session\": \"gitlab.example.com_gitlab_session=value;\"
}

挂载配置运行:

bashdocker run -v $(pwd)/cookies.json:/app/glato/config/cookies.json glato --cookie-auth [options]

重点导读典型应用场景

PART 11确定受攻击的GitLab PAT范围

在红队评估中,若在脚本里发现硬编码的个人访问令牌,可使用以下命令验证其攻击潜力:

bashglato --enumerate-token

PART 12枚举项目访问权限

bashglato --enumerate-projects
glato --enumerate-secrets  # 同时提取CI/CD变量
glato --throttle <seconds> # 添加请求间隔

PART 13使用替代GitLab URL

bashglato --enumerate-projects -u https://gitlab.yourenterpriseurl.io

PART 14枚举运行器

bashglato --self-enumeration --enumerate-projects --enumerate-groups

PART 15通过PPE提取密钥

bashglato --exfil-secrets-via-ppe --project-path <path> --branch <name>

重点导读项目现状

该仓库已归档,不再维护。Praetorian已将技术能力整合至下一代产品Trajan中。

本公众号非项目作者,仅做技术分享。

https://github.com/praetorian-inc/glato

广告时间

低价考证包括但不限于CISP系列、PMP等等国内网安证书、网络安全交流群请关注公众号后点菜单栏的找棉花糖。

糖心会员站,网络安全必备网站,包括在线内网靶场、web靶场、src靶场、应急响应靶场,以及各种网安资料、教程、方案模版、以及超级多在线工具,99元包年!详细介绍:棉花糖会员站介绍(26年4月26日版本) :在线内网靶场、网安资料方案、在线工具全能资源站,看完介绍百分百心动!


GitLab攻击工具链:一键洞穿CI/CD密码的核武器" 网络安全文章

GitLab攻击工具链:一键洞穿CI/CD密码的核武器"

Glato是Praetorian公司开源的GitLab安全评估工具,专用于红队对抗与蓝队防御场景。该工具支持令牌分析、项目枚举、群组枚举、分支保护检测、密钥枚举、运行时枚举及有毒管道攻击等核心功能,可对GitLab实例进行深度探测与漏洞利用。工具已归档,技术能力整合至下一代产品Trajan中。
密码重置功能手机可篡改导致的账户接管" 网络安全文章

密码重置功能手机可篡改导致的账户接管"

本文揭示了密码重置功能中因服务端未校验验证码与手机号绑定关系导致的账户接管漏洞。攻击者通过修改前端禁用属性将手机号替换为自己的并重新获取验证码,即可重置受害者密码。危害包括完全账户接管,绕过前端限制。建议服务端对验证码与手机号进行强绑定校验。
CTF入门|第8期Misc入门:编码与古典密码" 网络安全文章

CTF入门|第8期Misc入门:编码与古典密码"

本文是CTF入门教程,聚焦Misc方向的编码与古典密码。核心要点包括Base64、Hex、URL等常见编码的识别与解码方法,以及凯撒、维吉尼亚、Atbash等古典密码的原理。文章推荐使用CyberChef等工具进行自动化解码,并强调掌握这些基础技能是CTF比赛的关键。可操作建议是新手应花时间专门练习编码题,熟悉特征识别,以快速解决比赛中的基础题目。
评论:0   参与:  0