GCP - Cloud SQL Enum

ゼロからヒーローまでAWSハッキングを学ぶ htARTE(HackTricks AWS Red Team Expert)

HackTricksをサポートする他の方法:

基本情報

Google Cloud SQLは、Google Cloud Platform上でMySQL、PostgreSQL、SQL Serverなどのリレーショナルデータベースを設定、維持、管理することを簡素化する管理サービスです。ハードウェアのプロビジョニング、データベースのセットアップ、パッチ適用、バックアップなどのタスクを処理する必要がなくなります。

Google Cloud SQLの主な機能は次のとおりです:

  1. 完全管理: Google Cloud SQLは完全に管理されたサービスであり、パッチ適用、更新、バックアップ、構成などのデータベースのメンテナンスタスクをGoogleが処理します。

  2. スケーラビリティ: データベースのストレージ容量とコンピューティングリソースをスケーリングする機能を提供し、通常はダウンタイムなしで行います。

  3. 高可用性: ゾーンやインスタンスの障害に耐えられるように、高可用性構成を提供します。

  4. セキュリティ: データの暗号化、Identity and Access Management(IAM)コントロール、プライベートIPとVPCを使用したネットワーク分離など、堅牢なセキュリティ機能を提供します。

  5. バックアップとリカバリ: 自動バックアップと時点復旧をサポートし、データの保護と復元を支援します。

  6. 統合: 他のGoogle Cloudサービスとシームレスに統合し、アプリケーションの構築、展開、管理の包括的なソリューションを提供します。

  7. パフォーマンス: データベースのパフォーマンスを監視、トラブルシューティング、および改善するためのパフォーマンスメトリクスと診断を提供します。

パスワード

Webコンソールでは、Cloud SQLはデータベースのパスワードを設定することができ、生成機能もありますが、最も重要なのは、MySQLでは空のパスワードを設定したり、すべてのパスワードを単なる文字「a」に設定することができます。

パスワードポリシーを構成することも可能で、長さ複雑さ再利用の無効化パスワード内のユーザー名の無効化を要求することができます。すべてがデフォルトで無効になっています。

SQL ServerActive Directory認証で構成できます。

ゾーンの可用性

データベースは1つのゾーンまたは複数のゾーンで利用可能であり、重要なデータベースは複数のゾーンに配置することが推奨されています。

暗号化

デフォルトではGoogleが管理する暗号化キーが使用されますが、**顧客管理型暗号化キー(CMEK)**を選択することも可能です。

接続

  • プライベートIP: VPCネットワークを示し、データベースはネットワーク内でプライベートIPを取得します

  • パブリックIP: データベースはパブリックIPを取得しますが、デフォルトでは誰も接続できません

  • 許可されたネットワーク: データベースに接続を許可するIP範囲を示します

  • プライベートパス: DBがあるVPCに接続されている場合、このオプションを有効にしてBigQueryなどの他のGCPサービスにアクセスを提供できます

データ保護

  • デイリーバックアップ: 自動的なデイリーバックアップを実行し、維持するバックアップの数を指定します。

  • 時点復旧: 特定の時点からデータを復旧できるようにし、秒単位で指定できます。

  • 削除保護: 有効にすると、この機能が無効になるまでDBを削除できなくなります

列挙

# Get SQL instances
gcloud sql instances list
gcloud sql instances describe <inst-name> # get IPs, CACert, settings

# Get database names inside an instance (like information_schema, sys...)
gcloud sql databases list --instance <intance-name>
gcloud sql databases describe <db-name> --instance <intance-name>

# Get usernames inside the db instance
gcloud sql users list --instance <intance-name>

# Backups
gcloud sql backups list --instance <intance-name>
gcloud sql backups describe <backup-name> --instance <intance-name>

認証されていない列挙

pageGCP - Cloud SQL Unauthenticated Enum

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

pageGCP - Cloud SQL Post Exploitation

永続性

pageGCP - Cloud SQL Persistence
htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ

HackTricksをサポートする他の方法:

最終更新