アプリケーションコントロール

Deep Security Agent 10.0以上を実行しているコンピュータのアプリケーションコントロールを有効にできます。アプリケーションコントロールがサポートされるOSのリストについては、「各プラットフォームでサポートされている機能」を参照してください。

アプリケーションコントロールは、保護対象サーバのソフトウェア変更を継続的に監視します。ポリシー設定に基づいて、アプリケーション制御は、許可されていないソフトウェアが明示的に許可されるまで実行されないようにしたり、許可されていないソフトウェアが明示的にブロックされるまで許可したりしないようにします。選択するオプションは、使用環境に必要なコントロールレベルに応じて異なります。

アプリケーションコントロールは、継続的にサーバを監視し、ソフトウェアの変更が生じるたびにイベントをログに記録します。これは、一部のWebサーバやメールサーバなど、自動的に変更されるソフトウェアを使用する環境や通常実行可能ファイルを作成する環境には向いていません。アプリケーションコントロールがお使いの環境に適しているかどうかを確認するには、「アプリケーションコントロールで検出されるソフトウェア変更」を参照してください。

アプリケーションコントロールの作成と設定は、Deep Security APIを使用して自動化できます。詳細については、 アプリケーションコントロールを参照してください。

主な概念

対象となる保護の状態: アプリケーションコントロールの設定時に必要な主な決定事項の1つに、対象となる保護の状態の決定があります。新規または変更されたすべてのソフトウェアについて、許可するように手動で指定するまで実行されないようにしますか。または、明示的にブロックするまで初期設定で実行しますか。はじめてアプリケーションコントロールを有効にしたときに、承認されていないソフトウェアが大量にある場合、承認されていないソフトウェアを最初に許可する方法があります。アプリケーションコントロールルールを追加して、承認されていないソフトウェアの量を減らすと、ブロックモードに切り替えることができます。

アプリケーションコントロールルール: ルールは、特定のコンピュータでのソフトウェアの許可またはブロックを指定します。

インベントリ: コンピュータにインストールされているソフトウェアの初期リストです。許可するソフトウェアのみをコンピュータにインストールするようにしてください。アプリケーション制御を有効にすると、現在インストールされているすべてのソフトウェアがコンピュータのインベントリに追加され、実行が許可されます。コンピュータがメンテナンスモードの場合、コンピュータに対するソフトウェアの変更がコンピュータのインベントリに追加され、実行されるようになります。コンピュータのソフトウェアインベントリリストはDeep Security Agentに格納されており、 Workload Security コンソールには表示されません。

承認されていないソフトウェア: コンピュータのインベントリに登録されておらず、アプリケーション制御ルールに該当しないソフトウェア。「アプリケーションコントロールで検出されるソフトウェア変更」を参照してください。

メンテナンスモード: ソフトウェアのインストールまたはアップデートを計画している場合は、メンテナンスモードを有効にすることを強くお勧めします。メンテナンスモードでは、 アプリケーションコントロール ルールによってブロックされたソフトウェアはブロックされますが、新規またはアップデートされたソフトウェアを実行してコンピュータのインベントリリストに追加できます。「変更の計画時にメンテナンスモードをオンにする」を参照してください。

アプリケーションコントロールの仕組み

以下の手順に対応するアプリケーションコントロールのフローチャート

  1. ポリシーでアプリケーションコントロールを有効にして、Deep Security Agentで保護されているコンピュータにこのポリシーを割り当てます (「アプリケーションコントロールを有効にする」を参照)。
  2. エージェントはポリシーを受信すると、コンピュータにインストールされているすべてのソフトウェアのインベントリを作成します。インベントリに記載されているすべてのソフトウェアは安全であるとみなされ、そのコンピュータで実行できるようになります。このインベントリリストは、 Workload Security コンソールからは表示されません。したがって、アプリケーション制御を有効にするコンピュータに適切なソフトウェアのみがインストールされていることを確認する必要があります。
  3. インベントリの作成後、アプリケーションコントロールでコンピュータのあらゆるソフトウェア変更が認識されます。ソフトウェア変更により、新しいソフトウェアがコンピュータに表示されたり、既存のソフトウェアに変更が加えられたりします。
  4. コンピュータがメンテナンスモードの場合、 Deep Security Agentはインベントリにソフトウェアを追加し、実行を許可します。この変更は、 Workload Security コンソールでは表示されません。「変更の計画時にメンテナンスモードをオンにする」を参照してください。
  5. 信頼されたインストーラによって変更が行われた場合、 Deep Security Agentはそのソフトウェアをインベントリに追加して実行します。たとえば、Microsoft Windowsがコンポーネントアップデートを自己始動する場合、数百の新しい実行可能ファイルがインストールされます。アプリケーション制御は、既知のWindowsプロセスによって作成された多くのファイル変更を自動的に承認し、 Workload Security コンソールにこれらの変更をリストしません。想定されるソフトウェア変更に関連する「ノイズ」を削除すると、注意が必要な変更を明確に確認できます。

    信頼済みのインストーラ機能はDeep Security Agent 10.2以上で利用可能です。

  6. コンピュータのルールセットに適切なソフトウェアのルールが含まれる場合、ソフトウェアは実行されるルールに従って許可またはブロックされます。「アプリケーションコントロールで検出されるソフトウェア変更」を参照してください。

  7. ソフトウェアがコンピュータのインベントリにない場合に、既存のルールで保護されていないソフトウェアは、認識されないソフトウェアとみなされます。コンピュータに割り当てられたポリシーでは、承認されていないソフトウェアの処理方法を指定します。ポリシー設定に応じて、実行が許可またはブロックされます。ソフトウェアがブロックされ、OSにエラーメッセージを表示できる場合、そのソフトウェアの実行が許可されない、またはアクセスが拒否されたことを示すエラーメッセージが保護対象のコンピュータに表示されます。

    認識されないソフトウェアは、 Workload Security コンソールの アプリケーションコントロール - ソフトウェアの変更 ページに表示されます。そのページで、管理者は[ Allow ]または[ Block ]をクリックして、特定のコンピュータ上のそのソフトウェアに対する許可ルールまたはブロックルールを作成できます。許可ルールまたはブロックルールは、ポリシーで指定された初期設定アクションよりも優先されます。「新規および変更済みソフトウェアを監視する」を参照してください。

アプリケーションコントロールインタフェースの紹介

Workload Security コンソールには、アプリケーションコントロールに関連する変更が表示される場所がいくつかあります。

アプリケーションコントロール: ソフトウェア変更 ([処理])

アプリケーションコントロール:ソフトウェアの変更 ページは、 Workload Security コンソールで Actions をクリックすると表示されます。すべての認識されないソフトウェア(コンピュータのインベントリにないソフトウェアで、対応するアプリケーション制御ルールがないソフトウェア)が表示されます。ソフトウェア変更はコンピュータレベルで許可またはブロックされるため、特定のソフトウェアを50台のコンピュータにインストールすると、この画面に50回表示されます。ただし、特定のソフトウェアをどこからでも許可またはブロックする必要があることがわかっている場合は、[ Actions ]画面をフィルタしてファイルハッシュごとに並べ替えてから、[ ] [すべての を許可]をクリックして、ソフトウェアがインストールされているすべてのコンピュータで許可することができます。インストールされました。

コンピュータに適用されるポリシーでは、承認されていないソフトウェアの実行を初期設定で許可またはブロックするかを指定しますが、[処理] 画面で [許可] または [ブロック] をクリックするまで、明示的なアプリケーションコントロールルールは作成されません。[許可] または [ブロック] をクリックすると、対応するルールがコンピュータのルールセットに表示されます。ルールセットは [アプリケーションコントロールルールセット] 画面に表示されます。

アプリケーションコントロールルールセット

アプリケーションコントロールルールセット

コンピュータのルールセットを確認するには、[ポリシー]→[共通オブジェクト]→[ルール]→[アプリケーションコントロールルールセット] に移動します。どのルールがルールセットの一部であるかを確認するには、ルールセットをダブルクリックし、[ ルール] [ ルール]タブに移動します。[ルール] タブには、ルールが関連付けられたソフトウェアが表示され、許可ルールをブロックルールに変更したり、ブロックルールを許可ルールに変更したりすることもできます。

セキュリティイベント

[イベント]→[レポート]→[イベント]→[アプリケーションコントロールイベント]→[セキュリティイベント] には、コンピュータで実行された承認されていないソフトウェア、またはブロックルールにより実行されないようにした承認されていないソフトウェアがすべて表示されます。このリストは、期間および他の基準によってフィルタできます。

イベント (集約イベント以外) ごとに、[ルールの表示] をクリックすると、ルールの許可とブロックを切り替えることができます。Deep Security Agent 10.2以上には、同じイベントが繰り返し発生した場合にログの量を減らすためのイベント集約ロジックがあります。

アプリケーションコントロールで検出されるソフトウェア変更

すべてのファイルを監視する変更監視とは異なり、アプリケーションコントロールで初期インストールの調査時と変更の監視時に確認されるのはソフトウェアファイルのみです。

ソフトウェアには次のものも含まれます。

  • Windowsアプリケーション (.exe、.com、.dll、.sys)、Linuxライブラリ (.so)、およびその他のコンパイルされたバイナリやライブラリ
  • Javaの.jarファイルと.classファイル、およびその他のコンパイルされたバイトコード
  • PHP、Python、シェルスクリプト、およびその他の実行時に変換またはコンパイルされるWebアプリやスクリプト
  • Windows PowerShellスクリプト、バッチファイル (.bat)、およびその他のWindows専用スクリプト (.wsf、.vbs、.js)

たとえば、WordPressとそのプラグイン、Apache、IIS、nginx、Adobe Acrobat、app.war、/usr/bin/sshは、いずれもソフトウェアとして検出されます。

アプリケーションコントロールは、ファイルの拡張子を確認してスクリプトかどうかを判定します。またLinuxでは、実行権限のあるファイルはスクリプトとみなされます。

Windowsコンピュータでは、ローカルのファイルシステム上の変更はアプリケーション制御によって追跡されますが、ネットワーク上の場所、CDまたはDVDドライブ、またはUSBデバイス上では変更されません。

アプリケーションコントロールはカーネル (Linuxコンピュータ) およびファイルシステムに統合されているため、ルートまたは管理者アカウントでインストールされたソフトウェアを含め、コンピュータ全体を監視する権限があります。監視対象は、ソフトウェアファイルに対するディスク上の書き込みアクティビティとソフトウェアの実行です。

Deep Security Agent 10と11におけるファイルの比較方法の相違点

Deep Security 10 Agentは、新規のソフトウェアやソフトウェアの変更を判定するために、最初にインストールされていたソフトウェアのSHA-256ハッシュ、ファイルサイズ、パス、およびファイル名を比較します (これらには「ファイルベース」のルールセットが使用されています)。Deep Security 11 (およびそれ以降の) Agentは、ファイルのSHA-256ハッシュおよびファイルサイズのみを比較します (これらには「ハッシュベース」のルールセットが使用されています)。Deep Security 11 (およびそれ以降の) Agentで作成されたルールでは、一意のハッシュおよびファイルサイズのみを比較するので、ソフトウェアファイルの名前変更または移動が実行された場合にも、ルールは引き続き適用されます。そのため、Deep Security 11 (およびそれ以降の) Agentを使用すると、処理の必要なソフトウェア変更の数が削減されます。

Deep Security 10 Agentは、Deep Security 11.0以降にアップグレードしない限り、引き続きファイルベースのルールセットを使用します。Agentをバージョン11.0以降にアップグレードすると、そのルールセットはハッシュベースのルールを使用するように変換されます。同じハッシュ値に対するファイルベースのルールが複数ある場合、それらのルールは1つのハッシュベースのルールに統合されます。統合されるルールが相互に競合する場合 (1つのルールがファイルをブロックし、もう1つがそのファイルを許可する場合)、新しいハッシュベースのルールは「許可」ルールになります。