2020-02-13 07:31 PM 2024-02-27 05:20 PM 更新
侵入検知防御(IPS)のため利用する Intrusion Policyでは、システムが提供する以下のルールセットを ベースポリシーレイヤーに利用可能です。
・Connectivity Over Security
・Balanced Security and Connectivity
・Security Over Connectivity
・No rules Active
・Maximum Detection (注意! 実環境では利用しないこと)
本ドキュメントでは、各ルールセットの違いや 導入・運用におけるベストプラクティスを紹介します。本ドキュメントは、Firepower System バージョン 6.4.0.7を元に確認、作成しております。
Cisco Talosは 最新の脅威や脆弱性に対応するため Snort Rule Updates (SRU) をリリースしています。また、Cisco Talosは、セキュリティやパフォーマンス要件など一定のクライテリアや状況に応じて、どのルールセットにルールを有効化するか事前定義し、逐次更新しています。
そのため、Cisco Talosの定義したシステム提供のルールセットを利用することで、簡単に保護対象のシステムのセキュリティやパフォーマンスに応じたルール適用が可能となります。
主に利用するシステム提供のルールセットは以下 3つ"のみ"です。
・Connectivity Over Security (略称: Connectivity)
・Balanced Security and Connectivity (略称: Balanced)
・Security Over Connectivity (略称: Security)
以下のメトリックをベースに、Cisco Talosによる調整が加えられ、各ルールセットで有効になるルールが決定されます。以下のクライテリアと ルールカテゴリは、OR 条件です。例えば Balancedの場合、CVSSスコアが9以上の 3年以内の脆弱性、もしくは カテゴリがMALWARE-CNC、BLACKLIST、SQL-INJECTION、EXPLOIT-KITのルールがベースになります。
ルールセット | CVSSスコアとAge | 追加のルールカテゴリ | 説明 |
Connectivity Over Security (略称: Connectivity) |
CVSSスコア 10 で 3年以内 (例:2020,2019.2018) |
- | セキュリティよりもパフォーマンスを優先したい場合向け。特に重要・有名な脅威の検知に対応 |
Balanced Security and Connectivity (略称: Balanced) |
CVSSスコア 9以上 で 3年以内 (例:2020,2019.2018) |
MALWARE-CNC rules EXPLOIT-KIT rules SQL Injection rules Blacklist rules |
デフォルト設定で推奨。セキュリティとパフォーマンスの両方に優れているバランスの良いルールセット |
Security Over Connectivity (略称: Security) |
CVSSスコア 8以上 で 4年以内 (例:2020,2019.2018,2017) |
MALWARE-CNC rules App-detect rules |
特に強固な保護が必要な環境向けに設計されたルールセット。通信量が少ないが、強固な保護が必要な環境向け。False Positive発生リスクは上昇 |
以下は、各ルールセットのパフォーマンスやセキュリティと、2020年2月現在(2020-02-11-001-vrt)の実際に有効なルール数の比較です。
ルールセット | パフォーマンス | セキュリティ | False Positive 発生リスク |
有効ルール数 (2020年2月時) |
Connectivity Over Security (略称: Connectivity) |
高い | 低い | ほぼなし | 518 |
Balanced Security and Connectivity (略称: Balanced) |
中 | 中 | 低い | 11343 |
Security Over Connectivity (略称: Security) |
低い | 高い | 高い | 17434 |
Balancedが パフォーマンスとセキュリティのバランスのとれたルールセットとなり、特に初回導入時はまずは当ルールセットの利用が推奨されます。Connectivityや Securityは、保護対象のシステムのセキュリティやパフォーマンス要件に応じて適宜利用するか検討がお勧めです。
システム提供のルールセットはレイヤーの最も下部の ベースポリシーに利用されます。ベースポリシーのみ通信に適用することもできれば、ベースポリシーの上に ユーザー定義のレイヤー設定をすることも可能です。ルール設定は より上位レイヤーの設定が優先され上書き・適用されます。
ポリシーレイヤーについて詳しくは、以下ドキュメントを参照してください。
Firepower Policy Layerの考え方 ( Base Policy Layer と User Layer)
https://community.cisco.com/t5/-/-/ta-p/3303214
低速なネットワークでハイパフォーマンスな機器を導入できるような特殊な場合を除き、多くの場合 導入するシステムの処理能力には限りがあります。そのため、保護対象のセグメントや通信に求められるセキュリティやパフォーマンス、通信要件に応じて、柔軟にルールセットを適用し分けることで パフォーマンスとセキュリティ両方の最適化が可能になります。
例えば以下は、保護対象のセグメントや通信毎のベースポリシーの適用例です。
[適用例]
・一般社員が利用するセグメントは Balanced を利用
・特に保護の必要なセグメントにのみ Security を利用
・ゲストネットワークや パフォーマンスが求められる環境は Connectivity を利用
・外部(非信頼)から内部への通信はセキュリティを強化する
・VPNやバックアップ通信など大容量で検査が不要or困難な通信は、検査除外し、Prefilter もしくは Trustで許可 (※)
・SNMP監視やルーティングアップデートなど 信頼されたIP間の止めたくない通信は、検査除外し、Prefilter もしくは Trustで許可(※)
※Trustよりも、PrefilterのFastpathでの許可のほうがパフォーマンスに優れます。Prefilterについて詳しくはコチラ
IPSポリシーは Variable Sets を参照し、どの宛先IPやポートが保護対象か判別します。不要なInspection(検査)の発生による負荷増大や、不要なFalse Positiveの発生を避けるために、特に以下の Variable Set を適切な値に設定しましょう。結果、パフォーマンス向上にもつながります。
HOME_NET ・・・・ 保護対象のセグメントを定義
EXTERNAL_NET ・・・ デフォルト(any) もしくは HOME_NET除外 のどちらかを定義 (※)
※HOME_NETを除外すると検査対象が減りパフォーマンス上優れるが、内部からの攻撃(つまりHOME_NETからHOME_NETへの攻撃)の検知が困難に
各Variable Sets は Objects > Object Management > Variable Set から設定変更可能です。例えば以下画像の場合、デフォルトのVariable Setの HOME_NETに 10.0.0.0/8と 1.0.0.0/8を定義し、EXTERNAL_NETに any (デフォルト) を定義しています。
なお、上記以外にも様々なチューニング可能な項目がVariable Setsにはあり、チューニングをする事でシステムの最適化が可能です。Variable Setsの詳細説明と各設定項目のチューニング必要有無について詳しくは、利用バージョンの設定ガイドを参照してください。例えば以下は Firepower System 6.4の設定ガイドのリンクです。
https://www.cisco.com/c/en/us/td/docs/security/firepower/640/configuration/guide/fpmc-config-guide-v64/reusable_objects.html#ID-2243-00000521
Firepower System は Network Discovery機能を用いて、攻撃対象のVictimの利用IPアドレスやName、アプリケーションやOSなどの情報を動的に学習することができます。学習した情報は、侵入検知時のアプリケーションの評価や、脅威検知時のVictimへの影響発生リスクを確認できる Impact Flag 機能に利用されます。(なお、Impact Flagを利用する場合は、特に定期的な最新のVDBのアップデートを行うようにしてください!VDBは脆弱性評価で利用します。) また、Network Discovery で学習した情報を用いて、ルールの自動最適化機能 (Firepower Recommended Rules) も利用可能です。
Network Discovery を利用する場合、デフォルト値は 0.0.0.0/0 と ::/0 (=全てのIPv4/IPv6通信が対象)です。FMCは複数の管理デバイスを登録でき、デバイスにより監視するネットワークが変わるため、デフォルトで全てのネットワークが学習対応となっています。しかし、学習範囲が広すぎると、FMCと 管理デバイスの処理負荷があがり、パフォーマンスに影響があります。及び、FMCは学習できるホスト数は上限があります。
そのため、FMCと管理デバイスのパフォーマンスを最適化するためには、通常 保護すべき内部セグメントのみ監視/学習するようチューニングを検討してください。また、同じIPアドレスを使いまわす NATデバイスのPAT IPアドレスや、負荷分散装置の仮想IPアドレスなどは、そのIPアドレスが特定ホストである事を示さないため、Network Discoveryの対象から除外することで負荷軽減に役立ちます。特定のIP/NetworkやPort、Zoneを 学習から除外設定も可能です。
Actionの Applicationは、アプリケーションの詳細検査と侵入検知の処理で利用するため、有効のままが推奨です。Actionの Usersが有効の場合、ユーザのログインアクティビティの情報などを収集します。
利用FMCの学習可能な最大ホスト数やユーザ数は データシートから確認できます。例えば、FMCvの最大学習可能なホストやユーザ数は5万までです。
Policies > Network Discovery から設定状況は確認できます。以下例の場合、1.0.0.0/8 のネットワークの、ホストとアプリケーション情報のみ学習する設定例です。
なお、学習したホスト情報と数は、Analysis > Hosts > Network Map から確認することができます。Network Discoveryでは 管理デバイスを通過し かつ 対象のネットワークやPort、Zoneの通信の学習を行います。管理デバイスの通過を拒否している通信や 管理デバイスに到達してない通信は学習されず表示されません。
Firepower Systemは パフォーマンスや安定性が最適になるようデフォルト値が定義されているため、安易なデフォルト値の変更は避けることで、予期せぬトラブルやパフォーマンス問題発生リスクを抑えることができます。
Policies > Access Control > Intrusionから 任意のIntrusion Policyを選択し、任意ルールセットをクリックすることでルール数や、Rulesからその詳細を確認できます。
データシート記載のIPSパフォーマンスはデフォルトのBalancedがベースとなりますが、各ルールセットごとの細かな違いは残念ながら公開しておりません。設計におけるサイジングの範疇となりますため、実環境やご利用機能・製品に合わせ、事前テストを実施して頂く事をお勧めします。なお、Firepower Systemのパフォーマンスは以下などの影響を受けて変動します。
・有効化機能 (例:AVC/IPS機能のみ利用時に比べ、AMPやNetworkDiscoveryも併用したほうが より負荷は高く)
・トラフィックタイプ (DNSやHTTPなど)
・パケットサイズ
・ルール有効化数
・インスペクションの深さ (どの程度まで細かくチェックするか)
・Packets Per Second (pps)
・New Connections Per Second (cps)
・イベント保存有効化状況や イベント生成負荷 (=Event Per Second)
Cisco Talosがテスト用に定義している特殊なルールセットのため、エンジニアから依頼を受けテスト利用する時を除いて、Maximum Detectionの実環境での利用は控えてください。つまり、Maximum Detectionは実環境では原則 利用しません。
Intrusion inspectionをせずに、Network Discovery機能を利用して、通信環境の利用アプリケーションやOSなどの情報を収集したい場合に利用することがあります。もしくは、ベースポリシーの他ルールセット利用時の遅延やサイレントドロップ問題発生時の切り分けに利用することもあります。
検知精度を上げるほど False Positive(誤検知)の発生する可能性はあがります。False Positive(誤検知)を減らすために検知精度を下げると、False Negative (侵入の未検知)の発生リスクがあがります。そのため、検知精度と False Positiveは表裏一体の関係です。
チューニングにより False Positiveの発生を減らすことは可能ですが、一定の検知精度と保護が必要な環境の場合、False Positiveの発生を完全に防ぐのは困難です。
「Security Over Connectivity (略称: Security)」をベースポリシーに利用することで保護レベルを大きく上げることが可能ですが、検知精度をあげるということは、その分 False Positive(誤検知)による多数のイベントログ発生や 正常な通信のドロップのリスクが上昇します。また、特に通信量が多い環境の場合 検査負荷があがりますため システムのパフォーマンス低下の原因となります。「なにを保護すべきか」「保護とパフォーマンスのバランスをどうとるか」「十分なパフォーマンス余力があるか」をよく考慮の上、利用するルールセット選定やポリシー設定、適用をお勧めします。
インシデント対応において専任チームのサポートが必要の場合は、別途 Security Operation Center (SOC) のサポートを受けることをお勧めします。 Firepower Systemを含むセキュリティ製品の不正アクセス通信のアラートやログ等の分析や評価、不正侵入検知後のインシデント対応、運用環境に適したポリシー設定支援などのサポートを受けることができます。Firepower Systemに対応したシスコのセキュリティサービスについて詳しくは、セキュリティ サービス や マネージド セキュリティ サービス を参照してください。
What are the Metrics Used to Determine the Default Ruleset for each Firepower Intrusion Base Policy
https://www.cisco.com/c/en/us/support/docs/security/firepower-ngfw/214405-what-are-the-metrics-used-to-determine-t.html
Why are rules commented out by default?
https://www.snort.org/faq/why-are-rules-commented-out-by-default
Firepower System: Signature に定義されている変数セットのカスタマイズについて
https://community.cisco.com/t5/-/-/ta-p/3888892
FTD: Prefilterの役割と設定と動作確認
https://community.cisco.com/t5/-/-/ta-p/3194254
Cisco Secure Firewall (FTD) - how to ※FTD情報 まとめサイト
https://community.cisco.com/t5/-/-/ta-p/5024782
Firepower System and FTDトラブルシューティング
https://community.cisco.com/t5/-/-/ta-p/3161733
検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう
シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします
下記より関連するコンテンツにアクセスできます