8

でキャプチャされたネットワーク トラフィックを処理する必要があることに気付きましたtcpdump。トラフィックを読み取るのは難しくありませんが、トラフィックのどこに「スパイク」があるかを見つけるのは少し難しいです。私は主に TCP SYN パケットに関心があり、特定の宛先ポートのトラフィックが急激に増加する日を見つけたいと考えています。処理するデータがかなりあります (約 1 年)。

私がこれまでに試したことは、指数移動平均を使用することです。これは、いくつかの興味深い測定値を取得するのに十分でしたが、私が見たものを外部データ ソースと比較すると、物事にフラグを立てるには少し積極的すぎるようです。異常な。

私が読んだいくつかの論文にはリソースの使用状況をそのようにモデル化することに成功し、成功を収めました。

それで、誰かがこの種のことを読んで読むための良い方法や場所を知っていますか.

私が使用している移動平均は、おおよそ次のようになります。

avg = avg+0.96*(new-avg)

avgEMAでありnew、新しい尺度であること。どのしきい値を使用するか実験してきましたが、「新しい値を重み付けする前に、平均よりも所定の係数を高くする必要がある」と「少なくとも 3 倍高くする必要がある」を組み合わせて、悪い結果を最小限に抑えることがわかりました。

4

2 に答える 2

5

これは、侵入検知に関する文献で広く研究されています。これは、特に tcpdump データを分析して関連する洞察を得る方法を示す、この問題に関する重要な論文です。

これは論文です: http://www.usenix.org/publications/library/proceedings/sec98/full_papers/full_papers/lee/lee_html/lee.htmlここでは RIPPER ルール導入システムを使用しています。 http://www.newty.de/pnc2/またはhttp://www.data-miner.com/rik.htmlなどの新しいもの用の 1 つ

于 2010-02-08T14:12:29.123 に答える
4

2 つのローパス フィルターをデータに適用します。1 つは長い時定数 (T1) で、もう 1 つは短い時定数 (T2) です。次に、これら 2 つのフィルターからの出力の大きさの差を調べ、それが特定のしきい値 K を超えると、それがスパイクになります。最も難しいのは、T1、T2、および K を調整して、誤検知が多すぎないようにし、小さなスパイクを見逃さないようにすることです。

以下は、単極 IIR ローパス フィルターです。

new = k * old + (1 - k) * new

k の値は時定数を決定し、通常は 1.0 に近くなります (ただし、もちろん < 1.0)。

このような 2 つのフィルターを異なる時定数で並列に適用することをお勧めします。たとえば、一方 (短い時定数) では k = 0.9、もう一方 (長い時定数) では k = 0.99 と言ってから、大きさの違いを調べます。彼らの出力で。ほとんどの場合、マグニチュードの差は小さくなりますが、スパイクがあると大きくなります。

于 2010-02-08T14:06:00.523 に答える