Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

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

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

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
AzureRT — AzureRT - 一个实现各种 Azure 红队战术的 Powershell 模块 | Kitploit
工具/GitHubGitHub/mgeeky/azurert
权限提升侦察横向移动信息收集渗透测试云安全身份验证红队
GitHubmgeeky/azurert

AzureRT

AzureRT - 一个实现各种 Azure 红队战术的 Powershell 模块

查看仓库
233314年前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

AzureRT

一个Powershell模块,实现了从攻击角度与Azure和Azure AD交互的各种cmdlet。

提供了一些有用的实用工具,用于处理基于访问令牌的身份验证、在Az与AzureAD及az cli接口之间切换,以及易于使用的预构建攻击,例如基于Runbook的命令执行等。


最有价值的Cmdlet

本工具集包含多种cmdlet。本节重点介绍最重要且最有用的部分。

典型的红队/审计工作流程,从窃取的凭据开始,可以总结如下:

root@kitploit:~
窃取凭据 -> 认证到Azure/AzureAD -> 判断凭据是否有效 -> 找出能利用它们做什么

以下cmdlet正是为帮助你遵循这一流程而设计的:

  1. Connect-ART - 提供多种认证到Azure的方式——凭据、PSCredential、令牌

  2. Connect-ARTAD - 提供多种认证到Azure AD的方式——凭据、PSCredential、令牌

  3. Get-ARTWhoami - 当你完成认证后,运行此命令检查_whoami_并验证你的访问权限

  4. Get-ARTAccess - 然后,在你知道自己有访问权限后,通过执行Azure态势感知来找出你能做什么以及有哪些可能性

  5. Get-ARTADAccess - 类似地,你可以找出在Azure AD范围内你能做什么。


使用场景

模块中实现的cmdlet在以下使用和攻击场景中很有帮助:

  • 在Az、AzureAD与az cli之间切换访问令牌
  • 同时在Az、AzureAD、Microsoft.Graph和az cli中漂亮地打印认证上下文(即_whoami_)
  • 显示授予用户对目标Azure VM的可用权限
  • 显示可访问的Azure资源以及我们对其拥有的权限
  • 轻松读取所有可访问的_Azure Key Vault_机密
  • 以服务主体身份认证,利用分配给该服务主体的_特权角色管理员_角色
  • 通过恶意Runbook对Azure自动化执行攻击

安装

此模块依赖于预先安装的Powershell Az和AzureAD模块。Microsoft.Graph和az cli是可选的,但非常有用。 在开始使用Azure进行攻击前,可以使用以下命令准备攻击环境:

root@kitploit:~
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 # 可选
Install-Module MSOnline -Force -Confirm -AllowClobber -Scope CurrentUser        # 可选
Install-Module AzureADPreview -Force -Confirm -AllowClobber -Scope CurrentUser  # 可选
Install-Module AADInternals -Force -Confirm -AllowClobber -Scope CurrentUser    # 可选

Import-Module Az
Import-Module AzureAD

尽管AzureRT只需要前两个模块,但最好也预装其他模块。

然后,加载此模块,只需输入:

root@kitploit:~
PS> . .\AzureRT.ps1

即可开始使用。

或者,你也可以让AzureRT自动安装并导入所有依赖:

root@kitploit:~
PS> . .\AzureRT.ps1
PS> Import-ARTModules

附带的工具

此模块将逐步加入后续工具和实用程序,自然地归类到攻击链的各个阶段。

每个cmdlet都有详细的帮助信息,说明参数、描述和示例用法:

root@kitploit:~
PS C:\> Get-Help Connect-ART

目前包含以下实用程序:

认证与令牌机制

  • Get-ARTWhoami - 在Azure、AzureAD、Microsoft.Graph和AZ CLI接口上显示_并验证_我们的认证上下文。

  • Connect-ART - 调用Connect-AzAccount,通过提供的访问令牌或凭据认证当前会话到Azure门户。通过自动从提供的令牌中提取租户ID和帐户ID,省去了手动提供这些信息的麻烦。

  • Connect-ARTAD - 调用Connect-AzureAD(可选地Connect-MgGraph),通过提供的访问令牌或凭据认证当前会话到Azure Active Directory。通过自动从提供的令牌中提取租户ID和帐户ID,省去了手动提供这些信息的麻烦。

  • Connect-ARTADServicePrincipal - 调用Connect-AzAccount,通过提供的访问令牌或凭据认证当前会话到Azure门户。然后创建自签名PFX证书并将其与服务主体关联以进行认证。之后,以该服务主体身份认证到Azure AD,并在清理时取消关联该证书。

  • - 通过从az cli获取访问令牌。

侦察与态势感知

  • Get-ARTAccess - 执行Azure态势感知。

  • Get-ARTADAccess - 执行Azure AD态势感知。

  • Get-ARTTenants - 列出当前认证用户(或基于提供的访问令牌)可用的租户。

  • Get-ARTDangerousPermissions - 分析可访问的Azure资源以及用户对其拥有的关联权限,找出所有可能被攻击者滥用的危险权限。

  • Get-ARTResource - 使用提供的访问令牌认证到https://management.azure.com,并拉取令牌所有者可访问的资源及其权限。

  • Get-ARTRoleAssignment - 以更容易阅读的方式显示分配给当前主体的Azure RBAC角色。

  • Get-ARTADRoleAssignment - 显示当前用户或所有Azure AD用户的Azure AD角色分配。

  • Get-ARTADScopedRoleAssignment - 显示当前用户或所有Azure AD用户与管理员单元关联的作用域Azure AD角色分配。

  • Get-ARTRolePermissions - 显示指定Azure RBAC角色的所有授予权限。

权限提升

  • Add-ARTADGuestUser - 发送Azure AD来宾用户邀请邮件,允许外部攻击者扩展对AAD租户的访问,并返回用于轻松接受邀请的邀请兑换URL。

  • Set-ARTADUserPassword - 滥用Authentication Administrator角色分配来重置其他非管理员用户的密码。

  • Add-ARTUserToGroup - 将指定Azure AD用户添加到指定Azure AD组。

  • Add-ARTUserToRole - 将指定Azure AD用户添加到指定Azure AD角色。

  • Add-ARTADAppSecret - 为Azure AD应用程序添加客户端密码。作者:Nikhil Mittal, @nikhil_mitt

横向移动

  • Invoke-ARTAutomationRunbook - 在指定自动化帐户下创建一个自动化Runbook,并针对选定的工作程序组。该Runbook将包含要在所有受影响的Azure VM上执行的Powershell命令。

  • Invoke-ARTRunCommand - 滥用针对指定Azure VM的virtualMachines/runCommand权限来运行自定义Powershell命令。

  • Update-ARTAzVMUserData - 通过直接API调用修改Azure VM用户数据脚本。

  • Invoke-ARTCustomScriptExtension - 创建新的或修改Azure VM自定义脚本扩展,导致远程代码执行。

杂项

  • Get-ARTTenantID - 检索当前用户的租户ID,或基于提供的域名返回租户ID。

  • Get-ARTPRTToken - 使用Dirk-Jan Mollema的ROADtoken检索当前用户的PRT(主刷新令牌)值。

  • Get-ARTPRTNonce - 检索当前用户的PRT(主刷新令牌)nonce值。

  • Get-ARTUserId - 通过Az模块获取当前用户或参数中指定的ObjectId用户。

  • Get-ARTSubscriptionId - 辅助工具,收集当前订阅ID。

  • Parse-JWTtokenRT - 解析输入的JWT令牌并漂亮地打印出来。

  • Invoke-ARTGETRequest - 获取访问令牌,并针对指定URI执行GET REST API请求。还会验证提供的令牌是否具有所需的受众。

  • Import-ARTModules - 为Azure红队活动安装并导入必需及可选的Powershell模块。


☕ 支持 ☕

该项目以及其他项目都是无数个不眠之夜和大量辛勤工作的成果。如果你喜欢我所做的,并且欣赏我始终回馈社区的行为, 请考虑给我买杯咖啡 (或者更好,买杯啤酒) 表示感谢!💪


root@kitploit:~
Mariusz Banach / mgeeky, (@mariuszbit)
<mb [at] binary-offensive.com>
下载工具
Get-ARTAccessTokenAzCli
az account get-access-token
  • Get-ARTAccessTokenAz - 通过Get-AzAccessToken从Az模块获取访问令牌。

  • Get-ARTAccessTokenAzureAD - 从Azure Active Directory获取访问令牌。作者:Simon Wahlin, @SimonWahlin

  • Get-ARTAccessTokenAzureADCached - 尝试检索本地缓存的AzureAD访问令牌(https://graph.microsoft.com),该令牌在`Connect-AzureAD`之后存储。

  • Remove-ARTServicePrincipalKey - 在运行Connect-ARTADServicePrincipal后执行清理操作。

  • Get-ARTADRolePermissions - 显示指定Azure AD角色的所有授予权限。

  • Get-ARTADDynamicGroups - 显示Azure AD动态组及其用户成员规则、成员数量和当前用户成员状态。

  • Get-ARTApplication - 列出当前用户是所有者的Azure AD企业应用程序(当使用-All时列出所有现有应用程序),以及其所有者和服务主体。

  • Get-ARTApplicationProxy - 列出设置了应用程序代理的Azure AD企业应用程序。

  • Get-ARTApplicationProxyPrincipals - 显示分配给指定应用程序代理应用程序的用户和组。

  • Get-ARTStorageAccountKeys - 显示所有可用的存储帐户密钥。

  • Get-ARTKeyVaultSecrets - 列出所有可用的Azure Key Vault机密。此cmdlet假设请求用户已连接到Azure AD并拥有KeyVaultAccessToken(作用域为https://vault.azure.net)且分配了“Key Vault Secrets User”角色(或等价角色)。

  • Get-ARTAutomationCredentials - 列出所有可用的Azure自动化帐户凭据,并尝试提取其值(无法提取值!)。

  • Get-ARTAutomationRunbookCode - 调用REST API方法提取指定Runbook的源代码。

  • Get-ARTAzVMPublicIP - 检索Azure VM的公网IP地址。

  • Get-ARTResourceGroupDeploymentTemplate - 根据输入参数显示资源组部署模板JSON,或一次拉取所有模板。

  • Get-ARTAzVMUserDataFromInside - 通过访问实例元数据端点,从虚拟机内部检索Azure VM用户数据。