攻击者攻陷组织的云基础设施犹如坐拥金矿。有时,一个简单的配置错误或 Web 应用程序中的漏洞,就足以让攻击者攻陷整个基础设施。由于云技术相对较新,许多开发者并未完全意识到威胁面,最终部署了易受攻击的云基础设施。
GCPGoat 是一个在 GCP 上刻意设计存在漏洞的基础设施,涵盖了最新发布的 OWASP Top 10 Web 应用程序安全风险(2021 年)以及基于 IAM、存储桶、云函数和计算引擎等服务配置错误的问题。GCPGoat 模拟了真实世界的基础设施,但加入了额外的漏洞。它包含多个权限提升路径,并侧重于黑盒方法。
GCPGoat 使用 IaC(Terraform)在用户的 GCP 账户上部署易受攻击的云基础设施。这使用户能够完全控制代码、基础设施和环境。使用 GCPGoat,用户可以学习/实践:
该项目将分为多个模块,每个模块是一个独立的 Web 应用程序,采用不同的技术栈和开发实践。它将通过 Terraform 利用 IaC 来简化部署过程。
该项目计划涵盖所有主要漏洞,包括 OWASP TOP 10 2021 以及常见的云配置错误。 目前,该项目包含以下漏洞/配置错误。
手动安装 GCPGoat 需要遵循以下步骤:
(注意:需要一台 Linux 机器,并具备 /bin/bash shell)
第 1 步. 克隆仓库
git clone https://github.com/ine-labs/GCPGoat
第 2 步. 使用 gcloud CLI 配置 GCP 用户账户凭据
gcloud auth application-default login
第 3 步. 在 main.tf 文件中插入结算账户名称
data "google_billing_account" "acct" {
display_name = "<您的结算账户名称>"
}
第 4 步. 在同一工作目录下使用 terraform 部署 GCPGoat。
terraform init
terraform apply --auto-approve
第一个模块是一个无服务器博客应用程序,使用了云函数、云存储桶、计算引擎和 Firestore。它包含多种 Web 应用程序漏洞,并助您利用配置错误的 GCP 资源。
权限提升路径:
推荐浏览器: Google Chrome
在免费套餐/试用期内部署 GCPGoat 所创建的资源不会产生任何费用。然而,如果免费套餐/试用期已耗尽或不满足条件,以下费用将适用于美国东部地区:
模块 1:0.03 美元/小时
Nishant Sharma,实验室平台总监,INE [email protected]
Jeswin Mathai,实验室平台首席架构师,INE [email protected]
Sherin Stephen,软件工程师(云),INE [email protected]
Divya Nain,软件工程师(云),INE [email protected]
Rishappreet Singh Moon,软件工程师(云),INE [email protected]
Litesh Ghute,软件工程师(云),INE [email protected]
Sanjeev Mahunta,软件工程师(云),INE [email protected]
攻防手册位于 attack-manuals 目录中,防御手册位于 defence-manuals 目录中。
模块 1:
modules/module-<数字>/src 中,可用于修改现有应用程序代码。本程序是自由软件:您可以重新分发和/或修改它,前提是遵守 MIT 许可证的条款。
您应该已经随本程序收到了 MIT 许可证的副本。如果没有,请访问 https://opensource.org/licenses/MIT。