EntraGoat:在安全沙盒中掌握身份安全攻防实战
你是否希望提升在Microsoft Entra ID(原Azure AD)环境下的安全攻防实战能力,却苦于没有安全、可控的靶场环境?EntraGoat的出现,旨在彻底解决这个问题。它是一个由Semperis团队精心设计的、故意配置为脆弱的Microsoft Entra ID环境,通过PowerShell脚本和Web界面,为安全从业者、渗透测试员和IT管理员提供了一个逼真且隔离的实战学习平台。
截至收录:
EntraGoat项目stars数:865
EntraGoat项目forks数:86
EntraGoat项目目录截图

EntraGoat项目核心亮点
- 🎯 真实场景模拟:精心设计了多个基于真实世界误配置的攻击场景,涵盖服务主体滥用、仅应用权限利用、证书认证绕过等核心攻击向量。
- 🔒 隔离且安全:所有漏洞均通过配置更改部署在您自己的测试租户中,与生产环境完全隔离,学习过程安全可控。
- 🛠️ 开箱即用:提供一键式PowerShell部署脚本和交互式Web管理界面,快速搭建复杂的脆弱环境,无需手动繁琐配置。
- 📚 完整学习闭环:每个挑战场景都包含部署脚本、清理脚本、详细的解决方案演练和“夺旗”任务,形成从搭建、攻击到复原的完整学习体验。
EntraGoat项目快速开始
只需几步,你就能在自己的测试租户中搭建起 EntraGoat 环境:
1. 准备环境:
* 拥有一个Microsoft Entra ID测试租户(建议使用试用版)和全局管理员权限。
* 在本地安装 Microsoft Graph PowerShell SDK、Node.js 和 npm。
- 克隆并运行:
“`bash
# 克隆项目仓库
git clone https://github.com/Semperis/EntraGoat
cd EntraGoat安装PowerShell模块
Install-Module Microsoft.Graph -Scope CurrentUser -Force
启动Web管理界面
cd .\frontend
npm install
npm start
``http://localhost:3000
3. **访问与部署**:
* 在浏览器中访问。scenarios
* 根据Web界面指引或进入目录,运行对应的PowerShell脚本(如.\EntraGoat-Scenario1-Setup.ps1`)来部署特定挑战场景。
EntraGoat项目应用场景
- 红队/渗透测试培训:安全团队成员可以在此环境中练习和掌握针对现代身份系统(Entra ID)的黑色盒攻击手法,提升实战技能。
- 蓝队防御演练:防御方可以通过分析攻击路径和解决方案,深入理解常见身份安全误配置的危害,从而更好地加固生产环境。
- 安全研究与教学:教育机构和安全研究者可以利用其模块化场景,进行身份安全领域的漏洞原理演示和课程教学。
- 产品安全验证:安全产品开发者可以将其作为测试环境,验证自家产品(如云安全态势管理、身份威胁检测与响应方案)对各类身份攻击的检测与防护能力。
EntraGoat项目链接
Semperis / EntraGoat项目地址:https://github.com/Semperis/EntraGoat
本文地址:https://www.tgoos.com/44155
