AccessKey (AK) とアカウントパスワードは、Alibaba Cloud リソースにアクセスするための主要な認証情報です。誤ったコードコミットや設定ファイルの誤ったアップロードといったシナリオにより認証情報が漏洩し、データ侵害やリソースの不正使用につながる可能性があります。このトピックでは、Security Center による AccessKey 漏洩イベントの自動検知・対応方法と、認証情報の漏洩リスクを低減するためのセキュリティ上のベストプラクティスについて説明します。
認証情報のタイプとセキュリティリスク
Alibaba Cloud は、異なる使用シナリオに対応する 2 種類の API 認証情報を提供しています。
AccessKey (略称 AK) :クラウドサービス API をプログラム経由で呼び出すために使用します。AccessKey は、AccessKey ID (ユーザーを識別するために使用) と AccessKey Secret (ID の検証に使用し、機密として保持する必要があります) で構成されます。
アカウントパスワード:Alibaba Cloud コンソールにログインしてリソースを管理するために使用します。
AccessKey は、プログラムによるログインパスワードに相当します。AccessKey Secret は、ユーザー ID を検証するための鍵であり、機密に保持する必要があります。漏洩した場合、攻撃者はお客様の ID を偽装してクラウドリソースを操作でき、データ侵害やリソースの悪意ある使用などの深刻な結果につながります。

API 認証情報の漏洩はデータ侵害につながり、お客様に重大な損失をもたらす可能性があります。
Security Center の AccessKey 漏洩検知メカニズム
偶発的な AccessKey 漏洩によるセキュリティリスクに対処するため、Security Center は漏洩前から漏洩後までの段階にわたる包括的な検知機能を提供し、完全に自動化された AK セキュリティ検知ループを構築しています。
漏洩前:Cloud Security Posture Management (CSPM) を使用して、クラウド製品の設定にセキュリティリスクがあるかどうかを確認します。
漏洩中:GitHub などのコードホスティングプラットフォームと提携してトークンスキャンメカニズムを導入し、コードがコミットされてから数秒以内に AK 漏洩を検知します。
漏洩後:異常な AK 呼び出し動作を監視し、攻撃者による漏洩した AK の疑わしい使用が検知された場合、直ちにアラートを生成します。
Alibaba Cloud は、世界最大のオープンソースコードホスティングサービスプロバイダーである GitHub と提携し、GitHub 上の AccessKey 漏洩を迅速に検知して対応するためのトークンスキャンメカニズムを導入しました。AccessKey を含むコードが GitHub にコミットされると、Security Center は数秒以内に漏洩を検知してお客様に通知できます。
漏洩前:設定の確認とリスクのトラブルシューティング
クラウド製品の操作監査ログが 今すぐ有効にする されていることを確認し、異常な API 呼び出しが存在するかどうかを分析できるようにします。
プライマリ Alibaba Cloud アカウントの AccessKey ではなく、RAM ユーザーの AccessKey を使用し、最小権限の原則に従います。これにより、AccessKey が漏洩した場合でも、攻撃者がクラウドアカウント全体を制御することはできません。
プライマリアカウントで多要素認証 (TOTP) を有効にすることで、パスワード漏洩による不正アクセスのリスクを大幅に低減できます。
説明多要素認証 (MFA) は TOTP に名前が変更されました。
漏洩中:漏洩元と詳細の表示
漏洩後:異常な呼び出しアラート
Security Center コンソールの セキュリティアラートの処理 モジュールで、Cloud Service Threat Detection アラートタイプをフィルタリングして表示します。Security Center が攻撃者による疑わしい異常な AK 呼び出しを検知すると、迅速に対応できるよう直ちにアラートをトリガーします。
ナビゲーションパス:レスポンス検出 -
認証情報の漏洩リスクを低減するためのベストプラクティス
Security Center が提供する検知と対応機能に加えて、日常業務において以下のセキュリティのベストプラクティスに従うことで、認証情報の漏洩リスクを最小限に抑えることができます。
日常使用のガイドライン
コードに AccessKey を埋め込まない
コード内に AccessKey をハードコーディングすると、コードをコミット、共有、またはオープンソース化する際に AK が漏洩する可能性があります。環境変数、鍵管理サービス、または設定ファイルを使用して AccessKey を保存し、バージョン管理システムの除外リストに追加することを推奨します。
AccessKey を定期的にローテーションする
AccessKey を定期的にローテーションすることで、古いコードの漏洩が本番ワークロードに与える影響を低減できます。新しい AccessKey を生成して古いものを置き換えることで、コード内の AccessKey を定期的にローテーションすることを推奨します。
未使用の AccessKey を無効化する
Alibaba Cloud の AccessKey コンソールでは、各 AccessKey の最終アクセス時刻を確認できます。長期間使用されていない AccessKey については、攻撃対象領域を減らすために 無効 することを推奨します。
ワークロードごとに専用の RAM ユーザー AccessKey を割り当てる
異なるビジネスシナリオに対して独立した RAM ユーザーを作成し、それぞれに必要最小限の権限を付与して、ワークロードごとに異なる RAM ユーザー AccessKey を割り当ててください。すべてのワークロードを管理するために単一の高権限 AccessKey を使用することは避けてください。
セキュリティ監査の設定
操作監査ログを有効化し、ログを OSS と SLS に配信して保存と分析を行う
操作監査ログを OSS に配信して保存することで、セキュリティインシデント発生時に完全な証拠資料を提供します。同時に操作監査ログを SLS に配信することで、大規模なログ内の異常な動作を迅速に検索および分析できます。