ネットワーク上の問題のあるユーザーを特定しようとしています。 ntopは、トラフィックが多く接続が多いユーザーを識別しますが、マルウェアが実際に問題を起こすために、必ずしも高帯域幅を必要とするわけではありません。そのため、snortを使用してオフライン分析を実行しようとしています(20 Mbpsトラフィックのインライン分析でルーターに負担をかけたくない)。どうやらsnortはこの目的のために-r
オプションを提供しているようですが、分析を実行することができません。
分析システムは、違いが生じる場合に備えて、gentoo、AMD64です。私はすでにoinkmasterを使用して最新のIDS署名をダウンロードしました。しかし、snortを実行しようとすると、次のエラーが発生し続けます。
% snort -V
,,_ -*> Snort! <*-
o" )~ Version 2.9.0.3 IPv6 GRE (Build 98) x86_64-linux
'''' By Martin Roesch & The Snort Team: http://www.snort.org/snort/snort-team
Copyright (C) 1998-2010 Sourcefire, Inc., et al.
Using libpcap version 1.1.1
Using PCRE version: 8.11 2010-12-10
Using ZLIB version: 1.2.5
%> snort -v -r jan21-for-snort.cap -c /etc/snort/snort.conf -l ~/snortlog/
(をちょきちょきと切る)
273 out of 1024 flowbits in use.
[ Port Based Pattern Matching Memory ]
+- [ Aho-Corasick Summary ] -------------------------------------
| Storage Format : Full-Q
| Finite Automaton : DFA
| Alphabet Size : 256 Chars
| Sizeof State : Variable (1,2,4 bytes)
| Instances : 314
| 1 byte states : 304
| 2 byte states : 10
| 4 byte states : 0
| Characters : 69371
| States : 58631
| Transitions : 3471623
| State Density : 23.1%
| Patterns : 3020
| Match States : 2934
| Memory (MB) : 29.66
| Patterns : 0.36
| Match Lists : 0.77
| DFA
| 1 byte states : 1.37
| 2 byte states : 26.59
| 4 byte states : 0.00
+----------------------------------------------------------------
[ Number of patterns truncated to 20 bytes: 563 ]
ERROR: Can't find pcap DAQ!
Fatal Error, Quitting..
net-libs/daqがインストールされていますが、トラフィックをキャプチャすることすらしたくありません。キャプチャファイルを処理するだけです。
リアルタイムキャプチャの代わりにオフライン分析を行うには、どの構成オプションを設定/設定解除する必要がありますか?
私はGentooに特に精通していませんが、「-daq-list」フラグを使用して、Snortが認識するDAQモジュール(ある場合)を確認することができます。
例えば:
# snort --daq-list
Available DAQ modules:
pcap(v3): readback live multi unpriv
ipfw(v2): live inline multi unpriv
dump(v1): readback live inline multi unpriv
afpacket(v4): live inline multi unpriv
次に、「-daq-dir」フラグを使用して、SnortがDAQライブラリを含むディレクトリを指すようにします。
snort -v -r jan21-for-snort.cap -c /etc/snort/snort.conf -l ~/snortlog/ --daq-dir /usr/local/lib/daq/
私はいつもこれをします:
これをbashスクリプトに入れて実行可能にし(chmod + x script.sh)、実行します。
#!/usr/bin/env bash
modprobe dummy
lsmod | grep dummy
ip link set name eth10 dev dummy0
ip link show eth10
ifconfig eth10 hw ether 00:22:22:ff:ff:ff
ip link show eth10
ip addr add 192.168.100.199/24 brd + dev eth10 label eth10:0
ifconfig eth10 up
ifconfig eth10 promisc
tcpreplay
を取得して実行します。
Sudo tcpreplay -i eth10 -T nano mypcap.pcap
鼻を嗅ぐ:
Sudo snort -i eth10 -u snort -g snort -c /etc/snort/snort.conf
修正内容は完全にはわかりませんが、snortをコンパイルするために指定されたUSEフラグに関連している可能性があります。これは次のように報告されます [〜#〜] post [〜#〜] 私が思う投稿には一時的な解決策も含まれています。
別のディストリビューション/ウィンドウを使用するか、GentooフォーラムでSnortのビルドの問題について質問することをお勧めします。