セキュリティ対策 - ネットワーク侵入検知/防止 Snort - ルールを取得

 クラウディア
1. 概要
2. 確認
3. 設定
4. ダウンロード

1. 概要

 「oinkcode」を取得できたので、ルールをダウンロードしてみます。

2. 確認

 ダウンロード可能なものが何かを確認しておきます。  「Snort」のサイトへ、サインインします。
Snort - Network Intrusion Detection & Prevention System
 「Download」タブで
「https://www.snort.org/dounloads/」

 上の方ではありますが、少し下がったところに、「Rules」ちゅうのがありまして。
 「Registered」という箇所に、その名のごとく、登録済のものがありまして。

	・Snort v3.0
	・Snort v2.9

 という2つの系列があります(2023年6月2日現在、「FreeBSD」では、「snort3」はインストールエラーになります)。
 とりあえず、わたしが使用しているのは、「Version 2.9.20」のようなので、「2.9」系列の一番新しいのが「snortrules-snapshot-2983.tar.gz」ですな。
 これを記録しておきます。
 ちなみに、これサインインしないと、よく見えません。

3. 設定

 以下、「root」ユーザ権限で。

cp /usr/local/etc/oinkmaster.conf.sample /usr/local/etc/oinkmaster.conf
vi /usr/local/etc/oinkmaster.conf
 せっかくなので

# Example for Snort 2.4
# url = http://www.snort.org/pub-bin/oinkmaster.cgi/<oinkcode>/snortrules-snapshot-2.4.tar.gz
 の下あたりに書きましょうか。

url = http://www.snort.org/pub-bin/oinkmaster.cgi/→ ここに oinkcode ←/snortrules-snapshot-2983.tar.gz
 というコードをいれます。  「/→」から「←/」に、自分の「oinkcode」を記述します。

4. ダウンロード

 では、ダウンロードします。  「root」ユーザ権限で。  念のため、ダウンロード先を作成しておきます。


mkdir -pv /usr/local/etc/rules
 ダウンロード。

oinkmaster -o /usr/local/etc/snort/rules
 このときに、目的のものがダウンロード元のサーバにないと。

Loading /usr/local/etc/oinkmaster.conf
Downloading file from http://www.snort.org/pub-bin/oinkmaster.cgi/*oinkcode*/snortrules-snapshot-2.4.tar.gz...
/usr/local/bin/oinkmaster: Error: could not download from http://www.snort.org/pub-bin/oinkmaster.cgi/*oinkcode*/snortrules-snapshot-2.4.tar.gz. Output from wget follows:

 URL transformed to HTTPS due to an HSTS policy
https://www.snort.org/pub-bin/oinkmaster.cgi/*oinkcode*/snortrules-snapshot-2.4.tar.gzwww.snort.org (www.snort.org) をDNSに問いあわせています... 104.18.138.9, 104.18.139.9, 2606:4700::6812:8a09, ...
www.snort.org (www.snort.org)|104.18.138.9|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 403 Forbidden
2023-06-01 14:42:17 エラー 403: Forbidden。

Oink, oink. Exiting...
 てなことになっちゃいます。  当初、「oinkcode」を間違えたのかと思ったのですが、ダウンロードするものがない場合も、上記のようなメッセージになります。  うまく行く場合は、大量のメッセージなので割愛しますが。

Loading /usr/local/etc/oinkmaster.conf
Downloading file from http://www.snort.org/pub-bin/oinkmaster.cgi/*oinkcode*/snortrules-snapshot-2983.tar.gz... done.
Archive successfully downloaded, unpacking... done.
Setting up rules structures... done.
Processing downloaded rules... disabled 0, enabled 0, modified 0, total=45029
Setting up rules structures... done.
Comparing new files to the old ones... done.
Updating local rules files... done.

[***] Results from Oinkmaster started 20230601 15:19:19 [***]

[+++]          Added rules:          [+++]

     -> Added to app-detect.rules (162):
        #alert udp $HOME_NET any -> any 53 (msg:"APP-DETECT DNS request for known bitcoin domain seed.ppcoin.net"; flow:to_server; byte_test:1,!&,0xF8,2; content:"|04|seed|06|ppcoin|03|net|00|"; fast_pattern:only; metadata:policy max-detect-ips drop, service dns; classtype:policy-violation; sid:30870; rev:2;)

・・・	略(細かいメッセージが、大量に出力されます)・・・

        #alert tcp $HOME_NET any -> $EXTERNAL_NET any (msg:"APP-DETECT Splashtop connection negotiation attempt"; flow:to_server,established; isdataat:3; isdataat:!4; content:"|20 00 C8 00|"; depth:4; metadata:policy max-detect-ips drop; reference:url,en.wikipedia.org/wiki/Splashtop; classtype:policy-violation; sid:27923; rev:4;)
        #alert udp $HOME_NET any -> any 53 (msg:"APP-DETECT Apple Messages courier.push.apple.com DNS TXT request attempt"; flow:to_server; byte_test:1,!&,0xF8,2; content:"|07|courier|04|push|05|apple|03|com|00|"; fast_pattern:only; metadata:policy max-detect-ips drop, service dns; reference:url,www.apple.com/osx/apps/all.html#messages; classtype:policy-violation; sid:25081; rev:2;)

[+++]      Added non-rule lines:     [+++]

     -> Added to app-detect.rules (20):
        # Copyright 2001-2023 Sourcefire, Inc. All Rights Reserved.
        #

・・・	略(コピーライトを出力しているようです)・・・

        #
        #------------------
        # APP-DETECT RULES
        #------------------

[+] Added files (consider updating your snort.conf to include them if needed): [+]

    -> attack-responses.rules
    -> backdoor.rules
    -> bad-traffic.rules

・・・	略(ダウンロードしたルールを出力しているようです)・・・

    -> web-misc.rules
    -> web-php.rules
    -> x11.rules
 これで

/usr/local/etc/rules/
 配下に、全ルールをダウンロードできたはずです。

ls -l /usr/local/etc/snort/rules/*.rules | wc -l
 で数えてみたら、116 ありました。
ハイスピードプランPoint anytimeツインバード・ストア