挖洞经验 | 通过GitHub上泄露的dotfile文件获得Zendesk代码项目和网络资产访问权限
字数 1438 2025-08-18 11:38:37
通过GitHub泄露的dotfile文件获取企业敏感权限的教学分析
1. 案例背景
本案例展示了如何通过监测GitHub等第三方平台上的信息泄露,发现并利用企业无意公开的敏感配置文件(dotfile),从而获取企业内部系统访问权限的过程。
2. 核心概念解析
2.1 dotfile文件
- 通常以
.开头的配置文件 - 存储应用程序、工具或系统的配置信息
- 常见于用户主目录(~/)或项目根目录
- 可能包含:API密钥、访问令牌、数据库凭证等敏感信息
2.2 涉及的敏感系统
-
Artifactory:
- JFrog公司的仓库管理软件
- 用于企业内部代码库管理
- 通过API密钥进行身份验证
-
Google Cloud:
- Google云服务平台
- 包含传统密码凭据和OAuth令牌
- 可访问云资源、计算实例等
3. 漏洞发现过程
3.1 监测工具
- TPPE模块(Third-Party Platform Exposure):
- 专门监测GitHub、PasteBin和Trello等平台
- 识别组织机构的敏感信息泄露
- 自动化扫描公开代码仓库
3.2 发现的两个关键仓库
仓库1:
- 包含两种凭证格式:
- Artifactory token凭据
- Google Cloud传统密码凭据文件夹
验证方法:
export ARTIFACTORY_KEY="<REDACTED>";
export ARTIFACTORY_USERNAME="<REDACTED>";
curl -u $ARTIFACTORY_USERNAME:$ARTIFACTORY_KEY https://<REDACTED>/artifactory/api/build
Google Cloud验证:
cp <REDACTED>/.config/gcloud ~/.config/gcloud
gcloud projects list
仓库2:
- 包含不同类型的Artifactory token
- 验证方法类似:
export ARTIFACTORY_USERNAME="<REDACTED>"
export ARTIFACTORY_API_KEY="<REDACTED>"
curl -i -u $ARTIFACTORY_USERNAME:$ARTIFACTORY_API_KEY https://<REDACTED>/<REDACTED>/artifactory/api/
4. 漏洞利用分析
4.1 Artifactory访问
- 获取内部代码库访问权限
- 可能下载私有代码、依赖包
- 潜在的攻击面扩大
4.2 Google Cloud访问
- 列出150多个代码项目
- 访问生产、预生产和开发环境
- 可能的SSH访问计算实例:
gcloud compute ssh <instance>
5. 防御措施
5.1 预防措施
-
代码审查:
- 实施严格的代码提交前审查
- 使用预提交钩子检查敏感信息
-
凭证管理:
- 使用密钥管理系统(Vault, AWS Secrets Manager等)
- 避免硬编码凭证
- 使用短期有效的令牌
-
.gitignore配置:
- 确保忽略所有配置文件
.env *.key .config/
5.2 检测措施
-
持续监控:
- 部署类似TPPE的监控系统
- 定期扫描公开平台
-
工具推荐:
- gitrob: 检查GitHub仓库中的敏感信息
- truffleHog: 搜索提交历史中的高熵字符串
- Gitleaks: 基于规则的敏感信息扫描
-
历史清理:
- 使用BFG或git-filter-repo清理历史提交中的敏感信息
6. 事件响应
6.1 应急步骤
- 立即撤销泄露的所有令牌
- 轮换所有可能受影响的凭证
- 审计使用过这些凭证的活动
- 评估潜在的数据泄露影响
6.2 漏洞报告
- 通过HackerOne等平台报告
- 提供详细的重现步骤
- 包含证据截图和curl命令输出
7. 经验总结
-
开发习惯:
- 教育开发人员安全意识
- 建立安全的开发工作流程
-
自动化防护:
- 在CI/CD管道中加入敏感信息扫描
- 设置仓库推送前的自动检查
-
最小权限原则:
- 限制令牌的权限范围
- 避免使用全局管理员权限
-
价值认知:
- 此类漏洞通常有高额赏金(案例中获$6,000)
- 对企业可能造成严重业务影响
8. 扩展学习
-
类似案例:
- Snapchat GitHub Token泄露($15,000赏金)
- Uber AWS凭证泄露
-
进阶工具:
- AWS Scout2: 检查AWS凭证权限
- Git-all-secrets: 聚合多个敏感信息扫描工具
-
研究资源:
- GitHub安全指南
- OWASP密钥管理备忘单