インストール後にSnort IDSをテストする最も簡単な方法は何ですか?すべてのトラフィックをキャプチャするルールを使用して記述しますか?
alert ip any any -> any any ( msg: "ICMP packet detected!"; sid: 1; )
つまり、独自のルールを使用します。
Snortをテストするために知っている1つの方法は、Nmap
、Metasploit
などのプログラムを使用することですが、どのように実行できますか?
テストする可能性のある微妙に異なる2つの点があります。
ケース1をテストするには、例のように実行しやすいルールを作成して実行します。ケース2をテストするには、タイプXの侵入を試みて、それが検出されることを確認する必要があります。
ケース2の方法を使用して、ケース1(インストールが正しく行われたこと)をテストしたいようですが、そうする必要はありません。 「偽の」ルールの使用は、Snortが第一の意味で機能している完全に有効なテストです。そしてそれは簡単です。簡単なテストが良いです。アラートメールが適切な人に送信されることを確認しているだけの場合は、Metasploitをいじりたくはありません。特に、侵入の実行に熟練していない場合-侵入を間違って行い、誤ったテスト結果が出た場合はどうなりますか?侵入の試みがターゲットをクラッシュさせた場合(これは、多くのタイプの侵入で非常に可能性があります)。
実際にケース2をテストする必要があるのは、ルールセットを信頼していない場合(その場合-なぜそれを使用しているのですか)、または新しいルールを開発している場合は、特定のルールが実際の侵入の試みに対して機能することだけです。
これは古いのはわかっていますが、とにかく捨てます...
チェックアウト snort -T
このスイッチは、正確に尋ねられた質問のために設計されています。これは組み込みであり、ルールを使用して変更する必要はなく、悪意のあるトラフィックを送信する必要もありません(「制御されている」場合でも)anyトラフィックを送信する必要はありません。あなたの問題がどこにあるかさえ教えてくれます。
2019年現在、私が見つけた最も堅牢なSuricata/Snortテストは次のとおりです。
Dig a 3wzn5p2yiumh7akj.onion
emerging-trojan.rules から次のルールをトリガーします。
alert dns $HOME_NET any -> any any (msg:"ET TROJAN Cryptowall .onion Proxy Domain";
dns_query; content:"3wzn5p2yiumh7akj"; depth:16; nocase;
reference:url,www.bleepingcomputer.com/news/security/cryptowall-4-0-released-with-new-features-such-as-encrypted-file-names;
classtype:trojan-activity; sid:2022048; rev:2; metadata:created_at 2015_11_09,
updated_at 2015_11_09;)
背景:上記のシグネチャは古くなっており、それらのほとんどには、SnortまたはSuricataを盲目にする適切なフロー仕様が含まれていません。また、testmyids.com
有効なプロキシが必要であり、これにより複雑さが増します。 .onion
ただし、DNS解決アラートは、クライアントによる名前の解決を試みただけでトリガーされるため、インターネット接続が機能している必要はありません。