# Az - VMs & Network Post Exploitation

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

## VMs & Network

Za više informacija o Azure VMs i umrežavanju, proverite sledeću stranicu:

{{#ref}}
../az-services/vms/
{{#endref}}

### VM Application Pivoting

VM aplikacije mogu biti deljene sa drugim pretplatama i korisnicima. Ako se aplikacija deli, verovatno je zato što se koristi. Dakle, ako napadač uspe da **kompromituje aplikaciju i otpremi verziju sa backdoor-om**, može biti moguće da će biti **izvršena u drugom korisniku ili pretplati**.

### Sensitive information in images

Može biti moguće pronaći **osetljive informacije unutar slika** uzetih sa VMs u prošlosti.

1. **List images** from galleries
```bash
# Get galleries
az sig list -o table

# List images inside gallery
az sig image-definition list \
--resource-group <RESOURCE_GROUP> \
--gallery-name <GALLERY_NAME> \
-o table

# Get images versions
az sig image-version list \
--resource-group <RESOURCE_GROUP> \
--gallery-name <GALLERY_NAME> \
--gallery-image-definition <IMAGE_DEFINITION> \
-o table
```
2. **Lista prilagođenih slika**
```bash
az image list -o table
```
3. **Kreirajte VM iz ID-a slike** i pretražite osetljive informacije unutar nje
```bash
# Create VM from image
az vm create \
--resource-group <RESOURCE_GROUP> \
--name <VM_NAME> \
--image /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Compute/galleries/<GALLERY_NAME>/images/<IMAGE_DEFINITION>/versions/<IMAGE_VERSION> \
--admin-username <ADMIN_USERNAME> \
--generate-ssh-keys
```
### Osetljive informacije u tačkama vraćanja

Može biti moguće pronaći **osetljive informacije unutar tačaka vraćanja**.

1. **Lista tačaka vraćanja**
```bash
az restore-point list \
--resource-group <RESOURCE_GROUP> \
--restore-point-collection-name <COLLECTION_NAME> \
-o table
```
2. **Kreirajte disk** iz tačke vraćanja
```bash
az disk create \
--resource-group <RESOURCE_GROUP> \
--name <NEW_DISK_NAME> \
--source /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Compute/restorePointCollections/<COLLECTION_NAME>/restorePoints/<RESTORE_POINT_NAME>
```
3. **Priključite disk na VM** (napadač već treba da je kompromitovao VM unutar naloga)
```bash
az vm disk attach \
--resource-group <RESOURCE_GROUP> \
--vm-name <VM_NAME> \
--name <DISK_NAME>
```
4. **Priključite** disk i **pretražite** osetljive informacije

{{#tabs }}
{{#tab name="Linux" }}
```bash
# List all available disks
sudo fdisk -l

# Check disk format
sudo file -s /dev/sdX

# Mount it
sudo mkdir /mnt/mydisk
sudo mount /dev/sdX1 /mnt/mydisk
```
{{#endtab }}

{{#tab name="Windows" }}

#### **1. Otvorite Upravljač diskovima**

1. Desni klik na **Start** i izaberite **Upravljač diskovima**.
2. Priključeni disk bi trebao da se pojavi kao **Offline** ili **Nealokiran**.

#### **2. Aktivirajte disk**

1. Pronađite disk u donjem panelu.
2. Desni klik na disk (npr., **Disk 1**) i izaberite **Online**.

#### **3. Inicijalizujte disk**

1. Ako disk nije inicijalizovan, desni klik i izaberite **Inicijalizuj disk**.
2. Izaberite stil particije:
- **MBR** (Master Boot Record) ili **GPT** (GUID Partition Table). GPT se preporučuje za moderne sisteme.

#### **4. Kreirajte novi volumen**

1. Desni klik na nealokirani prostor na disku i izaberite **Novi jednostavni volumen**.
2. Pratite čarobnjaka da:
- Dodelite slovo diska (npr., `D:`).
- Formatirate disk (izaberite NTFS u većini slučajeva).
{{#endtab }}
{{#endtabs }}

### Osetljive informacije na diskovima i snimcima

Može biti moguće pronaći **osetljive informacije unutar diskova ili čak starih snimaka diskova**.

1. **Lista snimaka**
```bash
az snapshot list \
--resource-group <RESOURCE_GROUP> \
-o table
```
2. **Kreirajte disk iz snimka** (ako je potrebno)
```bash
az disk create \
--resource-group <RESOURCE_GROUP> \
--name <DISK_NAME> \
--source <SNAPSHOT_ID> \
--size-gb <DISK_SIZE>
```
3. **Priključite i montirajte disk** na VM i pretražite osetljive informacije (proverite prethodni odeljak da vidite kako to uraditi)

### Osetljive informacije u VM ekstenzijama i VM aplikacijama

Možda će biti moguće pronaći **osetljive informacije unutar VM ekstenzija i VM aplikacija**.

1. **Nabrojte sve VM aplikacije**
```bash
## List all VM applications inside a gallery
az sig gallery-application list --gallery-name <gallery-name> --resource-group <res-group> --output table
```
2. Instalirajte ekstenziju u VM i **pretražujte osetljive informacije**
```bash
az vm application set \
--resource-group <rsc-group> \
--name <vm-name> \
--app-version-ids /subscriptions/9291ff6e-6afb-430e-82a4-6f04b2d05c7f/resourceGroups/Resource_Group_1/providers/Microsoft.Compute/galleries/myGallery/applications/myReverseShellApp/versions/1.0.2 \
--treat-deployment-as-failure true
```
{{#include ../../../banners/hacktricks-training.md}}
