mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-01-07 10:50:33 -08:00
Translated ['src/pentesting-cloud/azure-security/README.md', 'src/pentes
This commit is contained in:
@@ -48,7 +48,7 @@ Mit diesen Informationen sind die häufigsten Möglichkeiten, um einen Fuß in d
|
||||
- **`service_principal_entries.bin`** und msal_token_cache.bin werden in Windows verwendet und sind mit DPAPI verschlüsselt
|
||||
- **`msal_http_cache.bin`** ist ein Cache von HTTP-Anfragen
|
||||
- Laden Sie es: `with open("msal_http_cache.bin", 'rb') as f: pickle.load(f)`
|
||||
- **`AzureRmContext.json`** enthält Informationen über vorherige Anmeldungen mit Az PowerShell (aber keine Anmeldeinformationen)
|
||||
- **`AzureRmContext.json`** enthält Informationen über frühere Anmeldungen mit Az PowerShell (aber keine Anmeldeinformationen)
|
||||
- Innerhalb von **`C:\Users\<username>\AppData\Local\Microsoft\IdentityCache\*`** befinden sich mehrere `.bin`-Dateien mit **Zugriffstoken**, ID-Token und Kontoinformationen, die mit dem DPAPI des Benutzers verschlüsselt sind.
|
||||
- Es ist möglich, weitere **Zugriffstoken** in den `.tbres`-Dateien innerhalb von **`C:\Users\<username>\AppData\Local\Microsoft\TokenBroken\Cache\`** zu finden, die ein base64 mit DPAPI verschlüsseltes Zugriffstoken enthalten.
|
||||
- In Linux und macOS können Sie **Zugriffstoken, Aktualisierungstoken und ID-Token** von Az PowerShell (falls verwendet) erhalten, indem Sie `pwsh -Command "Save-AzContext -Path /tmp/az-context.json"` ausführen.
|
||||
@@ -80,7 +80,7 @@ In Fällen, in denen Sie einige gültige Anmeldeinformationen haben, aber sich n
|
||||
|
||||
- **IP-Whitelisting** -- Sie müssen eine gültige IP kompromittieren
|
||||
- **Geo-Beschränkungen** -- Finden Sie heraus, wo der Benutzer lebt oder wo sich die Büros des Unternehmens befinden, und erhalten Sie eine IP aus derselben Stadt (oder zumindest demselben Land)
|
||||
- **Browser** -- Vielleicht ist nur ein Browser von bestimmten Betriebssystemen (Windows, Linux, Mac, Android, iOS) erlaubt. Finden Sie heraus, welches Betriebssystem das Opfer/das Unternehmen verwendet.
|
||||
- **Browser** -- Möglicherweise ist nur ein Browser von bestimmten Betriebssystemen (Windows, Linux, Mac, Android, iOS) erlaubt. Finden Sie heraus, welches Betriebssystem das Opfer/das Unternehmen verwendet.
|
||||
- Sie können auch versuchen, **Service Principal-Anmeldeinformationen** zu kompromittieren, da diese normalerweise weniger eingeschränkt sind und deren Anmeldung weniger überprüft wird.
|
||||
|
||||
Nachdem Sie dies umgangen haben, sollten Sie in der Lage sein, zu Ihrer ursprünglichen Konfiguration zurückzukehren und weiterhin Zugriff zu haben.
|
||||
@@ -94,7 +94,7 @@ az-privilege-escalation/az-entraid-privesc/az-conditional-access-policies-mfa-by
|
||||
### Wer bin ich
|
||||
|
||||
> [!CAUTION]
|
||||
> Lernen Sie, **wie man** az cli, AzureAD und Az PowerShell im Abschnitt [**Az - Entra ID**](az-services/az-azuread.md) installiert.
|
||||
> Lernen Sie, **wie man** az cli, AzureAD und Az PowerShell im [**Az - Entra ID**](az-services/az-azuread.md) Abschnitt installiert.
|
||||
|
||||
Eine der ersten Dinge, die Sie wissen müssen, ist **wer Sie sind** (in welcher Umgebung Sie sich befinden):
|
||||
|
||||
@@ -161,10 +161,74 @@ az-enumeration-tools.md#automated-post-exploitation-tools
|
||||
|
||||
Sobald Sie wissen, wer Sie sind, können Sie beginnen, die **Azure-Dienste, auf die Sie Zugriff haben**, aufzulisten.
|
||||
|
||||
Sie sollten herausfinden, welche **Berechtigungen Sie** über die Ressourcen haben. Dazu:
|
||||
Sie sollten herausfinden, welche **Berechtigungen Sie über die Ressourcen haben**. Dazu:
|
||||
|
||||
1. **Finden Sie die Ressource, auf die Sie Zugriff haben**:
|
||||
|
||||
Der Az PowerShell-Befehl **`Get-AzResource`** ermöglicht es Ihnen, **die Ressourcen zu erfahren, über die Ihr aktueller Benutzer Sichtbarkeit hat**.
|
||||
|
||||
Darüber hinaus können Sie die gleichen Informationen in der **Webkonsole** erhalten,
|
||||
Darüber hinaus können Sie die gleichen Informationen in der **Webkonsole** erhalten, indem Sie zu [https://portal.azure.com/#view/HubsExtension/BrowseAll](https://portal.azure.com/#view/HubsExtension/BrowseAll) gehen oder nach "Alle Ressourcen" suchen oder folgendes ausführen:
|
||||
```bash
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/<subscription-id>/resources?api-version=2021-04-01"
|
||||
```
|
||||
2. **Finden Sie die Berechtigungen, die Sie für die Ressourcen haben, auf die Sie Zugriff haben, und finden Sie die Ihnen zugewiesenen Rollen**:
|
||||
|
||||
Beachten Sie, dass Sie die Berechtigung **`Microsoft.Authorization/roleAssignments/read`** benötigen, um diese Aktion auszuführen.
|
||||
|
||||
Darüber hinaus kann mit ausreichenden Berechtigungen die Rolle **`Get-AzRoleAssignment`** verwendet werden, um **alle Rollen** im Abonnement oder die Berechtigung über eine bestimmte Ressource aufzulisten, indem Sie sie wie folgt angeben:
|
||||
```bash
|
||||
Get-AzRoleAssignment -Scope /subscriptions/<subscription-id>/resourceGroups/Resource_Group_1/providers/Microsoft.RecoveryServices/vaults/vault-m3ww8ut4
|
||||
```
|
||||
Es ist auch möglich, diese Informationen zu erhalten, indem man Folgendes ausführt:
|
||||
```bash
|
||||
az rest --method GET --uri "https://management.azure.com/<Scope>/providers/Microsoft.Authorization/roleAssignments?api-version=2020-08-01-preview" | jq ".value"
|
||||
```
|
||||
Bitte geben Sie den Text an, den Sie übersetzen möchten.
|
||||
```bash
|
||||
az rest --method GET --uri "https://management.azure.com//subscriptions/<subscription-id>/resourceGroups/Resource_Group_1/providers/Microsoft.KeyVault/vaults/vault-m3ww8ut4/providers/Microsoft.Authorization/roleAssignments?api-version=2020-08-01-preview" | jq ".value"
|
||||
```
|
||||
Eine weitere Möglichkeit besteht darin, die Ihnen in Azure zugewiesenen Rollen mit folgendem Befehl abzurufen:
|
||||
```bash
|
||||
az role assignment list --assignee "<email>" --all --output table
|
||||
```
|
||||
Oder führen Sie Folgendes aus (Wenn die Ergebnisse leer sind, könnte es daran liegen, dass Sie nicht die Berechtigung haben, sie abzurufen):
|
||||
```bash
|
||||
az rest --method GET --uri 'https://management.azure.com/subscriptions/<subscription-id>/providers/Microsoft.Authorization/roleAssignments?api-version=2022-04-01&$filter=principalId eq '<user-id>'
|
||||
```
|
||||
3. **Finden Sie die granularen Berechtigungen der Ihnen zugewiesenen Rollen**:
|
||||
|
||||
Um die granularen Berechtigungen zu erhalten, können Sie **`(Get-AzRoleDefinition -Id "<RoleDefinitionId>").Actions`** ausführen.
|
||||
|
||||
Oder rufen Sie die API direkt mit
|
||||
```bash
|
||||
az rest --method GET --uri "https://management.azure.com//subscriptions/<subscription-id>/providers/Microsoft.Authorization/roleDefinitions/<RoleDefinitionId>?api-version=2020-08-01-preview" | jq ".properties"
|
||||
```
|
||||
In der folgenden Sektion finden Sie **Informationen über die gängigsten Azure-Dienste und wie man sie auflistet**:
|
||||
|
||||
{{#ref}}
|
||||
az-services/
|
||||
{{#endref}}
|
||||
|
||||
### Privilegieneskalation, Post-Exploitation & Persistenz
|
||||
|
||||
Sobald Sie wissen, wie die Azure-Umgebung strukturiert ist und welche Dienste verwendet werden, können Sie nach Möglichkeiten suchen, um **Privilegien zu eskalieren, lateral zu bewegen, andere Post-Exploitation-Angriffe durchzuführen und Persistenz aufrechtzuerhalten**.
|
||||
|
||||
In der folgenden Sektion finden Sie Informationen darüber, wie man Privilegien in den gängigsten Azure-Diensten eskaliert:
|
||||
|
||||
{{#ref}}
|
||||
az-privilege-escalation/
|
||||
{{#endref}}
|
||||
|
||||
In der nächsten finden Sie Informationen darüber, wie man Post-Exploitation-Angriffe in den gängigsten Azure-Diensten durchführt:
|
||||
|
||||
{{#ref}}
|
||||
az-post-exploitation/
|
||||
{{#endref}}
|
||||
|
||||
In der nächsten finden Sie Informationen darüber, wie man Persistenz in den gängigsten Azure-Diensten aufrechterhält:
|
||||
|
||||
{{#ref}}
|
||||
az-persistence/
|
||||
{{#endref}}
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
||||
Reference in New Issue
Block a user