0

私はスクリプティングの専門家ではなく、ファイアウォールトラフィックのWindowsセキュリティイベントログを分析するための小さな要件があります。

そのために、LogParserを調べ始めました。必要なことはほとんどすべて実行されているようですが、ログから抽出された特定の値をより読みやすいものに置き換える方法を見つけるのに少し苦労しています。

私のスクリプトは非常に単純です:

SELECT
TimeGenerated AS Time,
EventTypeName AS Event,
EXTRACT_TOKEN(Strings, 0,'|') AS ProcessID,
EXTRACT_TOKEN(Strings, 1,'|') AS Process,
EXTRACT_TOKEN(Strings, 7,'|') AS Protocol,
EXTRACT_TOKEN(Strings, 2,'|') AS Direction,
EXTRACT_TOKEN(Strings, 3,'|') AS SourceAddress,
EXTRACT_TOKEN(Strings, 4,'|') AS SourcePort,
EXTRACT_TOKEN(Strings, 5,'|') AS DestinationAddress,
EXTRACT_TOKEN(Strings, 6,'|') AS DestinationPort
FROM Security
WHERE EventID IN (5152; 5153; 5154; 5155; 5156; 5157; 5158)

これで興味のある情報が得られますが、できれば出力を変えてみたいと思います。たとえば、「プロセス」列の出力は次のとおりです。

\ device \ harddiskvolume2 \ apps \ mozilla \ fx-4 \ firefox.exe

私が本当に望んでいるのは、パスなしでプロセス名を表示することです。同様に、「プロトコル」列には、プロトコルの数値が表示されます。私はそれが「実際の」プロトコルを表示することを好みます。

最後に、Direction列に数値%%14592と%%14593が表示されます。それぞれ、InとOutを表示したいと思います。

誰かが助けてくれるなら、私は最も感謝するでしょう。

ありがとう

4

1 に答える 1

0

ファイル名の質問について、 EXTRACT_FILENAME(EXTRACT_TOKEN(Strings, 1,'|')) AS プロセスは機能しますか?

あなたの他の問題については、どうですか:

CASE EXTRACT_TOKEN(文字列, 2,'|') WHEN '%%14592' THEN 'IN' ELSE 'OUT' END As Direction

于 2011-04-04T20:46:58.637 に答える