D セッションCookieを使用したセキュリティ・リスクの軽減

マルチファクタ認証(MFA)とパスワードレス認証は、悪意のある者が盗んだパスワードでもたらす可能性のある損害を軽減するのに非常に効果的です。ただし、アプリケーションに対してすでに認証されている正当なユーザーのブラウザからセッションCookieが流出した場合(コピーまたは盗難)、MFAはバイパスできます。セッションCookieは、Webアプリケーションにログインした後、ユーザーのブラウザに情報を格納し、セッションが期限切れになるかログアウトするまで、再認証する必要なしにユーザーをサインインしたままにします。セッションCookieはBearerトークンとして機能するため、Cookieを所有している人は誰でもそれを使用することができ、その流出は重大なセキュリティ・リスクになります。Bearerトークンは、中間者攻撃とも呼ばれるAdversary-in-the-Middle (AitM)攻撃の影響を受けやすくなります。さらに、感染したブラウザからセッションCookieを抽出するように設計されたマルウェアが増加し、共有シークレット(時間ベースのOTPなど)に依存するオーセンティケータをバイパスすることを目的としたフィッシング技術も進歩しています。

セッションCookieの流出リスクを検出して軽減するには、ログインしているユーザーの定期的な(再)認証とともに、多層防御戦略をお薦めします。次に、セッションCookieの流出の影響を防止または最小化するためのアプローチをいくつか示します。単一の手法だけでは十分ではないため、効果的な保護のためにこれらのアプローチを組み合せて実装することが不可欠です。

システムのチューニング

OAMは、セッションCookieの流出による影響を防止または低減するための包括的な機能セットを提供します。次の機能を使用して、セッションCookieの流出に関連するリスクを軽減または制限できます。
  • アイドルおよび非アクティブのタイムアウトを短縮します。詳細は、「共通設定」を参照してください。
    • アイドル・タイムアウト(デフォルト: 15分)を超えると、非アクティブ・セッションが発生し、ユーザーが正常に再認証してからセッションCookieを更新するまで、保護されたリソースへのアクセスが拒否されます。
  • 最大セッション・タイムアウトを短縮します。詳細は、「共通設定」を参照してください。
    • セッション存続期間を短くすると(デフォルト: 480分)、アクティブな場合でもすべての認証およびセッションCookieが破棄され、新しいログイン・セッションが作成されます。以前に発行されたCookieは無効ではなくなります。
  • WebGatesトークンの存続期間を短縮します。詳細は、「コンソールの登録済OAMエージェント構成パラメータ」を参照してください。
    • Cookieの存続期間(デフォルト: 60分)を超えると、既存のCookieが無効になり、新しいCookieが生成されます。これは、盗まれたCookieの影響を制限します
  • IPアドレス検証を有効にします。詳細は、「Webゲート用IPアドレスの検証」を参照してください。
    • この機能は、ユーザーが認証またはログインしたときにCookieをユーザー・エージェントのIPアドレスにバインドします。これは、保護されたリソースへのアクセス時に検証されます。また、リクエスト内のプロキシIPアドレスがチェックされ、盗まれたCookieが別のIPアドレスからリプレイされることを防ぎます。
  • ステップアップ認証を使用して、機密リソースにアクセスします。詳細は、「サーバー側セッションの実施例」を参照してください。
    • ユーザーは、機密リソースにアクセスする前に追加の認証ファクタによってチャレンジされる必要があります。これにより、セッションCookieの流出の影響が最小限に抑えられます。
    • Oracle Adaptive Risk Management (OARM)では、ユーザー・アクティビティ・コンテキストに基づくルールを使用してアクセスを認可できます(ユーザー動作、ジオ・インテリジェンス、動的再認証など)。
    • オプションで、OARMと統合すると、リスク・モデリングで特定の攻撃ベクターに対処できます。詳細は、「Oracle Adaptive Risk Management (OARM)の機能」を参照してください。

環境の保護

OAMがデプロイされている環境の保護は重要です。Adversary-in-the-Middle (AitM)攻撃は、攻撃者がセッションCookieを盗むことを可能にする、侵害されたデプロイメントに依存します。この脆弱性を予防または軽減するために、
  • セキュアなネットワークでネットワーク・レベルでのデータの盗難を制限する
    • ネットワーク・レベルのセキュリティ制御(あらゆる場所での相互TLS通信、侵入検知サービス、Webアプリケーション・ファイアウォール)および定期的なスキャンを使用して、疑わしいアクティビティを検出します。
  • 管理およびモニター対象のデバイスへのアクセスを制限する(特に管理者アクセスの場合)
    • 悪意のあるアクティビティの影響範囲を制限するには、管理者アクセスを定期的に制御、監査およびレビューする必要があります。

セッションCookieの流出の検出

アクティビティ・ログで観察された次のパターンは、潜在的な侵害を示している可能性があります。
  • 複数のソースからの同じCookie
    • アクティブなログイン・セッション中(最大セッション存続期間内)にこれが発生した場合、ユーザー・エージェントまたはプロキシのIPアドレスが変更されていることを示します。プロキシIPアドレスは(たとえば、ISP転送プロキシのため)変更される可能性がありますが、ユーザー・エージェントのIPアドレスが(たとえば、DHCPリースの有効期限が切れるため)変更されることはほとんどありません。
  • ユーザー・セッション中のIPアドレスの変更
    • これは非常に珍しいことであり、非常に疑わしいことです。
  • ユーザーが開始したのではないリソース・アクセス
    • HTTPリクエスト内のユーザーに関連付けられたコンテキストを使用して、それがユーザーの動作と合致しているかどうか、および変化が悪意のあるアクティビティを示している可能性があるかどうかを判断できます。OARMを使用すると、コンテキスト・リスクのモデリングおよびユーザー・アクティビティ・ベースのルールの管理が簡略化されます。

セッションCookieの流出への対応

検出されると、OAMはアクションを実行する機能を管理に提供します。具体的には、
  • ユーザー・セッションを終了します
    • APIおよびUIコンソールでは、1人または複数のユーザーのアクティブ・セッションを即時に終了できます。
    • ユーザー・アカウントを無効化し、Cookieがどのように盗まれたかを調査します。
  • データ/パケットの盗難、ユーザー・デバイス上のマルウェアは、攻撃者がCookieを盗む通常の方法です。
    • 攻撃者のIPアドレスをブロックします
  • 認可ポリシーを更新して、疑わしいIPアドレスをIPAddressRange条件に追加します。