權限提升:AlloyDB 資料庫超級使用者寫入使用者資料表

本文說明 Security Command Center 中的威脅發現項目類型。威脅偵測工具偵測到雲端資源中可能存在威脅時,就會產生威脅發現項目。如需可用威脅發現項目的完整清單,請參閱「威脅發現項目索引」。

總覽

PostgreSQL 適用的 AlloyDB 資料庫超級使用者帳戶 (postgres) 寫入使用者資料表。超級使用者 (存取權非常廣泛的角色) 一般不應寫入使用者資料表。平時應使用存取權較受限的使用者帳戶。如果超級使用者寫入使用者資料表,可能表示攻擊者已提升權限或竊取了預設資料庫使用者的身分,然後修改資料。也可能表示做法正常,但並不安全。

回應方式

如要回應這項發現,請按照下列步驟操作:

步驟 1:查看調查結果詳細資料

  1. 按照「查看結果」一文的說明,開啟 Privilege Escalation: AlloyDB Database Superuser Writes to User Tables 發現項目。
  2. 在調查結果詳細資料面板的「摘要」分頁中,查看下列各節的資訊:

    • 偵測到的內容,特別是下列欄位:
      • 資料庫顯示名稱:受影響的 AlloyDB for PostgreSQL 執行個體中的資料庫名稱。
      • 資料庫使用者名稱:超級使用者。
      • 資料庫查詢:寫入使用者資料表時執行的 SQL 查詢。
    • 受影響的資源,尤其是下列欄位:
      • 資源完整名稱:受影響的 PostgreSQL 適用的 AlloyDB 執行個體資源名稱。
      • 父項完整名稱:AlloyDB for PostgreSQL 執行個體的資源名稱。
      • 專案完整名稱:包含 AlloyDB for PostgreSQL 執行個體的專案。 Google Cloud
    • 相關連結,尤其是下列欄位:
      • Cloud Logging URI:記錄檔項目的連結。
      • MITRE ATT&CK 方法:連結至 MITRE ATT&CK 文件。
  3. 如要查看調查結果的完整 JSON,請按一下「JSON」分頁標籤。

步驟 2:檢查記錄

  1. 前往 Google Cloud 控制台的「Logs Explorer」,方法是點選 cloudLoggingQueryURI 中的連結 (如步驟 1 所示)。「記錄檔探索器」頁面會顯示與相關 AlloyDB for PostgreSQL 執行個體有關的所有記錄。
  2. 使用下列篩選條件,檢查 PostgreSQL pgaudit 記錄檔 (內含超級使用者執行的查詢):
    • protoPayload.request.user="postgres"

步驟 3:研究攻擊和回應方法

  1. 查看這類發現項目的 MITRE ATT&CK 架構項目: 透過網路服務進行資料外洩
  2. 如要判斷是否需要採取其他補救措施,請將調查結果與 MITRE 研究結合。

步驟 4:實作回應

下列回應計畫可能適用於這項發現,但也可能影響作業。 請仔細評估調查期間收集到的資訊,找出解決問題的最佳方法。

後續步驟