Cloud SQL SQL Serverの外部スクリプト実行無効化について

このブログシリーズ 「クラウドセキュリティ 実践集」 では、一般的なセキュリティ課題を取り上げ、「なぜ危険なのか?」 というリスクの解説から、 「どうやって直すのか?」 という具体的な修復手順(コンソール、gcloud CLI、Terraformなど)まで、分かりやすく解説します。

この記事では、Cloud SQL SQL Serverインスタンスでexternal scripts enabledフラグが有効化されている問題について、リスクと対策を解説します。

ポリシーの説明

Cloud SQL SQL Serverインスタンスでは、外部スクリプト実行(external scripts enabled)フラグのデフォルトが無効化されていますが、この設定が有効化されている場合、SQL Server内でPython、R、Java等の外部言語スクリプトを実行できるようになります。この機能はSQL Server Machine Learning Servicesの一部として提供され、高度な分析処理には便利ですが、適切に管理されていない場合、セキュリティリスクとなる可能性があります。

リスク

external scripts enabledフラグが有効化されている場合、攻撃者がSQLインジェクション等でデータベースにアクセスした場合、sp_execute_external_scriptを使用してPython、R、Javaコードを実行できる可能性があります。

EXEC sp_execute_external_script
@language = N'Python',
@script = N'import os; os.system("malicious command")'`

 

修復方法

コンソールでの修復手順

Google Cloud コンソールを使用して、Cloud SQL SQL Serverインスタンスの外部スクリプト実行を無効化します。

  1. Google Cloud コンソールにアクセス
  2. 対象のSQL Serverインスタンスを選択
    • インスタンス一覧から、設定を変更したいSQL Serverインスタンスをクリックします
  3. 構成の編集を開始
    • インスタンスの詳細ページで、上部にある「編集」ボタンをクリックします
  4. データベースフラグセクションへ移動
    • 「構成オプション」セクションを展開します
    • 「データベースフラグ」のセクションを見つけます
  5. external scripts enabledフラグの確認と変更
    • 既存のフラグ一覧で「external scripts enabled」を探します
    • もし存在する場合は、その値が「on」になっているか確認します
    • 「on」になっている場合は、ドロップダウンから「off」を選択します
    • フラグが存在しない場合は、デフォルトで無効になっているため対応不要です
  6. 変更の保存と適用
    • ページ下部の「保存」ボタンをクリックします
    • 「変更を保存しますか?」という確認ダイアログが表示されたら、「保存」をクリックします
    • インスタンスが再起動され、新しい設定が適用されます(数分かかる場合があります)

Terraformでの修復手順

Cloud SQL SQL Serverインスタンスで外部スクリプト実行を無効化するTerraformコードと、主要な修正ポイントを説明します。

# Cloud SQL SQL Server インスタンスの設定
resource "google_sql_database_instance" "sqlserver_instance" {
  >>> Skip
    # データベースフラグ設定 - external scripts enabledを明示的に無効化
    database_flags {
      name  = "external scripts enabled"
      value = "off"  # 外部スクリプト実行を無効化
    }
}

 

最後に

この記事では、Cloud SQL SQL Serverインスタンスでexternal scripts enabledフラグが有効化されている問題について、リスクと対策を解説しました。

この問題の検出は弊社が提供するSecurifyのCSPM機能で簡単に検出及び管理する事が可能です。 運用が非常に楽に出来る製品になっていますので、ぜひ興味がある方はお問い合わせお待ちしております。 最後までお読みいただきありがとうございました。この記事が皆さんの役に立てば幸いです。

参考情報

この記事をシェアする

クラウドセキュリティ対策実践集一覧へ戻る

貴社の利用状況に合わせた見積もりを作成します。

料金プランを詳しく見る