セキュリティチームの97%は、自組織のエクスポージャーが実際に悪用可能かどうかを判断できていません。あなたのチームは大丈夫ですか?レポートを読む
Filigran
ソフトウェア開発脅威インテリジェンス

除外リストで誤検知インジケーターの作成を防止

8 分で読めます
Prevent false positive indicator creation with exclusion lists

誤検知インジケーターとの戦いは、脅威インテリジェンス分野における永続的な課題です。EDRアラートからのインジケーターが自動的に検知に送信されるのを防ぐにはどうすればよいでしょうか?これらの誤検知は無害ですが、セキュリティチームの作業を遅らせ、真の脅威への対処から注意をそらしてしまいます。
この問題を解決するために、信頼できるインジケーターのホワイトリストを作成することができます。このリストにより、CTIサービスはこれらの特定のインジケーターを無視し、アラートノイズを削減して、より効果的な監視を実現できます。
この記事では、除外リストの助けを借りて、OpenCTIがこのようなホワイトリストを使用して、これらの誤検知がプラットフォームに取り込まれるのを防ぐ方法について説明します。


除外リストのご紹介

OpenCTIは、プレイブックやエンリッチメントコネクターを通じて、プラットフォームに取り込まれたインジケーターを含むさまざまなタイプのデータを操作することをすでに可能にしています。しかし、このデータ操作は取り込み後に行われるため、インジケーターが安全とマークされる前に、自動的に検知に送信される可能性がありました。

この問題を解決するために、OpenCTIバージョン6.5では、新しいタイプの設定カスタマイズである除外リストが導入されました。

除外リストの仕組み

これらの除外リストにより、プラットフォームから完全に除外されるインジケーター値のリストを定義できます。これは、プラットフォームに送信されたインジケーターが除外リストのいずれかに含まれるインジケーター値と一致する場合、その作成が拒否され、インジケーターが全く取り込まれないことを意味します。

これらの除外リストは、現在、STIXパターンタイプを持つインジケーターという1つのタイプのインジケーターに適用されます。そして今のところ、特定の数のObservable値タイプのみが処理されます:ArtifactDomain-NameEmail-AddrHostnameIPv4-AddrIPv6-AddrStixFileUrlです。

Observable値タイプ(プライマリObservableタイプ)によって、マッチング機能が異なる場合があります:

  • IP除外リストの場合、190.168.0.1などの個別のIPを使用できます。ただし、IPレンジも互換性があります:例えば、192.168.0.0/28のIPレンジを除外することも可能です。
  • Domain-NameおよびUrl除外リストの場合、mydomain[.com](<http://google.com>)などの特定のドメイン名を使用できます。ただし、サブドメイン全体を除外することもできます:除外リストに.mydomain.comを設定すると、product.mydomain.cominfo.mydomain.comなど、このドメイン名を使用するすべてのサブドメインが除外されます。

その他のすべてのObservable値タイプの設定では、インジケーターの値と除外リストの値との間で完全一致が試みられます。

それでは、これらの除外リストの設定方法について詳しく見ていきましょう!

除外リストの作成

まず、設定とカスタマイズメニューに移動します。右側に「除外リスト」というタイトルの新しいメニューが表示されます。

この最初の画面では、既存のリストを明確で整理された形で表示するインターフェイスのメインビューを確認できます。

+ボタンをクリックして新しいリストを作成できます。

exclusion list page

除外リストページ

リストを作成する際には、以下のデータを提供できます:

  • 名前
  • 説明
  • インジケーターObservableタイプ:これは除外リストの内容に対応します
  • コンテンツ:トグルボタンを使用してファイルをアップロードするか、コンテンツをコピー/ペーストできます

前述したように、さまざまなインジケーターObservableタイプが可能です:

ArtifactDomain-nameEmail-AddrHostnameIpv4-Addripv6-AddrStixFileUrl

create an exclusion list

除外リストの作成

除外リストの管理

作成後、ステータスが処理中で、最終変更日が変更されたことがわかります。これは、新しい除外リストが作成されたものの、まだすべてのプラットフォームノードに伝播する必要があるためです。

exclusion list page during a rebuild

再構築中の除外リストページ

最終変更日現在のキャッシュバージョン日が最新になると、ステータスは再び同期済みに変わります。新しい除外リストの適用準備が整いました!

除外リストの一覧では、追加情報も確認できます:リストに含まれる行数、作成日、有効化ステータスです。

exclusion list page sync

同期済みの除外リストページ

除外リストでは、いくつかのオプションが利用可能です:

  • 削除:設定からリストを完全に削除したい場合
  • 有効化/無効化:リストの適用を一時的に停止するために使用できます
  • 編集:現在のリストを変更したい場合

また、すべての除外リスト値を含む生ファイルをダウンロードすることもできます。

exclusion list action group

除外リストアクションオプション

今後、インジケーターが作成されようとする際(ソースに関わらず:コネクター、フィードインジェスター、または手動)、そのパターンに除外リストに属するObservable値が含まれている場合、インジケーターはブロックされ、'Indicator of type stix is contained in exclusion list'というエラーメッセージが表示されます。

indicator creation error message

インジケーター作成エラーメッセージ

除外リストの編集

除外リストを変更したい場合は、編集ドロワーを開くことができます。ここで情報を変更し、除外リストの内容を編集できます(ファイルサイズが1M未満の場合)。

ファイルをアップロードをトグルすることで、ファイルを完全に変更することも可能です。

exclusion list update

除外リストの更新

リストの内容が更新された場合、ステータスは処理中となり、除外リストが伝播され、再同期されます。

パフォーマンスへの影響

設計段階において、データ取り込みのパフォーマンスとスループットへの影響を最小限に抑えることに重点を置きました。

除外リストの導入により、インジケーターを多数の除外値に対してチェックする可能性があるという新しいステップがデータ取り込みに追加されるため、すべてのインジケーターの取り込みが効率的なままであることを確認する必要がありました。

そのため、ファイルごとに許可される値の数に制限を設けました:除外リストは10Moのサイズを超えることができません。

さらに、除外リスト検証アルゴリズムの最適化に多くの時間を費やしました。その結果、同じ取り込みスループットを維持しながら、多数の除外値を設定できます。大量の除外リストを使用した広範なテストでは、200万の除外値があっても、チェックプロセスにかかる時間は1ms未満でした。

まとめ

除外リストの追加は、データの取り込み前操作への第一歩であり、誤検知を処理するための不可欠なツールです。

除外リスト機能を拡張するための複数の改善が検討されています。現在、インジケーターが除外リストと一致する場合、拒否されるのみです。インジケーターを拒否する機能に加えて、今後の更新では、取り込み前のラベル適用、通知の送信、またはその他の除外アクションの実装などのオプションが導入される可能性があります。このトピックに関するフィードバックをお聞かせください。

ご意見をお聞かせください。Slackコミュニティチャンネルにご参加ください!

この機能に関する技術的な詳細については、ユーザードキュメントをご確認ください。

続きを読む

関連トピックとインサイトをご覧ください