pcapでキャプチャされたIPパケットは、それらを受け入れるか拒否するイベントエンジンに転送されます。 受け入れられたパケットは、ポリシースクリプトインタープリタに転送されます。
イベントエンジンは、ライブまたは記録されたネットワークトラフィックまたはトレースファイルを分析して、ニュートラルイベントを生成します。 「何か」が発生したときにイベントを生成します。 これは、初期化の直後やZeekプロセスの終了直前などのZeekプロセスによって引き起こされるだけでなく、ZEEKがHTTP要求や新しいTCP接続を目撃するなど、分析されているネットワーク(またはトレースファイル)上で行われる何かによって引き起こされる可能性があります。 Zeekは、ネットワークプロトコルを解釈する際に最良の推測をするために、共通ポートと動的プロトコル検出(シグネチャと行動分析を含む)を使用します。 イベントは、良いか悪いかではなく、単に何かが起こったことをスクリプトランドに信号を送るという点で、政策中立です。
イベントは、イベントを分析してアクションポリシーを作成するポリシースクリプトによって処理されます。 スクリプトはTuring complete Zeekスクリプト言語で書かれています。 デフォルトでは、Zeekは単にイベントに関する情報をファイルにログに記録します(zeekはバイナリ出力でのイベントのログ記録もサポートしています)が、電子メールの送信、警告の発生、システムコマンドの実行、内部メトリクスの更新、別のZeekスクリプトの呼び出しなど、他のアクションを実行するように設定することができます。 デフォルトの動作では、アプリケーションイベント情報だけでなく、NetFlowのような出力(connログ)も生成されます。 Zeekスクリプトは、zeekポリシースクリプト内で使用するために、ブラックリストなどの外部ファイルからデータを読み取ることができます。
Zeek analyzersEdit
ほとんどのZeekアナライザは、付随するポリシースクリプトを備えたZeekのイベントエンジンにあります。 ポリシースクリプトは、ユーザーがカスタマイズできます。 アナライザは、アプリケーション層の復号化、異常検出、署名のマッチング、および接続解析を実行します。 Zeekは容易に付加的な検光子を組み込むように設計されていた。 Zeekに含まれるアプリケーション層アナライザの中には、HTTP、FTP、SMTP、DNSなどがあります。 他の非アプリケーション層アナライザには、ホストまたはポートスキャン、中間ホストおよびsynフラッドを検出するアナライザが含まれます。 Zeekはまた署名の検出を含み、Snortの署名の輸入を可能にする。