# Az - MySQL Post Exploitation

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

## MySQL Databasis Post Exploitation
Vir meer inligting oor MySQL Databasis, kyk:

{{#ref}}
../az-services/az-mysql.md
{{#endref}}

### `Microsoft.DBforMySQL/flexibleServers/databases/write` && `Microsoft.DBforMySQL/flexibleServers/databases/read`

Met hierdie toestemming kan jy nuwe databasis skep binne 'n MySQL Flexible Server instansie op Azure. Terwyl hierdie aksie self nie bestaande hulpbronne wysig nie, kan oormatige of ongemagtigde skep van databasisse lei tot hulpbronverbruik, of potensiële misbruik van die bediener.
```bash
az mysql flexible-server db create \
--server-name <server_name> \
--resource-group <resource_group_name> \
--database-name <database_name>
```
### `Microsoft.DBforMySQL/flexibleServers/backups/write`

Met hierdie toestemming kan jy die skep van rugsteun vir 'n MySQL Flexible Server-instansie op Azure begin. Dit stel gebruikers in staat om op aanvraag rugsteun te genereer, wat nuttig kan wees om data op spesifieke tydpunte te bewaar.
```bash
az mysql flexible-server backup create \
--name <server_name> \
--resource-group <resource_group_name>
--backup-name <backup_name>
```
### `Microsoft.DBforMySQL/flexibleServers/advancedThreatProtectionSettings/write`

Met hierdie toestemming kan jy die Advanced Threat Protection (ATP) instellings vir 'n MySQL Flexible Server instance op Azure konfigureer of opdateer. Dit stel jou in staat om sekuriteitskenmerke te aktiveer of te deaktiveer wat ontwerp is om anomale aktiwiteite en potensiële bedreigings te detecteer en daarop te reageer.
```bash
az mysql flexible-server threat-protection-policy update \
--name <server_name> \
--resource-group <resource_group_name> \
--state <Enabled|Disabled>
```
### `Microsoft.DBforMySQL/flexibleServers/firewallRules/write`

Met hierdie toestemming kan jy firewallreëls vir 'n MySQL Flexible Server-instantie op Azure skep of wysig. Dit stel jou in staat om te beheer watter IP-adresse of -reekse toegang tot die bediener kan verkry. Onbevoegde of onvanpaste gebruik van hierdie toestemming kan die bediener aan ongewenste of kwaadwillige toegang blootstel.
```bash
# Create Rule
az mysql flexible-server firewall-rule create \
--name <server_name> \
--resource-group <resource_group_name> \
--rule-name <rule_name> \
--start-ip-address <start_ip> \
--end-ip-address <end_ip>

# Update Rule
az mysql flexible-server firewall-rule update \
--name <server_name> \
--resource-group <resource_group_name> \
--rule-name <rule_name> \
--start-ip-address <start_ip> \
--end-ip-address <end_ip>
```
### `Microsoft.DBforMySQL/flexibleServers/resetGtid/action`

Met hierdie toestemming kan jy die GTID (Global Transaction Identifier) vir 'n MySQL Flexible Server-instansie op Azure reset. Die reset van die GTID sal alle outomatiese, op aanvraag rugsteun en geo-rugsteun wat voor die reset aksie geneem is, ongeldig maak. Na die GTID-reset sal jy nie in staat wees om PITR (point-in-time-restore) uit te voer nie, met die vinnigste herstelpunt of deur 'n pasgemaakte herstelpunt as die geselekteerde hersteltyd voor die GTID-resettyd is. En suksesvolle geo-herstel sal slegs na 5 dae moontlik wees.
```bash
az mysql flexible-server reset-gtid \
--name  \
--resource-group <resource_group_name> \
--gtid-set <gtid>
```
### `Microsoft.DBforMySQL/flexibleServers/updateConfigurations/action`

Met hierdie toestemming kan jy die konfigurasie-instellings van 'n MySQL Flexible Server-instansie op Azure opdateer. Dit stel jou in staat om bedienerparameters soos prestasie-afstemming, sekuriteitskonfigurasies of operasionele instellings aan te pas. Jy kan die volgende parameters saam in 'n bondel opdateer: audit_log_enabled, audit_log_events, binlog_expire_logs_seconds, binlog_row_image, character_set_server, collation_server, connect_timeout, enforce_gtid_consistency, gtid_mode, init_connect, innodb_buffer_pool_size, innodb_io_capacity, innodb_io_capacity_max, innodb_purge_threads, innodb_read_io_threads, innodb_thread_concurrency, innodb_write_io_threads, long_query_time, max_connect_errors, en max_connections.
```bash
az mysql flexible-server parameter set-batch \
--resource-group <resource_group_name> \
--server-name <server_name> \
--args max_connections=<value>
```
### `Microsoft.DBforMySQL/flexibleServers/read`, `Microsoft.DBforMySQL/flexibleServers/write` && `Microsoft.ManagedIdentity/userAssignedIdentities/assign/action`

Met hierdie toestemming kan jy 'n gebruiker-toegewyde bestuurde identiteit aan MySQL buigsame bedieners toewys.
```bash
az mysql flexible-server identity assign \
--resource-group <ResourceGroupName> \
--server-name <ServerName> \
--identity <IdentityName>
```
### `Microsoft.DBforMySQL/flexibleServers/stop/action`

Met hierdie toestemming kan jy 'n PostgreSQL Flexible Server-instansie op Azure stop. Om 'n bediener te stop, kan lei tot tydelike diensonderbreking, wat toepassings en gebruikers wat van die databasis afhanklik is, beïnvloed.
```bash
az mysql flexible-server stop \
--name <server_name> \
--resource-group <resource_group_name>
```

### `Microsoft.DBforMySQL/flexibleServers/start/action`
With this permission, you can start a stopped PostgreSQL Flexible Server instance on Azure. Starting a server restores its availability, enabling applications and users to reconnect and access the database.

```bash
az mysql fleksible-bediener begin \
--naam <server_name> \
--hulpbron-groep <resource_group_name>
```

### `*/delete`

With this permissions you can delete resources related to mysql server in Azure such as server, firewalls, managed identities or configurations

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