
AzureRT - Ein Powershell-Modul, das verschiedene Azure Red Team-Taktiken implementiert.
Powershell-Modul, das verschiedene Cmdlets zur Interaktion mit Azure und Azure AD aus einer offensiven Perspektive implementiert.
Nützliche Hilfsprogramme für die tokenbasierte Authentifizierung, den Wechsel zwischen den Schnittstellen von Az, AzureAD und az cli, sowie einfach zu verwendende vorgefertigte Angriffe wie die ausführbare Runbook-basierte Befehlsausführung und mehr.
Dieses Toolkit enthält viele verschiedene Cmdlets. In diesem Abschnitt werden die wichtigsten und nützlichsten hervorgehoben.
Typischer Red Team / Audit-Workflow, der mit gestohlenen Anmeldeinformationen beginnt, kann wie folgt zusammengefasst werden:
Credentials Stolen -> Authenticate to Azure/AzureAD -> find whether they're valid -> find out what you can do with them
Die folgenden Cmdlets sind genau dafür geeignet, Ihnen bei dieser Sequenz zu helfen:
Connect-ART - Bietet verschiedene Möglichkeiten zur Authentifizierung bei Azure - Anmeldeinformationen, PSCredential, Token
Connect-ARTAD - Bietet verschiedene Möglichkeiten zur Authentifizierung bei Azure AD - Anmeldeinformationen, PSCredential, Token
Get-ARTWhoami - Wenn Sie sich authentifizieren - führen Sie dies aus, um whoami zu überprüfen und Ihren Zugriff zu validieren
Get-ARTAccess - Wenn Sie dann wissen, dass Sie Zugriff haben, finden Sie heraus, was Sie tun können und was möglich ist, indem Sie eine Azure-Situationsbewusstsein durchführen
Get-ARTADAccess - Ähnlich können Sie herausfinden, was Sie im Bereich Azure AD tun können.
Die in diesem Modul implementierten Cmdlets waren in den folgenden Anwendungs- und Angriffsszenarien hilfreich:
Az zu AzureAD und zurück.Az, AzureAD, Microsoft.Graph und az cliDieses Modul setzt vorinstallierte Powershell-Module Az und AzureAD voraus. Microsoft.Graph und az cli sind optional, aber dennoch sehr nützlich. Bevor man mit Azure herumzubasteln beginnt, können die folgenden Befehle verwendet werden, um die offensive Umgebung vorzubereiten:
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
Obwohl nur die ersten beiden Module von AzureRT benötigt werden, ist es gut, auch andere vorinstalliert zu haben.
Um dieses Modul dann zu laden, geben Sie einfach ein:
PS> . .\AzureRT.ps1
Und schon kann es losgehen.
Oder Sie lassen AzureRT alle Abhängigkeiten installieren und importieren:
PS> . .\AzureRT.ps1
PS> Import-ARTModules
Das Modul wird nach und nach weitere Werkzeuge und Hilfsprogramme erhalten, die naturgemäß in aufeinanderfolgende Phasen der Angriffskette (Kill Chain) eingeteilt werden.
Jedes Cmdlet verfügt über eine hilfreiche Hilfemeldung mit Parametern, Beschreibung und Beispielnutzung:
PS C:\> Get-Help Connect-ART
Derzeit sind folgende Hilfsprogramme enthalten:
Get-ARTWhoami - Zeigt unseren Authentifizierungskontext auf den Schnittstellen Azure, AzureAD, Microsoft.Graph und AZ CLI an und validiert ihn.
Connect-ART - Ruft Connect-AzAccount auf, um die aktuelle Sitzung über ein bereitgestelltes Zugriffstoken oder Anmeldeinformationen beim Azure-Portal zu authentifizieren. Überspringt die Last der Angabe von Mandanten-ID und Konto-ID, indem diese automatisch aus dem bereitgestellten Token extrahiert werden.
Connect-ARTAD - Ruft Connect-AzureAD (und optional Connect-MgGraph) auf, um die aktuelle Sitzung über ein bereitgestelltes Zugriffstoken oder Anmeldeinformationen beim Azure Active Directory zu authentifizieren. Überspringt die Last der Angabe von Mandanten-ID und Konto-ID, indem diese automatisch aus dem bereitgestellten Token extrahiert werden.
Connect-ARTADServicePrincipal - Ruft Connect-AzAccount auf, um die aktuelle Sitzung über ein bereitgestelltes Zugriffstoken oder Anmeldeinformationen beim Azure-Portal zu authentifizieren. Überspringt die Last der Angabe von Mandanten-ID und Konto-ID, indem diese automatisch aus dem bereitgestellten Token extrahiert werden. Anschließend wird ein selbstsigniertes PFX-Zertifikat erstellt und dem Dienstprinzipal zur Authentifizierung zugeordnet. Danach authentifiziert es sich als dieser Dienstprinzipal bei AzureAD und hebt die Zuordnung des Zertifikats auf, um eine Bereinigung durchzuführen.
Get-ARTAccessTokenAzCli - Bezieht ein Zugriffstoken von der Azure CLI über az account get-access-token
Get-ARTAccessTokenAz - Bezieht ein Zugriffstoken aus dem Az-Modul über Get-AzAccessToken .
Get-ARTAccessTokenAzureAD - Holt ein Zugriffstoken von Azure Active Directory. Verfasst von Simon Wahlin, @SimonWahlin
Get-ARTAccessTokenAzureADCached - Versucht, ein lokal zwischengespeichertes AzureAD-Zugriffstoken (https://graph.microsoft.com) abzurufen, das nach dem Aufruf von Connect-AzureAD gespeichert wurde.
Remove-ARTServicePrincipalKey - Führt Bereinigungsaktionen nach dem Ausführen von Connect-ARTADServicePrincipal durch
Get-ARTAccess - Führt Azure-Situationsbewusstsein durch.
Get-ARTADAccess - Führt Azure AD-Situationsbewusstsein durch.
Get-ARTTenants - Listet die für den aktuell authentifizierten Benutzer (oder denjenigen, der auf dem bereitgestellten Zugriffstoken basiert) verfügbaren Mandanten auf.
Get-ARTDangerousPermissions - Analysiert zugängliche Azure-Ressourcen und die damit verbundenen Berechtigungen des Benutzers, um alle gefährlichen zu finden, die von einem Angreifer missbraucht werden könnten.
Get-ARTResource - Authentifiziert sich mit dem bereitgestellten Zugriffstoken bei https://management.azure.com und ruft zugängliche Ressourcen und Berechtigungen ab, die der Token-Besitzer gegen sie hat.
Get-ARTRoleAssignment - Zeigt eine etwas besser lesbare Darstellung der zugewiesenen Azure-RBAC-Rollen für den aktuell verwendeten Prinzipal an.
Get-ARTADRoleAssignment - Zeigt Azure AD-Rollenzuweisungen für einen aktuellen Benutzer oder für alle Azure AD-Benutzer an.
Get-ARTADScopedRoleAssignment - Zeigt bereichsbezogene Azure AD-Rollenzuweisungen für einen aktuellen Benutzer oder für alle Azure AD-Benutzer an, die administrativen Einheiten zugeordnet sind.
Get-ARTRolePermissions - Zeigt alle gewährten Berechtigungen für eine bestimmte Azure-RBAC-Rolle an.
Get-ARTADRolePermissions - Zeigt alle gewährten Berechtigungen für eine bestimmte Azure AD-Rolle an.