StoreFront™ 2507 LTSR

StoreFront展開のセキュリティ保護

この記事では、StoreFrontの展開および構成時にシステムセキュリティに影響を与える可能性のある領域について説明します。

エンドユーザー認証

通常、エンドユーザーはStoreFrontに直接認証するか、StoreFrontの前面にあるCitrix Gatewayに認証する必要があります。利用可能な認証方法の詳細については、「認証」を参照してください。

エンドユーザーとの通信

Citrixでは、ユーザーデバイスとStoreFront間の通信をHTTPSを使用して保護することを推奨しています。これにより、クライアントとStoreFront間で送信されるパスワードやその他のデータが暗号化されます。さらに、特に公共のWi-Fiホットスポットなどの安全でない場所から接続が行われる場合、プレーンなHTTP接続は、中間者攻撃などのさまざまな攻撃によって侵害される可能性があります。適切なIIS構成がない場合、StoreFrontは通信にHTTPを使用します。

構成によっては、ユーザーはゲートウェイまたはロードバランサーを介してStoreFrontにアクセスする場合があります。HTTPS接続はゲートウェイまたはロードバランサーで終端できます。ただし、この場合でもCitrixは、ゲートウェイまたはロードバランサーとStoreFront間の接続をHTTPSを使用して保護することを推奨しています。

HTTPSを有効にし、HTTPを無効にしてHSTSを有効にするには、「HTTPSによるStoreFrontの保護」を参照してください。

NetScaler Gatewayまたはロードバランサーの仮想サーバーで、有効にするTLSバージョンを構成できます。TLSバージョン1.2より前のレガシーTLSバージョンは無効にすることをお勧めします。

StoreFrontサーバーでは、WindowsとIISが受信接続に許可されるTLSバージョンを決定します。TLSバージョン1.2より前のレガシーTLSバージョンは無効にすることをお勧めします。Windows Server 2025では、TLS 1.0および1.1はデフォルトで無効になっています。Windows Server 2022では、クライアント接続に対してTLS 1.0および1.1を無効にするようにIISを構成できます。詳細については、「HTTPSによるStoreFrontの保護」を参照してください。すべてのWindowsサーバーバージョンで、グループポリシーまたはWindowsレジストリ設定を使用してTLS 1.0および1.1を無効にできます。詳細については、「Microsoftドキュメント」を参照してください。

古いバージョンのCitrix ReceiverはTLS 1.2を使用して接続できません。詳細については、「CTX232266」を参照してください。

Delivery Controllerとの通信

Citrixでは、StoreFrontとCitrix Virtual Apps and Desktops Delivery Controller間で渡されるデータを保護するためにHTTPSプロトコルを使用することを推奨しています。詳細については、「Delivery ControllerでのHTTPSの有効化」を参照してください。StoreFrontでHTTPSを使用するように構成するには、「Citrix Virtual Apps and Desktopsのサイトの追加」および「Citrix Gatewayアプライアンスの追加」を参照してください。証明書が侵害された場合は、「証明書失効リスト(CRL)チェック」を使用できます。StoreFrontは、Delivery Controllerとの通信にTLS 1.2以降を使用します。

信頼できるStoreFrontサーバーのみがDelivery Controllerと通信できるように、Delivery ControllerとStoreFrontを構成することをお勧めします。詳細については、「セキュリティキーの管理」を参照してください。

Cloud Connectorとの通信

Citrixでは、StoreFrontとCloud Connector間で渡されるデータを保護するためにHTTPSプロトコルを使用することを推奨しています。「HTTPS構成」を参照してください。StoreFrontを構成するには、「Citrix Desktops as a Serviceのサイトの追加」および「Citrix Gatewayアプライアンスの追加」を参照してください。証明書が侵害された場合は、「証明書失効リスト(CRL)チェック」を使用できます。StoreFrontは、Cloud Connectorとの通信にTLS 1.2以降を使用します。

信頼できるStoreFrontサーバーのみがCloud Connectorと通信できるように、DaaSとStoreFrontを構成することをお勧めします。詳細については、「セキュリティキーの管理」を参照してください。

Federated Authentication Serviceとの通信

StoreFrontとFederated Authentication Service(FAS)サーバー間の通信については、「Federated Authentication Service - セキュリティとネットワーク構成」を参照してください。

リモートアクセス

Citrixでは、StoreFrontサーバーをインターネットに直接公開することはお勧めしません。リモートユーザーに認証とアクセスを提供するには、Citrix Gatewayを使用することを推奨しています。

Microsoft Internet Information Services(IIS)の強化

StoreFrontを制限されたIIS構成で構成できます。これはデフォルトのIIS構成ではないことに注意してください。

ファイル名拡張子

要求フィルタリングを使用して、許可されるファイル拡張子のリストを構成し、リストにないファイル名拡張子を禁止できます。詳細については、「IISドキュメント」を参照してください。

StoreFrontには、次のファイル名拡張子が必要です。

  • . (空白の拡張子)
  • .appcache
  • .aspx
  • .cr
  • .css
  • .dtd
  • .gif
  • .htm
  • .html
  • .ica®
  • .ico
  • .jpg
  • .js
  • .png
  • .svg
  • .txt
  • .xml

ストアWebサイトでCitrix Workspaceアプリのダウンロードまたはアップグレードが有効になっている場合、StoreFrontには次のファイル名拡張子も必要です。

  • .dmg
  • .exe

HTML5用Citrix Workspaceアプリが有効になっている場合、StoreFrontには次のファイル名拡張子も必要です。

  • .eot
  • .ttf
  • .woff
  • .wasm

動詞

要求フィルタリングを使用して、許可される動詞のリストを構成し、リストにない動詞を禁止できます。詳細については、「IISドキュメント」を参照してください。

  • GET
  • POST
  • HEAD

URL内の非ASCII文字

ストア名とWebサイト名がASCII文字のみを使用するようにすれば、StoreFrontのURLにはASCII文字が含まれません。要求フィルタリングを使用して、非ASCII文字を禁止できます。詳細については、「IISドキュメント」を参照してください。

MIMEタイプ

次のファイル拡張子に対応するOSシェルMIMEタイプを削除できます。

  • .exe
  • .dll
  • .com
  • .bat
  • .csh

詳細については、「IISドキュメント」を参照してください。

X-Powered-Byヘッダーの削除

デフォルトでは、IISは値がASP.NETX-Powered-Byヘッダーを含みます。IISを構成してこのヘッダーを削除できます。詳細については、「IISカスタムヘッダーのドキュメント」を参照してください。

IISバージョンを含むServerヘッダーの削除

デフォルトでは、IISはServerヘッダーを追加することでIISバージョンを報告します。IISを構成してこのヘッダーを削除できます。詳細については、「IIS要求フィルタリングのドキュメント」を参照してください。

StoreFront Webサイトの別パーティションへの移動

StoreFront Webサイトをシステムファイルとは別のパーティションでホストできます。IIS内で、StoreFront展開を作成する前に、Default Web Siteを適切なパーティションに移動するか、別のサイトを作成する必要があります。

IIS機能

StoreFrontによってインストールおよび使用されるIIS機能のリストについては、「システム要件」を参照してください。その他のIIS機能は削除できます。

StoreFrontはISAPIフィルターを直接使用しませんが、この機能はASP.NETで必要であるため、アンインストールできません。

ハンドラーマッピング

StoreFrontには次のハンドラーマッピングが必要です。その他のハンドラーマッピングは削除できます。

  • ExtensionlessUrlHandler-Integrated-4.0
  • PageHandlerFactory-Integrated-4.0
  • StaticFile

詳細については、「IISハンドラーのドキュメント」を参照してください。

ISAPIフィルター

StoreFrontはISAPIフィルターを必要としません。すべてのISAPIフィルターを削除できます。ただし、ASP.NETにはISAPI Windows機能が必要です。詳細については、「IIS ISAPIフィルターのドキュメント」を参照してください。

.NET承認規則

デフォルトでは、IISサーバーの「.NET承認規則」は「すべてのユーザーを許可」に設定されています。デフォルトでは、StoreFrontが使用するWebサイトはこの構成を継承します。

サーバーレベルで.NET承認規則を削除または変更する場合は、StoreFrontが使用するWebサイトの規則を上書きして、「すべてのユーザー」に対する許可規則を追加し、その他の規則を削除する必要があります。

リテールモード

リテールモードを有効にできます。詳細については、「IISドキュメント」を参照してください。

アプリケーションプール

StoreFrontは次のアプリケーションプールを作成します。

  • Citrix Configuration Api
  • Citrix Delivery Services Authentication
  • Citrix Delivery Services Resources
  • およびCitrix Receiver™ for Web

各IISアプリケーションで使用されるアプリケーションプール、または各プールのIDを変更しないでください。複数のサイトを使用している場合、各サイトが個別のアプリケーションプールを使用するように構成することはできません。

リサイクル設定で、アプリケーションプールのアイドルタイムアウトと仮想メモリ制限を設定できます。「Citrix Receiver for Web」アプリケーションプールがリサイクルされると、Webブラウザー経由でログインしているユーザーがログアウトされるため、中断を最小限に抑えるために、デフォルトでは毎日02:00にリサイクルされるように設定されています。リサイクル設定を変更すると、ユーザーが日中の他の時間にログオフされる可能性があります。

デフォルトのIISランディングページ

c:\inetpub\wwwrootからファイルiisstart.htmwelcome.pngを削除できます。

必須設定

  • IIS認証設定を変更しないでください。StoreFrontは認証を管理し、StoreFrontサイトのディレクトリを適切な認証設定で構成します。
  • StoreFrontサーバーのSSL設定で、クライアント証明書: 必須を選択しないでください。StoreFrontのインストールにより、StoreFrontサイトの適切なページがこの設定で構成されます。
  • StoreFrontはセッション状態およびその他の機能のためにCookieを必要とします。特定のディレクトリでは、セッション状態Cookie設定モードCookieを使用に設定する必要があります。
  • StoreFrontは.NET信頼レベル完全信頼に設定する必要があります。.NET信頼レベルを他の値に設定しないでください。

サービス

StoreFrontのインストールにより、以下のWindowsサービスが作成されます。

  • Citrix Configuration Replication (NT SERVICE\CitrixConfigurationReplication)
  • Citrix Cluster Join (NT SERVICE\CitrixClusterService)
  • Citrix Peer Resolution (NT SERVICE\Citrix Peer Resolution Service)
  • Citrix Credential Wallet (NT SERVICE\CitrixCredentialWallet)
  • Citrix Subscriptions Store (NT SERVICE\CitrixSubscriptionsStore)
  • Citrix Default Domain Services (NT SERVICE\CitrixDefaultDomainService)

これらのアカウントはNetwork Serviceとしてログオンします。この構成を変更しないでください。

XenApp 6.5用にStoreFront Kerberos制約付き委任を構成すると、Citrix StoreFront Protocol Transitionサービス (NT SERVICE\CitrixStoreFrontProtocolTransition) が追加で作成されます。このサービスはNT AUTHORITY\SYSTEMとして実行されます。この構成を変更しないでください。

ユーザー権限の割り当て

ユーザー権限の割り当てをデフォルトから変更すると、StoreFrontで問題が発生する可能性があります。特に、

  • Microsoft IISはStoreFrontのインストールの一部として有効になります。Microsoft IISは、組み込みグループIIS_IUSRSにログオン権限バッチジョブとしてログオンと特権認証後にクライアントを偽装を付与します。これは通常のMicrosoft IISのインストール動作です。これらのユーザー権限を変更しないでください。詳細については、Microsoftのドキュメントを参照してください。

  • StoreFrontをインストールすると、IISがユーザー権限サービスとしてログオンプロセスのメモリクォータの調整セキュリティ監査の生成、およびプロセスレベルトークンの置き換えを付与するアプリケーションプールが作成されます。

  • 展開を作成または変更するには、管理者は権限ファイルとディレクトリの復元を持っている必要があります。

  • サーバーがサーバーグループに参加するには、Administratorsグループは権限ファイルとディレクトリの復元ネットワークからこのコンピューターにアクセス、および監査とセキュリティログの管理を持っている必要があります。

  • ユーザーがユーザー名とパスワード認証(直接またはゲートウェイ経由)でログオンするには、StoreFrontをデリバリーコントローラー経由でパスワードを検証するように構成していない限り、ローカルログオンを許可する権限が必要です。

これは包括的なリストではなく、他のユーザーアクセス権が必要になる場合があります。

グループメンバーシップの構成

StoreFrontサーバーグループを構成すると、以下のサービスがAdministratorsセキュリティグループに追加されます。

  • Citrix Configuration Replication (NT SERVICE\CitrixConfigurationReplication)
  • Citrix Cluster Join (NT SERVICE\CitrixClusterService)。このサービスは、グループの一部であるサーバーでのみ表示され、参加が進行中の間のみ実行されます。

これらのグループメンバーシップは、StoreFrontが正しく動作するために必要です。目的は次のとおりです。

  • 証明書の作成、エクスポート、インポート、削除、およびそれらに対するアクセス許可の設定
  • Windowsレジストリの読み取りと書き込み
  • グローバルアセンブリキャッシュ (GAC) 内のMicrosoft .NET Frameworkアセンブリの追加と削除
  • フォルダーProgram Files\Citrix\<StoreFrontLocation>へのアクセス
  • IISアプリケーションプールIDおよびIIS Webアプリケーションの追加、変更、削除
  • ローカルセキュリティグループおよびファイアウォールルールの追加、変更、削除
  • WindowsサービスおよびPowerShellスナップインの追加と削除
  • Microsoft Windows Communication Framework (WCF) エンドポイントの登録

StoreFrontの更新では、この操作リストは予告なく変更される場合があります。

StoreFrontのインストールにより、以下のローカルセキュリティグループも作成されます。

  • CitrixClusterMembers
  • CitrixCWServiceReadUsers
  • CitrixCWServiceWriteUsers
  • CitrixDelegatedAuthenticatorUsers
  • CitrixDelegatedDirectoryClaimFactoryUsers
  • CitrixPNRSReplicators
  • CitrixPNRSUsers
  • CitrixStoreFrontAdministrators
  • CitrixSubscriptionServerUsers
  • CitrixSubscriptionsStoreServiceUsers
  • CitrixSubscriptionsSyncUsers

StoreFrontはこれらのセキュリティグループのメンバーシップを維持します。これらはStoreFront内のアクセス制御に使用され、ファイルやフォルダーなどのWindowsリソースには適用されません。これらのグループメンバーシップを変更しないでください。

NTLM

ローカルESENTデータベースを使用して「お気に入り」を有効にしている場合、StoreFrontはサーバーグループで「お気に入り」を同期する際にNTLMを使用する可能性があります。NTLMを無効にすると、「お気に入り」の同期に失敗する可能性があります。代替として、SQL Serverデータベースを使用できます。

ユーザーがドメインパススルー認証を使用して認証する場合、デフォルトではIISは可能な場合はKerberosを使用し、それ以外の場合はNTLMにフォールバックします。StoreFrontの前にロードバランサーがある場合、常にNTLMにフォールバックします。

サーバーをNTLMv2のみを使用し、NTLMv1を拒否するように構成できます。詳細については、Microsoftドキュメントを参照してください。Windows Server 2025以降では、NTLMv1が削除されているため、常にNTLMv2が使用されます。

StoreFrontの証明書

サーバー証明書

サーバー証明書は、StoreFrontにおけるマシン識別およびトランスポート層セキュリティ (TLS) トランスポートセキュリティに使用されます。ICAファイル署名を有効にすることを決定した場合、StoreFrontは証明書を使用してICAファイルにデジタル署名することもできます。

詳細については、エンドユーザーとStoreFront間の通信およびICAファイル署名を参照してください。

トークン管理証明書

認証サービスとストアはそれぞれトークン管理のために証明書を必要とします。StoreFrontは、認証サービスまたはストアが作成されると自己署名証明書を生成します。StoreFrontによって生成された自己署名証明書は、他の目的で使用しないでください。

Citrix Delivery Services証明書

StoreFrontは、カスタムWindows証明書ストア (Citrix Delivery Services) に多数の証明書を保持しています。Citrix Configuration Replicationサービス、Citrix Credential Walletサービス、およびCitrix Subscriptions Storeサービスはこれらの証明書を使用します。クラスター内の各StoreFrontサーバーはこれらの証明書のコピーを持っています。これらのサービスは安全な通信のためにTLSに依存せず、これらの証明書はTLSサーバー証明書として使用されません。これらの証明書は、StoreFrontストアが作成されるかStoreFrontがインストールされるときに作成されます。このWindows証明書ストアの内容を変更しないでください。

コード署名証明書

StoreFrontには、<InstallDirectory>\Scriptsフォルダーに多数のPowerShellスクリプト (.ps1) が含まれています。デフォルトのStoreFrontインストールではこれらのスクリプトは使用されません。これらは、特定のまれなタスクの構成手順を簡素化します。これらのスクリプトは署名されており、StoreFrontがPowerShell実行ポリシーをサポートできるようにします。AllSignedポリシーを推奨します。(Restrictedポリシーは、PowerShellスクリプトの実行を妨げるためサポートされていません。)StoreFrontはPowerShell実行ポリシーを変更しません。

StoreFrontはコード署名証明書を信頼された発行元ストアにインストールしませんが、Windowsはコード署名証明書を自動的にそこに追加できます。これは、PowerShellスクリプトが常に実行オプションで実行されたときに発生します。(実行しないオプションを選択した場合、証明書は信頼されていない証明書ストアに追加され、StoreFront PowerShellスクリプトは実行されません。)コード署名証明書が信頼された発行元ストアに追加されると、その有効期限はWindowsによってチェックされなくなります。StoreFrontタスクが完了した後、この証明書を信頼された発行元ストアから削除できます。

StoreFrontのセキュリティ分離

StoreFrontサーバーにStoreFrontと同じWebドメイン(ドメイン名とポート)でWebアプリケーションを展開する場合、それらのWebアプリケーションのセキュリティリスクがStoreFront展開のセキュリティを低下させる可能性があります。より高度なセキュリティ分離が必要な場合は、CitrixはStoreFrontを別のWebドメインに展開することを推奨します。

ICAファイルのダウンロード

ICAファイルには、VDAに接続し、多くの場合、追加認証なしでシングルサインオンするための情報が含まれています。したがって、ICAファイルが保護されていることを確認してください。ハイブリッド起動の場合、構成によっては、ICAファイルがユーザーのデバイスにダウンロードされることがあります。ICAファイルのダウンロードを無効にすることをお勧めします。詳細については、起動設定を参照してください。

ICAファイル署名

StoreFrontは、サーバー上の指定された証明書を使用してICAファイルにデジタル署名するオプションを提供します。これにより、この機能をサポートするCitrix Workspaceアプリのバージョンは、ファイルが信頼できるソースから発信されたものであることを検証できます。ICAファイルは、StoreFrontサーバーで実行されているオペレーティングシステムがサポートする任意のハッシュアルゴリズム(SHA-1およびSHA-256を含む)を使用して署名できます。詳細については、ICAファイル署名の有効化を参照してください。

アプリ保護

アプリ保護を使用して、画面キャプチャとスクリーンロガーを防止できます。ハイブリッド起動の場合、アプリ保護はデフォルトで無効になっています。有効にするには、アプリ保護を参照してください。

ユーザーのパスワード変更

Webブラウザー経由でActive Directoryドメイン資格情報を使用してログオンするユーザーが、いつでも、または有効期限が切れた場合にのみパスワードを変更できるようにすることができます。ただし、これにより、認証サービスを使用するストアにアクセスできるすべてのユーザーに機密性の高いセキュリティ機能が公開されます。組織にユーザーパスワード変更機能を内部使用のみに限定するセキュリティポリシーがある場合は、企業ネットワークの外部からストアにアクセスできないようにしてください。認証サービスを作成すると、デフォルトの構成では、有効期限が切れていてもユーザーがパスワードを変更できないようになっています。詳細については、ユーザーがパスワードを変更できるようにするを参照してください。

カスタマイズ

セキュリティを強化するため、コンテンツセキュリティポリシーは他のサーバーからのスクリプトをブロックします。カスタマイズを作成する際は、スクリプトをWebサイトのcustomフォルダーに配置してください。StoreFrontがHTTPS接続用に構成されている場合、カスタムコンテンツまたはスクリプトへのリンクもHTTPSを使用していることを確認してください。

セキュリティヘッダー

WebブラウザーでストアWebサイトを表示すると、StoreFrontはWebブラウザーに制限を課す以下のセキュリティ関連ヘッダーを返します。

ヘッダー名 説明
content-security-policy frame-ancestors 'none' これにより、他のサイトがStoreFront Webサイトをフレーム内に埋め込むことを防ぎ、クリックジャッキング攻撃を回避します。さらに、HTMLページには、XSS攻撃を軽減するためにスクリプトソースを制限するcontent-security-policyを含むmetaタグが含まれています。
X-Content-Type-Options nosniff これにより、MIMEタイプスニッフィングを回避します。
X-Frame-Options deny これにより、他のサイトがStoreFront Webサイトをフレーム内に埋め込むことを防ぎ、クリックジャッキング攻撃を回避します。これはcontent-security-policyframe-ancestors 'none'によって廃止されていますが、content-security-policyをサポートしない一部の古いブラウザーでは理解されます。
X-XSS-Protection 1; mode=block 一部のブラウザーでXSS (クロスサイトスクリプティング) 攻撃を軽減するために使用されます。

StoreFrontはいくつかのCookieを使用します。Webサイトの運用で使用されるCookieの一部は次のとおりです。

Cookie 説明
ASP.NET_SessionId 認証ステータスを含むユーザーのセッションを追跡します。HttpOnlyが設定されています。
CtxsAuthId セッション固定攻撃を防ぐため、StoreFrontはこのCookieを使用してユーザーが認証されているかどうかを追跡します。HttpOnlyが設定されています。
CsrfToken 標準のCookie-to-headerトークンパターンを介したクロスサイトリクエストフォージェリを防ぐために使用されます。サーバーはCookieにトークンを設定します。クライアントはCookieからトークンを読み取り、後続のリクエストでクエリ文字列またはヘッダーにトークンを含めます。このCookieは、クライアントのJavaScriptが読み取れるようにHttpOnlyが設定されていない必要があります。
CtxsDeviceId デバイスを識別します。HttpOnlyが設定されています。

StoreFrontはユーザーの状態を追跡するために他のいくつかのCookieを設定します。その中にはJavaScriptで読み取る必要があるためHttpOnlyが設定されていないものもあります。これらのCookieには、認証またはその他の機密情報に関連する情報は含まれていません。

クライアントがHTTPS経由で接続する場合、Cookieの作成または更新時にsecure属性を設定します。

追加のセキュリティ情報

注:

この情報は、予告なく変更される場合があります。

組織は、規制上の理由からStoreFrontのセキュリティスキャンを実行したい場合があります。前述の構成オプションは、セキュリティスキャンレポートの一部の検出事項を排除するのに役立ちます。

セキュリティスキャナーとStoreFrontの間にゲートウェイがある場合、特定の検出事項はStoreFront自体ではなくゲートウェイに関連している可能性があります。セキュリティスキャンレポートは通常、これらの検出事項(たとえば、TLS構成)を区別しません。このため、セキュリティスキャンレポートの技術的な説明は誤解を招く可能性があります。