本ヘルプセンターは英語版を翻訳したものです。また、一部には翻訳ソフトウエアにより機械的に翻訳した内容が含まれます。翻訳については順次対応しておりますが、最新の情報になっていない場合があります。最新の情報は英語版のページでご確認ください。表示言語は、画面右上の言語名をクリックして切り替えられます。
本ヘルプセンターの一部の記事には外部リンクが含まれています。万一リンク切れなどお気づきの点がございましたら、お手数ですが弊社サポート窓口までご連絡ください。
アプリケーションコントロールの信頼エンティティ
信頼エンティティは、 信頼ルールセットに割り当てられた 信頼ルール のプロパティに一致するソフトウェア変更を自動的に承認します。各信頼ルールには、ソフトウェア変更の自動承認のパラメータを定義する 信頼ルールのプロパティの種類 が1つ以上含まれています。
信頼エンティティ機能を使用すると、 Deep Security Agentでソフトウェア変更を事前に自動認証できるため、 Deep Security Managerに送信されるソフトウェア変更イベントの数を減らすことができます。たとえば、OSの定期的なアップデートを実行しているエージェントは、パッチを適用するたびに、いくつかの新しいソフトウェア変更を作成します。適切な信頼ルールを設定してそれらのAgentに適用すると、 Agentでソフトウェアの変更を自動承認できるため、 Deep Security Managerの [処理] タブから、またはアプリケーションコントロールのセキュリティイベントとして手動で管理する必要がなくなります。
信頼エンティティを使用してソフトウェアの変更を自動承認するには、信頼ルールを設定し、それらを信頼ルールセットに割り当て、信頼ルールセットの割り当てまたは割り当て解除必要があります。
信頼エンティティ機能で自動承認されないソフトウェア変更を許可またはブロックする方法については、「 アプリケーションコントロールルールセットの表示と変更」を参照してください。
このドキュメントでは、ソースはソフトウェア変更を作成するプロセスを指し、ターゲットはソフトウェア変更自体を指す場合に使用されます。
信頼ルールセットのAPIドキュメントを参照できます。
現在、一部の信頼ルールプロパティはサポートされるWindowsプラットフォームのエージェントにのみ適用され、Linuxではまだ使用できません。詳細については、Linuxの信頼ルールプロパティの制限を参照してください。
信頼ルールセット
信頼ルールセットは、1つ以上のユーザ設定の 信頼ルールで構成されます。 信頼ルールセットの割り当てまたは割り当て解除 を割り当てると、そのルールセットに含まれるルールが関連するワークロードに適用され、ルールプロパティの要件を満たすソフトウェアの変更が自動的に承認されます。
信頼ルールセットを作成する
新しい信頼ルールセットを作成するには、次のいずれかを実行します。
Deep Security Manager Policiesタブで次の操作を実行します。
-
[共通オブジェクト]→[ルール]→[アプリケーションコントロールルール]→[信頼エンティティ]に移動します。
-
[Trust Rulesets]セクションで、[新規]を選択します。
-
[新規ルールセット]ウィンドウで、新しいルールセットの名前と説明(オプション)を入力します。
-
リストから1つ以上の信頼ルールを選択して、信頼ルールセットに割り当てます。
-
[OK]を選択します。
割り当てたルールを含む信頼ルールセットが作成されます。
Deep Security Manager Computersまたは[ Policies ]タブで次の操作を実行します。
-
コンピューターまたはポリシーをダブルクリックします(または右クリックして[詳細]を選択します)。
-
[アプリケーションコントロール]に移動し、[設定] が [オン] または [継承 (オン)] に設定されていることを確認します。
-
[ 信頼ルールセット ]ドロップダウンリストで、[ 新規 ]を選択します。
-
[新規ルールセット]ウィンドウで、新しいルールセットの名前と説明(オプション)を入力します。
-
リストから1つ以上の信頼ルールを選択して信頼ルールセットに割り当て、[ 保存 ]を選択して、割り当てたルールを含む信頼ルールセットを作成します。
-
(オプション)新しい信頼ルールセットをコンピュータまたはポリシーに割り当てるには、[保存]を選択します。
信頼ルールセットを最初から作成する代わりに、[信頼エンティティの管理] 画面 ( [ポリシー]→[共通オブジェクト]→[ルール]→[アプリケーションコントロールルール]→[信頼エンティティ] ) の [複製] ボタンを使用して既存のルールセットのコピーを作成し、必要に応じて設定できます。
信頼ルールセットの割り当てまたは割り当て解除
信頼ルールセットを割り当てるには:
-
Deep Security Manager Computers or Policiesタブで、コンピュータまたはポリシーをダブルクリックします(または右クリックして[Details]を選択します)。
-
[アプリケーションコントロール]に移動し、[設定] が [オン] または [継承 (オン)] に設定されていることを確認します。
-
ドロップダウンリストから信頼ルールセットを選択します。
-
[保存]を選択します。
これで、選択した信頼ルールセットがコンピュータまたはポリシーに割り当てられました。
信頼ルールセットの割り当てを解除するには:
-
[共通オブジェクト]→[ルール]→[アプリケーションコントロールルール]→[信頼エンティティ] の順に選択し、信頼ルールセットを選択します。
-
右側に表示される [信頼ルールセットのプロパティ] 画面で、[割り当て] の横にある数字を選択します。
-
[割り当て先] ウィンドウで、コンピュータまたはポリシーを選択します。
-
コンピュータまたはポリシーウィンドウの [アプリケーションコントロール] タブで、[信頼するルールセット] ドロップダウンリストから [なし] を選択して、ルールセットの割り当てを解除します。
-
[保存]を選択します。
信頼ルールセットがコンピュータまたはポリシーに割り当てられていません。
信頼ルールセットを削除する
-
[共通オブジェクト]→[ルール]→[アプリケーションコントロールルール]→[信頼エンティティ]に移動します。
-
[Trust Rulesets]セクションで、削除するルールセットを選択し、[削除]を選択します。
-
[ルールセットの削除] 確認ウィンドウで、 [ OK ] を選択します。
信頼ルールセットが削除されます。
信頼ルールセットが現在コンピュータまたはポリシーに継承されているか、割り当てられている場合は、信頼ルールセットを削除できないことに注意してください。信頼ルールセットを削除するには、信頼ルールセットの割り当てまたは割り当て解除必要があります。
信頼ルール
信頼ルールには、 アプリケーションコントロールによって自動承認されるソフトウェアの変更を決定する1つ以上のプロパティが含まれます。信頼ルールのプロパティに一致するソフトウェアの変更は自動認証され、 Deep Security Managerでイベントが作成されることはありません。
空の信頼ルールプロパティはすべてワイルドカードとして扱われます。これにより、信頼ルールをカスタマイズする方法が自由になりますが、システムのセキュリティに影響する可能性もあります。システムのセキュリティを最大化し、不要なソフトウェアの変更が許可されないようにするには、信頼ルールを作成するときにできるだけ多くのプロパティを入力してください。信頼ルールがセキュリティに与える影響がよくわからない場合は、システムのセキュリティについて十分な知識がある人に確認するか、信頼ルールセットに追加する前にトレンドマイクロに問い合わせてください。
信頼ルールの種類
-
[ソースからの許可]ルールは、信頼されたアップデータまたはインストーラプロセスがシステムに新しいソフトウェアをインストールすることを許可します。信頼できるアップデータによって作成された承認済みの実行可能ファイルは、自動的に承認されます。このルールを使用するには、プロセスやインストーラなどのソースのプロパティをルールで指定する必要があります。さらに、パス属性を使用して、指定したディレクトリに許可されたソフトウェアのみを作成するようにプロセスを制限する必要があります。このルールを適用すると、[処理] 画面のソフトウェア変更イベントが最小限に抑えられます。[ソースから許可] ルールはソフトウェアの作成時に評価されるため、インストーラを実行する前に設定する必要があります。
-
[対象別に許可] ルールは、指定したプロパティに一致する実行可能ファイルの実行を許可します。ルールで指定するプロパティは、実行可能ファイルなど、対象のプロパティと一致する必要があります。このルールは実行時に評価されるため、[アラート] 画面でファイルのセキュリティイベントが検出された後に適用できます。
-
対象ルールでブロックすると、指定したプロパティに一致する実行可能ファイルが実行されなくなります。ルールで指定するプロパティは、実行可能ファイルなど、対象のプロパティと一致する必要があります。このルールは実行時に評価されるため、[アラート] 画面でファイルのセキュリティイベントが検出された後に適用できます。
[対象別にブロック] ルールは、 Deep Security Agent 20.0.0-3288以降でサポートされます。
-
[ソースから無視] ルールを使用すると、プロセスの除外が設定されます。これにより、指定されたプロセスは、アプリケーションコントロールによる監視を受けずに、指定されたディレクトリでソフトウェアを実行または作成できます。除外ルールが削除されると、除外はただちに解除されます。 [ソースルールで無視] でパスのみを指定した場合は、すべてのプロセスがそれらのディレクトリでソフトウェアを実行または作成できます。この場合、アプリケーションコントロールによる監視は行われません。このオプションは、アプリケーションコントロール検索によって一部のプロセスまたはパスとの互換性の問題 (パフォーマンスの問題や共有違反など) が発生している場合にのみ使用してください。[ソースから無視] ルールは、Workload Security APIを使用して作成されたすべてのグローバルルールよりも優先されます。グローバルルールの詳細については、「 共有ルールセットとグローバルルールセットを作成するためのAPIの使用」を参照してください。
[ソースから許可] ルールによってソフトウェアの変更が自動承認されるたびに、変更が発生したAgentのローカルインベントリにエントリが追加されます。これは、[ソースから無視] ルールでは発生しません。
Ignore by sourceルールで使用する場合、 プロセス名 プロパティは、 Deep Security Agent 20.0.0-3165以降でのみサポートされます。
信頼ルールを作成する
-
[共通オブジェクト]→[ルール]→[アプリケーションコントロールルール]→[信頼エンティティ]に移動します。
-
[信頼ルール]セクションで、[ 新規 ]を選択し、ドロップダウンリストから 信頼ルールの種類を選択します。
-
[新しいルール]ウィンドウで、新しいルールの名前と説明(オプション)を入力します。
-
[プロパティの追加] ドロップダウンリストからプロパティを選択して、新しいルールに追加します。
-
表示されたボックスにプロパティの値を入力します。
-
(オプション)この信頼ルールにプロパティを追加するには、手順4と5を繰り返します。
-
[OK] をクリックします。
新しい信頼ルールが作成され、信頼ルールセットに割り当てる準備ができました。
信頼ルールのプロパティ値の設定については、「信頼ルールのプロパティの種類」を参照してください。
信頼ルールを選択し([Policies]→[共通オブジェクト]→[ルール]→[アプリケーションコントロールルール]→[信頼エンティティ]の順に選択)、 割り当て/割り当て解除を使用して、どの信頼ルールセットを含めるかを選択します。これは、すばやく割り当てる場合に特に便利です。または、多数のルールセットにまたがる新しいルールの割り当てを解除します。
信頼ルールのプロパティを変更する
-
Deep Security Manager Trust Entities タブ(ポリシー>共通オブジェクト>ルール> アプリケーションコントロール ルール> Trust Entities)から、ルールを選択し、 Edit を選択します(またはルールをダブルクリックします)。
-
[ルールの編集]画面で、次のいずれかを実行します。
-
新しいプロパティを追加するには、 プロパティの追加 ドロップダウンリストからプロパティを選択し、その値を入力します。
-
既存のプロパティを編集するには、そのテキストフィールドの値を変更します。
-
既存のプロパティを削除するには、[削除]を選択します。
-
-
[OK] をクリックします。
信頼ルールを削除する
-
Deep Securityから信託団体タブ (ポリシー>共通オブジェクト>ルール>アプリケーションコントロールルール>信頼エンティティ)、ルールを選択して選択します消去。
-
[OK] をクリックして削除を確認します。
いずれかの信頼ルールセットに現在割り当てられている信頼ルールを削除すると、警告メッセージが表示された後、自動的に割り当てが解除されます。
信頼ルールのプロパティの種類
信頼ルールに含まれるプロパティと値は、そのルールによって自動承認されるソフトウェア変更を定義します。次のセクションでは、信頼ルールの設定に使用できる信頼ルールのプロパティの種類について、プロパティ値の設定に必要な情報を見つけるための手順を含めて説明します。
プロセス名
[信頼ルールの種類] ルールで使用する場合、プロセス名プロパティはDeep Security Agent 20.0.0-3165以降でのみサポートされます。
このプロパティは、ソフトウェア変更を作成するプロセスの名前を指定します。プロセス名には、ファイル名を含むプロセスの絶対パスを使用する必要があります。
ソフトウェア変更のプロセス名を確認するには
-
Deep Security ManagerのActionsタブに移動します。
-
ソフトウェア変更を検索して選択します。
プロセスは、その他の詳細とともに、右側の [変更者プロセス] の下に表示されます。
Deep Security Agentでは、プロセス名にワイルドカードが使用されます。プロセス名にプロセスへのフルパスが含まれる場合:
- パス内のグロブスター**
が、プロセス名内の任意の数の追加文字と一致します。 - グロブスター**
は、プロセス名に含まれる任意の数の追加文字と一致します。 - 単一のアスタリスクまたはアスタリスク*
は、現在のディレクトリのみの任意の数の追加文字に一致します。 - ?
単一の文字に一致します。
*
文字は、ディレクトリパスの区切り文字 ( /
および\
) で検索を停止します。 ?
文字がディレクトリパスの区切り文字と一致しません。ドライブ文字は、ターゲットパス内の他の文字と同じように扱われ、照合に特別な意味はありません。
パス
このプロパティは、信頼ルールに適用される対象パスを指定します。このプロパティに入力されたパス内にソフトウェアの変更が加えられた場合、アプリケーションコントロールは、すべてのサブディレクトリとファイル名を含むソフトウェアの変更を自動的に承認します。セミコロンで区切って複数のパスを設定できます。例: C:\Windows\;C:\Program Files\
パスの値を入力するときは、パスの最後のスラッシュ(\
または /
)がどのディレクトリに含まれるかを考慮してください。
スラッシュで終わるパスは、そのフルパスの下にあるすべてのサブディレクトリに一致します。たとえば、
C:\Windows\System\
は、System
ディレクトリ内のすべてのサブディレクトリに一致します。最後のスラッシュの後に指定された値は正規表現のワイルドカードとして扱われ、特定のディレクトリ、および同じ値で始まる他のディレクトリと一致します。たとえば、
C:\Windows\System
には、「C:\Windows\System*」に一致するすべてのディレクトリとサブディレクトリが含まれます。これには、C:\Windows\System\
、C:\Windows\System32\
、C:\Windows\SystemApps\
などがあります。
Deep Security Agentバージョン20.0.0-5137以降では、グロブスター (**
) ワイルドカードがサポートされます。パスにグロブスター **
を使用すると、現在のディレクトリおよびそのサブディレクトリ内の任意の数の追加文字と一致し、1つのアスタリスク (*
) は現在のディレクトリ内の任意の数の追加文字とのみ一致し、疑問符 (?
) は1つの追加文字と一致します。ドライブ文字またはドライブ区切り文字 ( /
または\
) は、ターゲットパス内の他の文字と同じように扱われ、スラッシュ ( /
) またはバックスラッシュ ( \
) で停止する*
を除き、照合に特別な意味はありません。
SHA-256
ソースからの許可ルールで使用する場合、ソフトウェア変更を作成するソースプロセスのチェックサム (SHA-256) を指定します。 [対象による許可] ルールで使用する場合は、ソフトウェア変更自体のチェックサム (SHA-256) になります。
SHA256を見つけるには、次のいずれかを実行します。
Windows PowerShellから(ソースまたはターゲットの場合):
Windows PowerShellコマンドのGet-FileHashの手順に従います。
Deep Security Managerの(ターゲットのみ):
Deep Security ManagerのActionsタブで、ソフトウェア変更を見つけて選択します。
SHA256は、その他の詳細とともに右側のSHA256の下に表示されます。
ベンダ
このプロパティは現在Windowsでのみサポートされており、ソフトウェアのベンダを指定します。
ベンダを見つけるには、次のいずれかを実行します。
ファイルエクスプローラから:
プロセスまたはファイルを含むディレクトリから、ファイルエクスプローラーの上部に表示されるプロパティ(名前、変更日など)のいずれかを右クリックし、[ 詳細]を選択します。
[会社名] を選択し、[OK] をクリックします。
ベンダーが[ファイルエクスプローラ]ウィンドウに表示されます。
Deep Securityから:
Deep Security ManagerのActionsタブで、ソフトウェア変更を見つけて選択します。
ベンダーは、その他の詳細とともに、右側の [ベンダー] の下に表示されます。
製品名
このプロパティは、現在Windowsでのみサポートされており、ソフトウェア製品名を指定します。
製品名を確認するには、次のいずれかを実行します。
ファイルのプロパティから:
ファイルを含むディレクトリで、プロセスまたはファイルを右クリックし、[プロパティ]を選択します。
[詳細] タブで、[製品名] の値を確認します。
ファイルエクスプローラから:
ファイルが格納されているディレクトリで、ファイルエクスプローラの上部に表示されるプロパティ (名前、変更日など) のいずれかを右クリックし、 [その他] をクリックします。
[製品名] を選択し、[OK] をクリックします。
製品名が [製品名] 列に表示されます。
Deep Securityから:
Deep Security ManagerのActionsタブで、ソフトウェア変更を見つけて選択します。
製品名は、その他の詳細とともに [製品名] の右側に表示されます。
署名者名
[ソースから許可] ルールで使用する場合、ソフトウェア変更を作成するソースプロセスの署名者名を指定します。[対象別に許可] ルールで使用する場合は、対象ファイルに署名した証明書の署名者名になります。
このプロパティは現在Windowsでのみサポートされており、ソフトウェア証明書に署名した会社の名前を指定します。
証明書署名者名を確認するには
プロセスまたはファイルを右クリックし、プロパティを選択します。
[デジタル署名] タブの [署名リスト] で署名者の名前を探します。
[署名者名] に署名者名が表示されます。
ソフトウェア変更イベントまたはセキュリティイベントの最大数を除外するには、署名者名ルールプロパティを使用して、特定の署名者からのすべてのイベントを照合します。
発行者の一般名
このプロパティは現在Windowsでのみサポートされており、署名するソフトウェア証明書の発行者の共通名 (CN) を指定します。
発行者の一般名を確認するには、次の手順に従います。
プロセスまたはファイルを右クリックし、 [プロパティ] をクリックします。
[デジタル署名] タブで、[署名] リストに最初に表示される証明書を選択します。
証明書を選択し、[詳細] をクリックします。
[証明書を表示]を選択します。
[詳細] タブに移動し、[発行者] を選択します。
証明書に発行者のCNが含まれている場合は、[発行者] の下に表示されます。
発行者の組織単位
このプロパティは現在Windowsでのみサポートされており、ソフトウェア証明書の発行者の組織単位 (OU) を指定します。
発行者の組織単位を見つけるには
プロセスまたはファイルを右クリックし、プロパティを選択します。
[ デジタル署名 ]タブで、署名リストに表示される最初の証明書を選択します。
証明書を選択し、[詳細] をクリックします。
[証明書を表示] をクリックします。
[詳細] タブに移動し、[発行者] を選択します。
証明書に含まれている場合は、発行者のOUが表示されます。
発行者の組織
このプロパティは現在Windowsでのみサポートされており、ソフトウェア証明書の発行者組織 (O) を指定します。
発行元の組織を確認するには
プロセスまたはファイルを右クリックし、 [プロパティ] をクリックします。
[ デジタル署名 ]タブで、署名リストに表示される最初の証明書を選択します。
証明書を選択し、[詳細] をクリックします。
[証明書を表示] をクリックします。
[詳細] タブに移動し、[発行者] を選択します。
証明書に含まれている場合は、発行者Oが表示されます。
発行者の地域
このプロパティは、現在Windowsでのみサポートされており、ソフトウェア証明書の発行者の地域 (L) を指定します。
発行元の場所を確認するには
プロセスまたはファイルを右クリックし、 [プロパティ] をクリックします。
[ デジタル署名 ]タブで、署名リストに表示される最初の証明書を選択します。
証明書を選択し、[詳細] をクリックします。
[証明書を表示] をクリックします。
[詳細] タブに移動し、[発行者] を選択します。
証明書に含まれている場合は、発行者Lが表示されます。
発行者の都道府県
このプロパティは現在Windowsでのみサポートされており、ソフトウェア証明書の発行者の都道府県 (S) を指定します。
発行者の都道府県を確認するには
プロセスまたはファイルを右クリックし、 [プロパティ] をクリックします。
[ デジタル署名 ]タブで、署名リストに表示される最初の証明書を選択します。
証明書を選択し、[詳細] をクリックします。
[証明書を表示] をクリックします。
[詳細] タブに移動し、[発行者] を選択します。
証明書に含まれている場合は、発行者Sが表示されます。
発行国
このプロパティは現在Windowsでのみサポートされており、ソフトウェア証明書の発行元の国 (C) を指定します。
発行国を確認するには:
プロセスまたはファイルを右クリックし、 [プロパティ] をクリックします。
[ デジタル署名 ]タブで、署名リストに表示される最初の証明書を選択します。
証明書を選択し、[詳細] をクリックします。
[証明書を表示] をクリックします。
[詳細] タブに移動し、[発行者] を選択します。
証明書に含まれている場合は、発行者Cが表示されます。
アプリケーションコントロールイベントの集約と分析
サーバ上の動的ソフトウェアアップデートにより、何千ものドリフトイベント ( [処理] 画面) やセキュリティイベント ( [アプリケーションコントロールイベント] 画面) が発生する可能性があります。これは、事後に何を承認するかを判断するのが難しいため、アプリケーションコントロールを使用する際の課題となります。 Deep Security Agent 20.0.0.5761以降を使用している場合にこの状況を軽減するには、異常なドリフトイベントとセキュリティイベントのみを表示する信頼ルールを作成します。これにより、サーバをロックダウンして、不正なソフトウェアの実行を防ぐこともできます。
ドリフトイベントは、プロセス名とターゲットパスに基づいて集計されます。セキュリティイベントは、SHA256ハッシュと対象パスに基づいて集計されます。たとえば、同じプロセスで同じパスに10,000個のドリフトアイテムが作成された場合、そのドリフトは、 processName
属性とpaths
属性を持つ1つの信頼ルールに集約されます。
エージェントの診断が要求されると、集約されたドリフトイベントとセキュリティイベントが信頼ルール形式でJSONファイルに保存され、診断に含まれます。信頼ルールエディタはこのJSONファイルを使用して、サーバの信頼ルールを追加できます。
ドリフトイベント
JSON形式のドリフトイベントには、次の属性があります。
{"time":1615999592250,"eventType":"ApplicationControl","uid":1063,"gid":1064,"operationType":"create","user":"ribapp","group":"ribapp", "md5":"57579EF7681147B84774F69F44783A67","sha256":"90B0418DCB3B29440EE6F69FEE05BD54265CEE3BCFABDA8ED355E257FECC2939", "processName":"/opt/IBM/WebSphere/AppServer/java/jre/bin/java","type":4,"rdev":0,"lastModificationTime":1615999090000,"mode":33188,"size":3984617, "sha1":"B226BDB9DB39AD38C4BEB6FE4F1C1C7151207848","nlink":1,"procUser":"ribapp","isAuthorized":1,"pid":10223,"fileExtension":"jar", "operationDate":1615999591534,"procUid":1063,"procGroup":"ribapp","path":"/opt/IBM/WebSphere/AppServer/profiles/devmiesAppSrv/installedApps/devdmrhx01-cell02/IESHSRIDEVM.ear/","fileName":"DC.jar","recordTime":1615999592215,"fileSystemType":"ext4","procGid":1063,"dev":64775,"source":4,"ino":3801778}
processName
は、対象ファイルを作成またはアップデートしたプロセスの名前です。前の例では、/opt/IBM/WebSphere/AppServer/java/jre/bin/java
に設定されています。path
は、プロセスが実行可能ファイルをアップデートまたは作成した場所です。前述の例では、/opt/IBM/WebSphere/AppServer/profiles/devmiesAppSrv/installedApps/devdmrhx01-cell02/IESHSRIDEVM.ear/
に設定されています。
ドリフトイベントの信頼ルール
イベントのドリフトを自動承認する信頼ルールを作成できます。このルールに対してtrustType
を 1 に設定することで、信頼できるアップデータを定義できpaths
。
"trustrules": [{ "trustType":"1", "processName":"/opt/IBM/WebSphere/AppServer/java/jre/bin/java", "paths":"/opt/IBM/WebSphere/AppServer/profiles/devmiesAppSrv/installedApps/devdmrhx01-cell02/IESHSRIDEVM.ear/" }, ]
信頼ルールを作成するためのドリフトイベントの処理は、多対1の操作になる場合があります。たとえば、 /opt/IBM/WebSphere/AppServer/java/jre/bin/java
という名前のプロセスがパス/opt/IBM/WebSphere/AppServer/profiles/devmiesAppSrv/installedApps/devdmrhx01-cell02/IESHSRIDEVM.ear/
に数千のJARファイルを作成した場合、前述の信頼ルールによってこれらすべてのJARファイルのドリフトが排除されるため、信頼ルールはドリフトを効率的に集計できます。
信頼ルールは、ルールごとに1つの一意のプロセスを含むルールの配列で構成されます。各信頼ルールのpaths
属性には、複数のパスを定義できます。たとえば、 process1
という名前のプロセスが、 path1
、 path2
、 path3
の3つの異なる場所でドリフトを作成した場合、1つの信頼ルールで、次のすべての場所でprocess1
によって作成されたすべてのドリフトを取得できます。
"trustrules": [{ "trustType":"1", "processName":"process1", "paths":"path1;path2;path3" }, ]
プロセスのヒットカウントを目的としたhitcount
という追加の属性があります。この属性を使用して、特定の信頼ルールにヒットした回数を確認できます。
拡張子のヒットカウントもあります。拡張子は、プロセスが特定の拡張子を持つファイルを更新するたびに増分することによって追跡されます。
"trustrules": [{ "trustType":"1", "processName":"process1", "paths":"path1;path2;path3", "hitcount":12342, ".jar":1234, ".py":323, ".":456 }, ]
前述の例では、JARファイルが1234回、piファイルが323回、拡張子のないファイルが456回更新されたプロセスを示しています。
セキュリティイベント
JSON形式のセキュリティイベントには、次の属性があります。
"{time":1492100772165,"eventType":"ApplicationControl","sha1":"066A02D230F3B16439396B049DC 912DB376B96CE","fileName":"svchost.exe","operationType":"detectOnly","blockReason":2,"size":31 1544,"sha256":"62EFB22F6853D73374761A0B8ED2CE40BF09AA401EC7D4AAAA0CE4D5C3380EEA","type":1, "path":"C:\\Windows\System32\\","pid":1832,"operationDate": 1492100772149,"processName":"\\device\\harddiskvolume2\\windows\\system32\\cmd.exe","md5": "5F7B8544F7A20800069107FC93384F0E"}, {"time":1492100772165,"eventType":"ApplicationControl","blockReason":2,"sha256":"62EFB22F6 853D73374761A0B8ED2CE40BF09AA401EC7D4AAAA0CE4D5C3380EEA","size":311544,"processName":"\\de vice\\harddiskvolume2\\windows\\system32\\cmd.exe","sha1":"066A02D230F3B16439396B049DC912D B376B96CE","operationType":"detectOnly","pid":1832,"md5":"5F7B8544F7A20800069107FC93384F0E ","path":"C:\\Program Files\\Trend Micro\\Deep Security Agent\\","operationDate":149210077}
前の例では、 sha256
が62EFB22F6853D73374761A0B8ED2CE40BF09AA401EC7D4AAAA0CE4D5C3380EEA
に設定され、 path
がC:\\Windows\System32\\
に設定されています。
セキュリティイベントの信頼ルール
セキュリティイベントのドリフトを自動承認する信頼ルールを作成できます。 SHA256ハッシュに基づいて、次のいずれかのpaths
で、このルールのtrustType
を2に設定することで、信頼できる対象を定義できます。
"trustrules": [{ "trustType":"2", "sha256":"62EFB22F6853D73374761A0B8ED2CE40BF09AA401EC7D4AAAA0CE4D5C3380EEA", "paths":"C:\\Windows\System32\\" }, ]
セキュリティイベントを処理して信頼ルールを作成する作業は複雑です。信頼ルールは、ルールごとに1つの一意のSHA256を含むルールの配列で構成されます。各信頼ルールのpaths
属性には、複数のパスを定義できます。たとえば、異なる場所path1
、 path2
、 path3
からsha256
コンテンツハッシュAAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDD
を使用してファイルが実行された場合、1つの信頼ルールでこれを次のように表すことができます。
"trustrules": [{ "trustType":"2", "sha256":"AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDD", "paths":"path1;path2;path3" }, ]
SHA256ヒットカウントを目的としたhitcount
という追加の属性があります。この属性を使用して、特定の信頼ルールにヒットした回数を確認できます。
ファイル名のヒット数もあり、異なる名前のファイルが同じSHA256コンテンツハッシュを持つことができます。この属性を使用して、特定の名前のファイルが使用されて同じSHA256が実行された回数をカウントできます。次の例では、SHA256 AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEE
が12342回実行され、 filename1
が2342回使用され、 filename2
が10000回使用されています。 filename1
とfilename2
のコンテンツハッシュは同じです。
異なる名前のプロセスでも同じSHA256コンテンツハッシュを使用して同じターゲットを実行できるため、プロセス名が使用されて同じSHA256が実行された回数もカウントできます。次の例では、SHA256 AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEE
が12342回実行され、 filename1
が2342回使用され、 filename2
が10000回使用されています。 filename1
とfilename2
のコンテンツハッシュは同じです。プロセス名/opt/process1
/process1はターゲットの12000回の実行に使用され、 /opt/process2
はターゲットの342回の実行に使用されました。
"trustrules": [{ "trustType":"2", "sha256":"AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEE", "paths":"path1;path2;path3", "hitcount":12342, "filename1":2342, "filename2":10000 "/opt/process1":12000, "/opt/process2":342 }, ]
プロセスは絶対パスで表され、ファイル名はいずれかのパスへの相対パスで表されることに注意してください。
イベント分析出力
アプリケーションコントロールのイベント分析出力は、 ac_event_analysis.txt
というファイルに送信されます。このファイルには、追加のヒットカウント属性と拡張子ヒットカウント属性を含む信頼ルール形式があります。
trustrules": [{ "trustType":"1", "processName":"process1", "paths":"path11;path12;path13", "hitcount":12342, ".jar":12342 } { "trustType":"1", "processName":"process2", "paths":"path21;path22;path23", "hitcount":23232, ".py":23232 } { "trustType":"1", "processName":"process3", "paths":"path31;path32;path33", "hitcount":34332, ".exe":34322 } { "trustType":"1", "processName":"process4", "paths":"path41;path42;path43", "hitcount":12312, ".":12312 }, ]
ファイルの場所は次のとおりです。
- Windowsの場合:
C:\ProgramData\Trend Micro\Deep Security Agent\diag\ac_event_analysis.txt
- Linuxの場合:
/var/opt/ds_agent/diag/ac_event_analysis.txt
- 診断ファイル:
agent/ac/ac_event_analysis.txt
分析は再起動時にこのファイルからロードされるため、Agentの再起動後もその状態が維持されます。アプリケーションコントロールを無効にしてから有効にすると、分析はクリアされます。 ac_event_analysis.txt
ファイルを表示するには、 JQまたはオンラインのJSON formatterを使用します。
信頼ルールのデバッグ
信頼ルールは次のようにデバッグできます。
- Deep Security Managerに新しい信頼ルールを適用します。
- Deep Security Agentを停止します。
ac_event_analysis.txt
ファイルを削除します。- Deep Security Agentを起動します。
- しばらく待って、
ac_event_analysis.txt
ファイルが再表示されるかどうかを確認します。- ファイルが表示されなくなった場合は、信頼ルールが機能しており、イベントの生成が抑制されています。
- ファイルが引き続き表示される場合は、
ac_event_analysis.txt
ファイルで新しいイベント情報を確認し、必要に応じて新しい信頼ルールを追加します。信頼タイプ1のルールは、ドリフトイベントを自動承認するためのソースルールによる許可であり、信頼タイプ2のルールは、対象ファイルの実行を許可するための対象ルールによる許可です。
- 新しい信頼ルールを設定するには、手順1からの手順を繰り返します。
信頼ルールがヒットする頻度を確認するには、次のようにAgentでsendCommand
を実行します。
- Linux:
/opt/ds_agent/sendCommand --get TrustRules
- Windowsの場合:
\program files\trend micro\deep security agent\sendCommand --get TrustRules
コンサルト指標
ドリフト分析とイベント分析がアプリケーションコントロールのメトリクスに追加されました。ここでは、ヒット数の多い上位10件のプロセスがdrift_analysis
オブジェクトに格納され、SHA256件数の多い上位10件がevent_analysis
オブジェクトに格納されます。
"AC": { "eventReportInQueue":"0", "evtPreCreateProcessHandled":"17", "acProcessHashCount":"0", "acProcessBlockUnrecognized":"0", "engFlushDbBufferError":"0", "acFileProcessImgPath":"0", "evtFilePostClose":"249", "acFileErrorHash":"0", "acFileAllowImportingRuleset":"0", "evtFilePreCreateFromContainer":"0", "evtFilePostChmodFromContainer":"0", "engStopError":"0", "evtFilePreCreateHandled":"0", "ctrlInterpreterMatched":"0", "engPurgeDb":"0", "importCount":"0", "inventoryAdsVisited":"0", "engGetInventory":"1", "acFileAllow":"5", "acFileAllowBuilding":"0", "engSetConfigError":"0", "ctrlMsiInstallationMatched":"0", "ctrlDropProcessEvtReportQueueFull":"0", "importFail":"0", "eventReportDropped":"0", "evtFilePostChmod":"3", "acFileBlock":"0", "acFileDrift":"3", "engGetMetricsError":"0", "ctrlDropFileEvtReportQueueFull":"0", "inventoryFolderVisited":"0", "engStartError":"0", "evtFileCloudFileIgnore":"0", "engSetConfig":"1", "engFlushDbBuffer":"0", "engPurgeDbError":"0", "inventoryBytesInventoried":"433695822", "evtPreCreateProcessWithCmdLine":"0", "inventoryDriveVisited":"0", "importSuccess":"0", "engSetRuleset":"0", "eventReportSent":"3", "drift_analysis": [ { "trusttype":"1", "processName":"/usr/bin/bash", "hitcount":2, "paths":"/im1" }, { "trusttype":"1", "processName":"/usr/bin/cp", "hitcount":1, "paths":"/im1" } ], "event_analysis": [ { "trusttype":"2", "sha256":"AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEE", "hitcount":2, "paths":"/im1" }, { "trusttype":"2", "sha256":"EEEEEEEEEDDDDDDDDDCCCCCCCCBBBBBBBBAAAAAAAA", "hitcount":1, "paths":"/im1" } ],
署名者情報の表示
信頼ルールを有効にすると、ドリフトイベント分析の信頼ルールにファイル署名者情報とプロセス署名者情報の両方が含まれます。セキュリティイベント分析のために、ファイルの署名者情報が含まれます。
信頼エンティティルールセットがホストに適用されると、信頼ルールが有効になります (ファイル署名者情報とプロセス署名者情報はac_event_analysis.txt
ファイルに表示されます)。
Linuxの信頼ルールプロパティの制限
Linuxで現在サポートされていない信頼ルールを追加すると、ルールはソフトウェアの変更に適用されなくなります。
次のトラストルールのプロパティは、現在Linuxではサポートされていません。
- 署名者名
- 製品名
- 発行者の一般名
- 発行者の組織単位
- 発行者の組織
- 発行者の地域
- 発行者の都道府県
- 発行国
- ベンダ
Linuxでは現在、次の信頼ルールのプロパティのみがサポートされています。
- プロセス名
- パス
- SHA-256