Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/rhinosecuritylabs/cloudgoat
漏洞扫描器无服务器安全CTF渗透测试云安全错误配置学习与教育实验室与实践实验室与实践 分类第 12 名无服务器安全 分类第 12 名
GitHubrhinosecuritylabs/cloudgoat

cloudgoat

CloudGoat 是 Rhino 安全实验室的 "设计即漏洞" AWS 部署工具

查看仓库
3.7k763286个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CloudGoat (☁️🐐)

Rhino PyPI GitHub license PRs Welcome

CloudGoat 是 Rhino Security Labs 的“Vulnerable by Design”云部署工具。

快速参考

  • 获取帮助的渠道: Rhino Security Labs Discord, 或 Stack Overflow

  • 提交问题的地址: https://github.com/RhinoSecurityLabs/cloudgoat/issues

  • 维护者: CloudGoat 社区

CloudGoat 2.0 来了!

CloudGoat 是 Rhino Security Labs 的“Vulnerable by Design”云部署工具。它允许你通过创建并完成多个“夺旗赛”风格的场景来磨练你的云网络安全技能。每个场景由云资源组合而成,提供了结构化的学习体验。有些场景简单,有些困难,许多场景提供了多种通往胜利的路径。作为攻击者,你的使命是探索环境、识别漏洞并利用它们达到场景的目标。

以下是 CloudGoat 的主要目标:

  • 专注、精选、高质量的学习体验 – CloudGoat 的每个场景都应提供实验、探索和构建实践云安全技能的机会。
  • 良好的文档 – 我们已尽最大努力确保 CloudGoat 场景文档完善,且难度、内容、结构和所需技能容易理解和评估。
  • 易于安装和使用 – 我们理解 CloudGoat 是学习与练习云安全渗透测试的一种手段。因此,我们力求简单、直接和可靠。
  • 模块化 – 每个场景都是独立的学习环境,具有明确的目标(或一组目标),CloudGoat 能够独立启动、重置或关闭每个场景。
  • 可扩展性 – CloudGoat 的核心组件(Python 应用和场景)设计上允许轻松独立扩展——由我们或社区进行。

在继续之前,请注意以下警告!

警告 #1: CloudGoat 会在你的账户中创建故意存在漏洞的资源。请勿在生产环境或任何敏感资源旁边部署 CloudGoat。

警告 #2: CloudGoat 只能管理它创建的资源。如果你在场景中自行创建了任何资源,应在运行 destroy 命令之前手动删除它们。

系统要求

  • Linux 或 macOS。Windows 不受官方支持。
    • 参数制表符补全需要 bash 4.2+(Linux,或在 macOS 上较难配置)。
  • 需要 Python 3.9+。
  • Terraform >= 1.5.0 安装并配置到 $PATH 中。
  • AWS CLI 安装并配置到 $PATH 中,以及具有足够权限创建和销毁资源的 AWS 账户。
  • Azure CLI 安装并配置到 $PATH 中,以及具有足够权限创建和销毁资源的 Azure 账户。
  • jq

Linux```bash sudo apt install terraform awscli azure-cli jq -y

Mac```bash
brew install terraform awscli azure-cli jq

快速开始

要安装 CloudGoat,请确保你的系统满足上述要求,然后运行以下命令:```bash pipx install cloudgoat

您可能还想运行一些快速配置命令 - 这样可以节省以后的时间:

为AWS进行配置 - 告诉CloudGoat要使用哪个AWS配置文件。```bash
cloudgoat config aws

Configure for Azure - 告诉 CloudGoat 要使用的 Azure 订阅。```bash cloudgoat config azure

登录到 Azure - CloudGoat 使用当前活动的 `az` 账户。```bash
az login

配置白名单```bash cloudgoat config whitelist --auto

现在,在你的命令行中,CloudGoat 可以 `create` 在云中创建一个场景实例。当环境准备好后,项目基础目录中会创建一个以场景名称命名并附加唯一场景ID的新文件夹。该文件夹内有一个名为 `start.txt` 的文件,其中包含你开始场景所需的所有资源,不过这些资源也会在 `create` 命令完成时打印到你的控制台中。有时还会创建一个名为 `cloudgoat`/`cloudgoat.pub` 的 SSH 密钥对。

> **注意:** 不要删除或修改场景实例文件夹或其中的文件,否则可能导致 CloudGoat 无法管理你的场景资源。

在完成场景的过程中,可以随时参考场景的 readme 文件获取指导。如果遇到困难,每个路线的演练底部都提供了作弊表链接。

当你完成场景后,删除你自己创建的任何资源(记住:CloudGoat 只能管理它自己创建的资源),然后运行 `destroy` 命令。之后,最好快速浏览一下你的 Web 控制台——以防有些资源没有被删除。

你可以在 [使用指南章节](#usage-guide) 中阅读 CloudGoat 命令的完整文档。

## 如何使用 CloudGoat 的 Docker 镜像

[![Try in PWD](https://raw.githubusercontent.com/play-with-docker/stacks/cff22438cb4195ace27f9b15784bbb497047afa7/assets/images/button.png)](http://play-with-docker.com?stack=https://raw.githubusercontent.com/RhinoSecurityLabs/cloudgoat/master/docker_stack.yml)

### 选项 1:使用默认入口点运行```console
docker run -it rhinosecuritylabs/cloudgoat:latest

选项 2:使用 AWS 配置和凭据运行

警告:运行此命令会将本地 AWS 配置文件挂载到启动的 Docker 容器中。这意味着任何能够访问该容器的用户都将能够访问您主机上的 AWS 凭据。```console docker run -it -v ~/.aws:/root/.aws/ rhinosecuritylabs/cloudgoat:latest

## 可用场景
(按难度分组)

<details open>
  <summary><strong>简单</strong></summary>

---

### iam_enum_basics(简单)
`cloudgoat create iam_enum_basics`

在本场景中,你将获得一个名为 Bob 的低级 IAM 用户的访问密钥。你的任务是使用 AWS CLI 进行全面的 IAM 枚举。通过调查托管策略、内联策略、组成员身份和可代入角色,你将发现五个不同的标志。

[访问场景页面。](https://github.com/rhinosecuritylabs/cloudgoat/blob/master/cloudgoat/scenarios/aws/iam_enum_basics/README.md)  

贡献者:Tyler Ramsbey

---

### data_secrets(简单)
`cloudgoat create data_secrets`

在本场景中,你将从一个权限有限的 IAM 用户开始。你的任务是识别一个配置错误的 EC2 实例,该实例在其用户数据中泄漏了凭据,从而允许你获得 SSH 访问权限。接下来,你必须通过利用实例元数据服务 (IMDS) 窃取角色、枚举 Lambda 函数以发现隐藏的环境变量,并最终攻破一个有权访问场景目标的用户:存储在 AWS Secrets Manager 中的秘密。

[访问场景页面。](https://github.com/rhinosecuritylabs/cloudgoat/blob/master/cloudgoat/scenarios/aws/data_secrets/README.md)  

贡献者:Tyler Ramsbey

---

### beanstalk_secrets(简单)
`cloudgoat create beanstalk_secrets`

在本场景中,你将获得一组低权限的 AWS 凭据,这些凭据授予对 Elastic Beanstalk 的有限访问权限。你的任务是枚举 Elastic Beanstalk 环境,并发现包含二级凭据的配置错误的环境变量。使用这些二级凭据,你可以枚举 IAM 权限,最终为管理员用户创建访问密钥。凭借这些管理员权限,你将从 AWS Secrets Manager 中检索最终标志。

[访问场景页面。](https://github.com/rhinosecuritylabs/cloudgoat/blob/master/cloudgoat/scenarios/aws/beanstalk_secrets/README.md)  

贡献者:Tyler Ramsbey

---

### sns_secrets(简单)
`cloudgoat create sns_secrets`

在本场景中,你从一个 AWS 账户的基本访问权限开始。你需要枚举你的权限,发现一个可以订阅的 SNS 主题,检索一个泄漏的 API 密钥,最后使用该 API 密钥访问 API Gateway 以获取最终标志。

[访问场景页面。](https://github.com/rhinosecuritylabs/cloudgoat/blob/master/cloudgoat/scenarios/aws/sns_secrets/README.md)  

贡献者:Tyler Ramsbey

---
下载工具