このドキュメントでは、Cisco Secure Firewall ASAの脅威検出機能と設定について説明します。
ASA CLI、アクセスコントロール、および(VPN脅威の検出に関して)リモートアクセスVPNに関する知識があることが推奨されます。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
ASAでの脅威検出は、レイヤ3/4の最前線の防御を提供します。パケットドロップ統計情報とオプションのオブジェクトレベルの「上位」レポートからベースラインを構築します。レイヤ7までの許可されたトラフィックを検査する専用のIPSまたは次世代IPSモジュールの代わりとなるものではなく、この2つは連携して動作します。
注:この記事では、ASA CLI機能セットについて説明します。Cisco Secure Firewall Threat Defense(FTD)では、アクセスコントロールポリシーの詳細設定で、関連する(ただし同一ではない)脅威検出機能が公開されます。FTD脅威検出を、これらのコマンドの1:1マッピングとして扱わないでください。詳細については、記事「ASAと脅威対策の機能のマッピング」を参照してください。
脅威検出は、ファイアウォール管理者が攻撃を特定し、把握し、(スキャニングおよびVPNサービス用に)攻撃を阻止するためのツールです。これは、レートトリガー、オブジェクトレベルの統計情報、およびオプションの自動シャントに依存します。
この機能には、4つのコンポーネントがあります。
基本的な脅威の検出は、8.0(2)以降を実行するASAではデフォルトで有効になっています。
さまざまな理由でASAによってパケットが廃棄されるレートをモニタします。統計情報はアプライアンス全体に適用され、一般に送信元ホストを特定できるほど詳細ではありません。ASAは、次のイベントについてドロップされたパケットを監視します。
ほとんどのトリガーは、特定のASPドロップの理由にマッピングします。特定のsyslogと検査アクションもカウントされます。一部のトリガーは複数の脅威カテゴリに表示されます。共通マッピング(完全ではない):
| 基本的な脅威 |
トリガ/ASP ドロップの理由 |
| acl-drop |
acl-drop |
| bad-packet-drop |
無効なTCP-HDR長 無効なIPヘッダー inspect-dns-pak-too-long inspect-dns-id-not-matched(一致しないDNSインスペクション) |
| conn-limit-drop |
conn制限 |
| dos-drop |
SPセキュリティ失敗 |
| fw-drop |
inspect-icmp-seq-num-not-matched(シーケンス番号が一致しない場合) inspect-dns-pak-too-long inspect-dns-id-not-matched(一致しないDNSインスペクション) SPセキュリティ失敗 acl-drop |
| icmp-drop |
inspect-icmp-seq-num-not-matched(シーケンス番号が一致しない場合) |
| inspect-drop |
インスペクション エンジンでトリガされるフレーム ドロップ |
| interface-drop |
SPセキュリティ失敗 ルートなし |
| scanning-threat |
TCP-3WHS失敗 TCP-NOT-SYN SPセキュリティ失敗 acl-drop inspect-icmp-seq-num-not-matched(シーケンス番号が一致しない場合) inspect-dns-pak-too-long inspect-dns-id-not-matched(一致しないDNSインスペクション) |
| syn-attack |
解放の理由が「SYN タイムアウト」である %ASA-6-302014 syslog |
基本的な脅威の検出では、各イベントについて、設定された平均レート間隔(ARI)で600秒から30日間のドロップレートが測定されます。ARI内のイベントが設定されたしきい値を超えると、ASAはそれらを脅威として扱います。
平均レートとバーストレートの2つのしきい値があります。ARIでの平均レートは1秒あたりのドロップ数です。バーストレートでは、より短いバーストレート間隔(BRI)が使用されます。 8.2(1)以降、BRIはARIの30分の1または10秒のうち大きい方です。8.2(1)よりも前では、BRIはARIの60分の1でした。最小10秒はすべてのソフトウェアバージョンに適用されます。
例:ARI 600秒のACLドロップ平均レート400は、ASAが最後の600秒間のACLドロップを平均し、その平均が毎秒400を超えた場合に脅威をログに記録することを意味します。同じARIのバーストレート800は、20秒(600 / 30)のBRIを使用します。 この20秒間のウィンドウでACLドロップが800を超えると、脅威がログに記録されます。
基本的な脅威が検出されると、ASAはsyslog %ASA-4-733100を生成します。平均レートとバーストレートの両方を超える場合、ASAは2つの733100メッセージ(レートタイプごとに1つ)を送信でき、バースト期間ごとにレートタイプごとに最大1つのメッセージを送信できます。
show threat-detection rateコマンドを実行して、平均、現在、トリガーカウント、および合計イベントを表示します。ASAは、各バースト期間の終了時に、完了した30個のBRIのカウントを保存します。通常、未完成の現在のBRIは平均から除外されます。合計イベントカウントは、これらの30個のBRIサンプル内のイベントの合計です(未完了のBRIがすでに最も古いサンプルを超えている場合は、リアルタイム例外が表示されます)。
syslogのバーストレートは、現在のBRIでこれまでに発生した廃棄から計算され、定期的にサンプリングされます。したがって、BRIが完了する前に故障を報告することができます(BRIごとのレートタイプごとに1つのsyslog)。 show threat-detection rateのバースト/現在のレートは、最後に完了した BRIを使用します。
基本的な脅威の検出では、トラフィックのドロップや回避は行われません。情報(モニタリングとレポート)です。 パフォーマンスへの影響は軽微であり、主にドロップまたは潜在的な脅威が存在する場合に発生します。
高度な脅威の検出は、より詳細なオブジェクト(ホストIP、ポート、プロトコル、ACL、およびTCPインターセプトで保護されたサーバ)の統計情報を追跡します。ACL統計情報だけがデフォルトで有効になっています。ホスト統計情報は、高トラフィック下ではパフォーマンスに大きな影響を与えます。必要に応じて一時的に有効にしてください。ポートの統計情報の影響は、より小さい。
ホスト、ポート、およびプロトコルオブジェクトの場合、ASAは固定ウィンドウで送受信されたパケット、バイト、およびドロップを追跡します。ACLでは、これらのウィンドウでヒットした上位10のACE(許可および拒否)を追跡します。許可されたACEヒットと拒否されたACEヒットは、トップACLの表示では区別されません。
固定時間は20分、1時間、8時間、24時間です。ウィンドウ自体は設定できません。number-of-rate {1 | 2 | 3}キーワード(ホスト、ポート、およびプロトコルのみ)は、保持される長いインターバルの数を制御します。
ホストの統計情報は、スキャン脅威のホストデータベースでホストがアクティブな間に蓄積され、非アクティブ状態が10分間続くとクリアされます。
TCPインターセプトが有効な場合、脅威検出は攻撃を受けている上位10台のサーバを追跡できます。TCPインターセプトの統計情報では、設定可能なモニタリングウィンドウに加えて、平均しきい値とバーストしきい値(8.0(4)以降で使用可能)が使用されます。 デフォルト:
統計情報を表示するには、show threat-detection statisticsおよびshow threat-detection statistics topコマンドを実行します。これは、従来のASDMファイアウォールダッシュボードの「上位」グラフに表示される機能でもあります。
高度な脅威の検出は、TCPインターセプトがすでにサーバを保護していることを除き、情報です。これらの統計情報だけで追加のブロックは適用されません。
スキャン脅威の検出は、サブネット内のホスト数が多すぎる場合や、ホストまたはサブネット上のポート数が多すぎる場合に接続を作成するホストを追跡します。デフォルトではディセーブルになっています。IPSシグニチャベースのスキャン検出とは異なり、ASAスキャン脅威の検出では、ホストデータベース(リターンアクティビティのない接続、クローズドポートアクセス、特定のTCP動作など)が維持されます。
レート間隔、平均レート(ARI)、およびバーストレート(BRI)を基本的なスキャン脅威カテゴリと共有します。BasicとScanningに別々のレートを設定することはできません。違いは、スキャン脅威の検出が攻撃者とターゲットIPデータベースを保持することです。ASAの通過を許可され、フローを作成するトラフィックだけがカウントされます。基本的な脅威の検出は、ACLで拒否されたトラフィックに対してスキャン脅威733100を起動できますが、スキャン脅威の検出は起動しません。
あるホストからのトラフィックのスキャンレートを超過している場合、そのホストは攻撃者です。ホストへのトラフィックが上限を超えた場合、そのホストがターゲットになります。Syslog %ASA-4-733101が記録されます。オプションで攻撃者を排除できます(%ASA-4-733102を排除する場合は排除を追加し、%ASA-4-733103を排除する場合は排除します)。 デフォルトの回避時間は3600秒(1時間)で、10 ~ 2592000秒の範囲で設定できます。
shunによるスキャン脅威の検出は、許可されていないトラフィックをアクティブにドロップできる2つの機能の1つです(もう1つはVPN脅威の検出です)。
攻撃者/ターゲットデータベースに対してshow threat-detection scanning-threatコマンドを実行し、スキャン脅威の回避に対してのみshow threat-detection shunを実行します。
注:例外として、threat-detection scanning-threat shun exceptを使用して、正規の高いコントロールプレーンまたはマルチキャストトラフィック(PIMルータなど)を送信するホストを除外してください。除外しない場合、または、shunがインストールされるときに、これらのパケットがドロップされる可能性があります。
VPN脅威検出は、ASAリモートアクセスVPNヘッドエンドをIPv4 DoSスタイルの攻撃から保護します。デフォルトでは、3つのサービスはすべて無効になっています。サービスが有効になり、ホストがしきい値を超えると、ASAは回避を削除するまでそのIPv4アドレスを自動的に回避します。
サービス:
これらの攻撃は、失敗した場合でも認証とセッションリソースを消費する可能性があります。ホールドダウンとしきい値を設定する場合は、PAT(ホテル、CGNAT)を考慮します。多くの有効なユーザが1つのパブリックIPを共有できます。正当なユーザが接続を終了できるように、より大きい値を使用します。
VPN Threat DetectionはTo-the-Box IPv4のみを監視します。shunは、show threat-detection shunではなく、show shunで表示されます。関連syslog:%ASA-6-733200(情報)および%ASA-4-733201(しきい値を超えました。shunがインストールされています)
基本的な脅威の検出はデフォルトで有効になっています。次のコマンドで再び有効にできます。
ciscoasa(config)# threat-detection basic-threat
no threat-detection basic-threatで無効にします。show run all threat-detectionを使用したデフォルトレートビュー:
ciscoasa(config)# show run all threat-detection threat-detection rate dos-drop rate-interval 600 average-rate 100 burst-rate 400 threat-detection rate dos-drop rate-interval 3600 average-rate 80 burst-rate 320 threat-detection rate bad-packet-drop rate-interval 600 average-rate 100 burst-rate 400 threat-detection rate bad-packet-drop rate-interval 3600 average-rate 80 burst-rate 320 threat-detection rate acl-drop rate-interval 600 average-rate 400 burst-rate 800 threat-detection rate acl-drop rate-interval 3600 average-rate 320 burst-rate 640 threat-detection rate conn-limit-drop rate-interval 600 average-rate 100 burst-rate 400 threat-detection rate conn-limit-drop rate-interval 3600 average-rate 80 burst-rate 320 threat-detection rate icmp-drop rate-interval 600 average-rate 100 burst-rate 400 threat-detection rate icmp-drop rate-interval 3600 average-rate 80 burst-rate 320 threat-detection rate scanning-threat rate-interval 600 average-rate 5 burst-rate 10 threat-detection rate scanning-threat rate-interval 3600 average-rate 4 burst-rate 8 threat-detection rate syn-attack rate-interval 600 average-rate 100 burst-rate 200 threat-detection rate syn-attack rate-interval 3600 average-rate 80 burst-rate 160 threat-detection rate fw-drop rate-interval 600 average-rate 400 burst-rate 1600 threat-detection rate fw-drop rate-interval 3600 average-rate 320 burst-rate 1280 threat-detection rate inspect-drop rate-interval 600 average-rate 400 burst-rate 1600 threat-detection rate inspect-drop rate-interval 3600 average-rate 320 burst-rate 1280 threat-detection rate interface-drop rate-interval 600 average-rate 2000 burst-rate 8000 threat-detection rate interface-drop rate-interval 3600 average-rate 1600 burst-rate 6400
threat-detection rate コマンドを実行してカテゴリを調整します。各カテゴリには、最大3つのレート(レート1、2、および3)を設定できます。 超過したレートIDは、733100で参照されます。
ciscoasa(config)# threat-detection rate acl-drop rate-interval 1200 average-rate 250 burst-rate 550
この例では、ACLドロップが1200秒間で250/秒(1200 / 30)または40秒間で550/秒(1200 / 30)を超えたときに733100が生成されます。
このコマンドのscanning-threatキーワードは、スキャン脅威の検出と共有されます。基本的な脅威の検出が無効になっている場合でも、スキャニングレートを設定できます。
高度な統計情報をイネーブルにするには、threat-detection statisticsコマンドを実行します。キーワードを指定しない場合、すべての統計タイプが有効になります。
ciscoasa(config)# threat-detection statistics ? configure mode commands/options: access-list Keyword to specify access-list statistics host Keyword to specify IP statistics port Keyword to specify port statistics protocol Keyword to specify protocol statistics tcp-intercept Trace tcp intercept statistics <cr>
no threat-detection statistics(オプションなし)は、デフォルトのthreat-detection statistics access-listを含むすべての統計コマンドを削除します。
ACL統計情報(デフォルトはオン):
ciscoasa(config)# threat-detection statistics access-list
ホスト、ポート、またはプロトコル。オプションでレート間隔の数を指定できます。
ciscoasa(config)# threat-detection statistics host number-of-rate 2 ciscoasa(config)# threat-detection statistics port number-of-rate 2 ciscoasa(config)# threat-detection statistics protocol number-of-rate 3
TCPインターセプト統計情報(マルチコンテキストモードでも使用可能):
ciscoasa(config)# threat-detection statistics tcp-intercept ciscoasa(config)# threat-detection statistics tcp-intercept rate-interval 60 burst-rate 800 average-rate 600
ciscoasa(config)# threat-detection scanning-threat ciscoasa(config)# threat-detection rate scanning-threat rate-interval 1200 average-rate 10 burst-rate 20 ciscoasa(config)# threat-detection scanning-threat shun ciscoasa(config)# threat-detection scanning-threat shun duration 1000 ciscoasa(config)# threat-detection scanning-threat shun except ip-address 10.1.1.1 255.255.255.255 ciscoasa(config)# threat-detection scanning-threat shun except object-group no-shun
shunとexceptを1行で組み合わせ、コマンドを複数回入力して、より多くのアドレスまたはオブジェクトグループを除外できます。
ciscoasa(config)# threat-detection scanning-threat shun except ip-address 10.1.1.0 255.255.255.0
ciscoasa(config)# threat-detection service invalid-vpn-access ciscoasa(config)# threat-detection service remote-access-client-initiations hold-down 10 threshold 20 ciscoasa(config)# threat-detection service remote-access-authentication hold-down 10 threshold 20
同じコマンドのno形式でサービスを無効にします。clear threat-detection serviceを使用してカウンタをリセットします。
専用のウォークスルーについては、『セキュアファイアウォールASAでのリモートアクセスVPNサービスの脅威検出の設定』(ドキュメントID 222315)を参照してください。
基本的な脅威の検出は、パフォーマンスにほとんど影響しません。高度なホスト統計情報とスキャン脅威の検出は、ホストごとおよびオブジェクトごとのデータを保存するため、より多くのリソースを消費します。特定の問題のトラブルシューティングを行っている間、ホスト統計情報を一時的に有効にします。
許可されていないトラフィックをドロップする可能性のある機能:
高度な機能またはスキャン機能を有効にする前後にメモリを監視します。
ciscoasa# show threat-detection memory ciscoasa# show memory app-cache threat-detection detail
show threat-detection memory (8.3(1)+)は、advanced-statisticsメモリ用に文書化されたコマンドです。show memory app-cache threat-detection [detail]は、アプリケーションチャンクキャッシュを示します。
733100の脅威カテゴリに注目し、show threat-detection rateと相関させます。次に、ドロップの理由についてshow asp dropをチェックします。
特定の理由で、ASP-dropキャプチャを使用します。
ciscoasa# capture drop type asp-drop acl-drop ciscoasa# show capture drop 1 packet captured 1: 18:03:00.205189 10.10.10.10.60670 > 192.168.1.100.53: udp 34 Drop-reason: (acl-drop) Flow is denied by configured rule
この例は、10.10.10.10から192.168.1.100へのUDP/53パケットです。
733100がスキャンを報告する場合は、ASAが攻撃者とターゲットIPを記録できるように、スキャン脅威の検出を一時的に有効にします。
基本的な脅威の検出では、ASPがすでにドロップしたトラフィックが主にカウントされるため、追加のドロップアクションは必要ありません。例外は、ASAを通過するトラフィックに関連するSYN攻撃とスキャン脅威です。
廃棄が環境に対して正当である場合は、基本レート間隔を大きくします。攻撃トラフィックの場合は、ASAの前でアップストリーム(ACL、QoS)をブロックまたはレート制限します。
SYN攻撃に対しては、ACLで送信元を拒否するか、TCPインターセプトを有効にしてターゲットを保護します(代わりにconn-limit脅威を生成できます)。 スキャンでは、ACLで拒否するか、shunを使用してスキャン脅威の検出を有効にすることができます。
733101に、ターゲットのホスト/サブネットまたは攻撃者をリストします。完全なリストについては、show threat-detection scanning-threatコマンドを実行します。
攻撃者が面しているインターフェイスとターゲットが面しているインターフェイスのキャプチャは、スキャンの確認に役立ちます。
予期しないスキャンの場合は、blockまたはrate-limit upstream。shunを追加すると、ASAは設定された期間に攻撃者からのすべてのパケットをドロップできます。最後の手段として、ACLまたはTCPインターセプトを使用してASAをブロックします。
誤検出の場合は、スキャン脅威レート間隔を大きくします。
733102に、スキャン脅威の排除ターゲットを示します。スキャン脅威の排除だけにshow threat-detection shunコマンドを実行します。ASAでアクティブなすべての回避(スキャン、VPN脅威の検出、手動回避)に対してshow shunを実行します。
実際の攻撃では、できるだけアップストリームをブロックするため、中継デバイスはトラフィックを処理しません。false positiveの場合は、スキャン回避を削除します。
ciscoasa# clear threat-detection shun ciscoasa# clear threat-detection shun 10.1.1.6
これらのsyslogは、TCPインターセプトによってすでに保護されているホストを示しています。733104はバーストレート、733105は平均レートです。チェック:
ciscoasa# show threat-detection statistics top tcp-intercept Top 10 protected servers under attack (sorted by average rate) Monitoring window size: 30 mins Sampling interval: 30 secs ---------------------------------------------------------------------------------- 1 192.168.1.2:5000 inside 1249 9503 2249245 Last: 10.0.0.3 (0 secs ago) 2 192.168.1.3:5000 inside 10 10 6080 10.0.0.200 (0 secs ago)
接続制限が適切であることを確認します。可能であれば、攻撃者のアップストリームをブロックします。誤検出の場合は、threat-detection statistics tcp-interceptレートを調整します。
733201は、しきい値を超えたサービスとピアを示します。次で確認:
ciscoasa# show threat-detection service ciscoasa# show threat-detection service remote-access-authentication details ciscoasa# show shun
排除されたIPはサービスエントリリストから除外され、ブロッキングカウンタが増加します。ホストが正当な場合(共有PAT、誤って設定されたクライアント)、shunを削除します。
ciscoasa# no shun 192.168.100.101 ciscoasa# no shun 192.168.100.101 interface outside
アドレスが複数のインターフェイスで回避されているときにインターフェイスを省略すると、no shunによって回避が削除されるのは1つのインターフェイスだけです(route-lookup)。 追加のインターフェイスをクリアするインターフェイスを指定します。clear shunはすべてのインターフェイス上のすべての排除を削除します。
VPN排除モードでclear threat-detection shunを実行しないでください。このコマンドはスキャン脅威の検出にのみ適用されます。
有効なユーザが排除されている場合は、ホールドダウン/しきい値(特にPATの背後)を上げるか、調整するまでサービスを無効にします。
テストとトラブルシューティングには、次のラボの方法を使用します。隔離された環境でのみ実行してください。
ACLドロップ、ファイアウォール、およびスキャンの基本カテゴリはすべてacl-dropを考慮します。これらを同時にトリガーするには、次の手順を実行します。
1. 内部ターゲット(10.11.11.11)へのTCPを拒否するACLを外部インターフェイスで作成します。
access-list outside_in extended line 1 deny tcp any host 10.11.11.11 access-list outside_in extended permit ip any any access-group outside_in in interface outside
2. 外部の攻撃者(10.10.10.10)から、TCP SYNスキャンを実行します。
nmap -sS -T5 -p1-65535 -Pn 10.11.11.11
注:T5では、nmapが可能な限り高速で実行されます。攻撃者のPCは、デフォルトのレートに対して非常に低速である可能性があります。表示するカテゴリの設定済みレートを下げます。ARIおよびBRIを0に設定すると、レートに関係なく、基本的な脅威の検出がトリガーされます。
3. 次のような基本的な脅威がログに記録されます。
%ASA-4-733100: [ Scanning] drop rate-1 exceeded. Current burst rate is 19 per second, max configured rate is 10; Current average rate is 9 per second, max configured rate is 5; Cumulative total count is 5538 %ASA-4-733100: [ ACL drop] drop rate-1 exceeded. Current burst rate is 19 per second, max configured rate is 0; Current average rate is 2 per second, max configured rate is 0; Cumulative total count is 1472 %ASA-4-733100: [ Firewall] drop rate-1 exceeded. Current burst rate is 18 per second, max configured rate is 0; Current average rate is 2 per second, max configured rate is 0; Cumulative total count is 1483
注:この例では、ACL-dropおよびファイアウォールARI/BRIが0に設定されているため、常にトリガーされます(最大設定レートは0として表示されます)。
1. 内部ターゲットへのTCPを許可します。
access-list outside_in extended line 1 permit tcp any host 10.11.11.11 access-group outside_in in interface outside
2. ターゲットが存在しない場合、または接続をリセットする場合は、スタティックARPエントリでブラックホール化します。
arp inside 10.11.11.11 dead.dead.dead
3. 単純なTCPインターセプト(初期/接続制限)ポリシーを作成します。
access-list tcp extended permit tcp any any
class-map tcp
match access-list tcp
policy-map global_policy
class tcp
set connection conn-max 2
service-policy global_policy global
攻撃者から、次のコマンドをスキャンします。
nmap -sS -T5 -p1-65535 -Pn 10.11.11.11
ciscoasa(config)# show threat-detection statistics top tcp-intercept Top 10 protected servers under attack (sorted by average rate) Monitoring window size: 30 mins Sampling interval: 30 secs -------------------------------------------------------------------------------- 1 10.11.11.11:18589 outside 0 0 1 10.10.10.10 (36 secs ago) 2 10.11.11.11:47724 outside 0 0 1 10.10.10.10 (36 secs ago)
1. ターゲットに対してTCPを許可します(スキャン脅威の検出は、許可され、作成されたフローのみを追跡します)。
access-list outside_in extended line 1 permit tcp any host 10.11.11.11 access-group outside_in in interface outside
2. 必要に応じて、スタティックARPを使用してブラックホール化します。実サーバによってリセットされた接続はカウントされません。
arp inside 10.11.11.11 dead.dead.dead
3. 攻撃者からのスキャン。nmapの速度が十分でない場合は、レートを下げるか、ARI/BRIを0に設定します。
nmap -sS -T5 -p1-65535 -Pn 10.11.11.11
4. shunが有効な場合に予期されるログ:
%ASA-4-733100: [ Scanning] drop rate-1 exceeded. Current burst rate is 17 per second, max configured rate is 10; Current average rate is 0 per second, max configured rate is 5; Cumulative total count is 404 %ASA-4-733101: Host 10.10.10.10 is attacking. Current burst rate is 17 per second, max configured rate is 10; Current average rate is 0 per second, max configured rate is 5; Cumulative total count is 700 %ASA-4-733102: Threat-detection adds host 10.10.10.10 to shun list
| 改定 | 発行日 | コメント |
|---|---|---|
5.0 |
16-Sep-2026
|
スペル、文法、読みやすさを考慮したセクションへの水平線の挿入、HTTPのURLの更新、およびCCWアラートの修正。 |
4.0 |
20-Jun-2023
|
再公開 |
3.0 |
20-Jun-2023
|
PII、概要、スタイル要件、機械翻訳、ゲルンド、およびフォーマットを更新。 |
1.0 |
31-Aug-2012
|
初版 |