AzureRT 使用教程
1、项目介绍
AzureRT 是一款能够实现各种 Azure 红队技战术的 PowerShell 模块。在 AzureRT 的帮助下,广大研究人员可以从攻击者的角度来与 Azure 和 Azure AD 进行交互,以此来测试目标环境的安全性。AzureRT 可以帮助广大研究人员测试和处理基于访问令牌的身份验证,从 Az 切换到 AzureAD 和 Az 命令行接口界面,并提供了各种渗透测试技术,例如基于 Runbook 的命令执行等。
2、项目快速启动
安装与配置
广大研究人员可以使用下列命令将该项目源码克隆至本地:
git clone https://github.com/mgeeky/AzureRT.git
确保环境安装正确:
Install-Module Az -Force -Confirm -AllowClobber -Scope CurrentUser
Install-Module AzureAD -Force -Confirm -AllowClobber -Scope CurrentUser
Install-Module Microsoft.Graph -Force -Confirm -AllowClobber -Scope CurrentUser # OPTIONAL
Install-Module MSOnline -Force -Confirm -AllowClobber -Scope CurrentUser # OPTIONAL
Install-Module AzureADPreview -Force -Confirm -AllowClobber -Scope CurrentUser # OPTIONAL
Install-Module AADInternals -Force -Confirm -AllowClobber -Scope CurrentUser # OPTIONAL
Import-Module Az
Import-Module AzureAD
加载工具模块:
.\AzureRT.ps1
或者让 AzureRT 来安装和导入所有的依赖组件:
.\AzureRT.ps1
Import-ARTModules
3、应用案例和最佳实践
使用场景
- 测试 Az、AzureAD 访问令牌安全:使用 AzureRT 模块中的命令来验证和测试访问令牌的安全性。
- 测试 Az、AzureAD、Microsoft Graph 和 Az 命令行接口身份认证上下文:通过模拟攻击者行为来测试身份认证上下文的安全性。
- 查看目标 Azure VM 上授权用户的可用权限:使用 AzureRT 模块中的命令来查看和验证 Azure VM 上的用户权限。
- 查看可访问的 Azure 资源以及我们对其拥有的权限:通过 AzureRT 模块中的命令来查看和管理 Azure 资源的访问权限。
- 轻松读取所有可访问的 Azure Key Vault 敏感信息:使用 AzureRT 模块中的命令来读取 Azure Key Vault 中的敏感信息。
- 作为服务主体进行身份验证,以利用分配给该服务主体的特权角色:通过 AzureRT 模块中的命令来进行服务主体身份验证。
- 通过恶意 Runbook 对 Azure Automation 执行攻击,以测试其安全性:使用 AzureRT 模块中的命令来测试 Azure Automation 的安全性。
最佳实践
- 定期更新模块:确保使用最新版本的 AzureRT 模块,以获取最新的功能和安全更新。
- 安全测试环境:在安全测试环境中使用 AzureRT 模块,避免对生产环境造成影响。
- 记录和审计:在使用 AzureRT 模块进行测试时,记录所有操作并进行审计,以便后续分析和改进。
4、典型生态项目
- Az PowerShell 模块:用于管理 Azure 资源的官方 PowerShell 模块。
- AzureAD PowerShell 模块:用于管理 Azure Active Directory 的官方 PowerShell 模块。
- Microsoft Graph PowerShell 模块:用于与 Microsoft Graph API 进行交互的官方 PowerShell 模块。
- AADInternals:一个用于 Azure AD 和 Azure AD DS 渗透测试的 PowerShell 模块。
通过结合这些生态项目,可以更全面地进行 Azure 环境的安全测试和渗透测试。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



