全2281文字
PR

インストールしてシグネチャーを登録する

 簡単にセットアップ手順を紹介する。

 今回はラズパイ標準のOSであるRaspbianを使った。ここにSuricataをセットアップする。

 まずは次のコマンドでSuricataをダウンロードして展開する。

wget https://www.openinfosecfoundation.org/download/suricata-6.0.3.tar.gz
tar -xvf suricata-6.0.3.tar.gz suricata-6.0.3

 次のコマンドでSuricataをインストールする。

cd suricata-6.0.3/
./configure –prefix=/usr –sysconfdir=/etc –localstatedir=/var –enable-nfqueue –enable-lua
make
sudo make install

 インストールが終わったら、不正な通信の検知に使うルール(シグネチャー)をインストールする。このシグネチャーは常に最新のものにしておく必要がある。そうしないと、最新のマルウエアの通信を見逃す可能性が高まる。次のコマンドでインストールする。

sudo suricata-update

 これでSuricataのセットアップは完了した。なお、2021年8月3日時点のシグネチャーには30149個のルールが登録されていた。

 最後に、監視したいインターフェース名を指定してSuricataを起動すれば利用できるようになる。

負荷トラフィックを徐々に高めていく

 今回の実験では、2020年9月11日に公開されたActive Directoryに存在した特権昇格の脆弱性(Zerologon、CVE-2020-1472)を突く攻撃の通信を検知できるかを確認した。攻撃テストツールにはMetasploitを利用した。

 ラズパイはネットワークのインラインではなく、LANスイッチのミラーポートに接続した。そしてMetasploitを使って攻撃の通信だけを開始して、それを検知できるかを試した。その結果、SuricataのログからCVE-2020-1472の通信を検知したと確認できた。

Suricataのログから不正な通信を検知したことが確認できた
Suricataのログから不正な通信を検知したことが確認できた
[画像のクリックで拡大表示]

 次に負荷がある状態で不正な通信を検知できるかの実験を行った。通常のネットワーク環境では、多くの通信が発生している中に不正な通信が紛れ込んでいるからだ。今回はiPerfというツールを使って、UDPの負荷トラフィックを発生させた。

 負荷トラフィックは、200Mbps、500Mbps、800Mbps、1Gbpsと徐々に大きくしていった。その結果は以下の通りだ。

負荷トラフィック別の不正な通信の検知結果
ラズパイで構築したIDSによるもの。
負荷トラフィック検知結果
200Mbps
500Mbps
800Mbps
1Gbps(=1000Mbps)

 今回の実験では、1Gbpsの負荷でも不正な通信を検知できた。ただ実際の業務に使うネットワーク環境で使用するときは、何かトラブルにつながる可能性があるため慎重に進めてほしい。

 なお、今回はラズパイに液晶パネルを取り付けて、不正な通信を検知しときは警告を表示するようにした。ここまでのシステムを構築するのにかかった費用は1万4355円で、かかった時間は2時間ほどだった。

液晶パネルを取り付けて警告を表示できるようにした。ここまで作って、かかった費用は1万5000円以内だった
液晶パネルを取り付けて警告を表示できるようにした。ここまで作って、かかった費用は1万5000円以内だった
[画像のクリックで拡大表示]