Az - MySQL ポストエクスプロイテーション

Reading time: 7 minutes

tip

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを学び、実践する:HackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポートする

MySQL データベース ポストエクスプロイテーション

MySQL データベースに関する詳細情報は以下を確認してください:

Az - MySQL

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

この権限を持つことで、Azure の MySQL フレキシブル サーバ インスタンス内に新しいデータベースを作成できます。このアクション自体は既存のリソースを変更しませんが、過剰または不正なデータベースの作成はリソースの消費やサーバの悪用につながる可能性があります。

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

この権限を持つことで、Azure上のMySQL Flexible Serverインスタンスのバックアップ作成を開始できます。これにより、ユーザーは特定の時点でのデータを保存するためにオンデマンドバックアップを生成することができます。

bash
az mysql flexible-server backup create \
--name <server_name> \
--resource-group <resource_group_name>
--backup-name <backup_name>

Microsoft.DBforMySQL/flexibleServers/advancedThreatProtectionSettings/write

この権限を使用すると、Azure上のMySQL Flexible ServerインスタンスのAdvanced Threat Protection (ATP)設定を構成または更新できます。これにより、異常な活動や潜在的な脅威を検出し、対応するために設計されたセキュリティ機能を有効または無効にすることができます。

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

この権限を使用すると、Azure上のMySQL Flexible Serverインスタンスのファイアウォールルールを作成または変更できます。これにより、どのIPアドレスまたは範囲がサーバーにアクセスできるかを制御できます。この権限の不正または不適切な使用は、サーバーを望ましくないまたは悪意のあるアクセスにさらす可能性があります。

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

この権限を使用すると、Azure上のMySQL Flexible ServerインスタンスのGTID(グローバルトランザクション識別子)をリセットできます。GTIDをリセットすると、リセットアクションの前に取得されたすべての自動バックアップおよびオンデマンドバックアップ、地理的バックアップが無効になります。GTIDリセット後、選択したリストア時間がGTIDリセット時間より前の場合、最速リストアポイントまたはカスタムリストアポイントを使用してPITR(ポイントインタイムリストア)を実行することはできません。また、成功した地理的リストアは5日後にのみ可能です。

bash
az mysql flexible-server reset-gtid \
--name  \
--resource-group <resource_group_name> \
--gtid-set <gtid>

Microsoft.DBforMySQL/flexibleServers/updateConfigurations/action

この権限を使用すると、Azure上のMySQL Flexible Serverインスタンスの設定を更新できます。これにより、パフォーマンス調整、セキュリティ設定、または運用設定などのサーバーパラメータをカスタマイズできます。次のパラメータをバッチで一緒に更新できます: 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, および 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

この権限を使用すると、MySQL フレキシブル サーバーにユーザー割り当てのマネージド ID を割り当てることができます。

bash
az mysql flexible-server identity assign \
--resource-group <ResourceGroupName> \
--server-name <ServerName> \
--identity <IdentityName>

Microsoft.DBforMySQL/flexibleServers/stop/action

この権限を使用すると、Azure上のPostgreSQL Flexible Serverインスタンスを停止できます。サーバーを停止すると、一時的なサービスの中断が発生し、データベースに依存するアプリケーションやユーザーに影響を与える可能性があります。

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 flexible-server start \
--name <server_name> \
--resource-group <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

tip

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを学び、実践する:HackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポートする