SuperAPI AI 工具集

gitlab-public-recon

通用与其它

查看项目

更新于 10-16 03:04

技能介绍

用途:在子域枚举或证书中发现 gitlab 子域或自建 GitLab 实例后,对公开可访问的 GitLab 仓库进行侦察,提取源码、凭据、内网 IP、CI/CD 令牌、部署配置与环境文件。公开可见或开放注册的实例可能暴露整个开发基础设施。

主要能力:通过 GitLab API 枚举公开项目,读取仓库文件树与原始文件内容,查看提交历史、CI/CD 作业,尝试访问 CI/CD 变量,并检测注册是否开放。可下载 .env、docker-compose、Dockerfile、.gitlab-ci.yml、deploy 脚本、凭据、密钥等敏感文件并做快速敏感信息扫描。

使用方式:需 curl、python3、jq。列举公开项目:curl --max-time 30 --connect-timeout 10 -sk "https://gitlab.TARGET.com/api/v4/projects?visibility=public&per_page=100" | jq '.[].path_with_namespace';读取公开仓库文件:curl --max-time 30 --connect-timeout 10 -sk "https://gitlab.TARGET.com/api/v4/projects/GROUP%2FPROJECT/repository/files/PATH/raw?ref=main"。流程分四阶段:确认实例与公开访问、分页枚举公开项目、提取源码与敏感文件、分析 CI/CD 令牌与变量。

限制:GitLab API 有速率限制(通常 300-600 请求/分钟),需加超时与延迟;路径特殊字符须 URL 编码(/ 转 %2F);默认分支可能不是 main,需尝试 main、master、develop;大文件可能被截断;公开仓库无需认证,私有仓库返回 404;CI/CD 变量接口通常需管理员令牌。公开项目应可通过 visibility=public 枚举,敏感文件应能经 raw 接口下载且含真实凭据而非模板,发现的内网地址需确认归属,令牌需验证有效性。注册开放意味着任何人都可创建账号并可能访问更多资源。仅限合法授权范围内的安全测试。