Zeek は、無料のオープンソースのネットワーク分析フレームワークです。Vern Paxson は1995 年にローレンス・バークレー国立研究所で Zeek の開発を開始しました。[ 3 ] Zeek はネットワークセキュリティモニタ (NSM) ですが、ネットワーク侵入検知システム(NIDS)としても使用できます。[ 4 ] Zeek プロジェクトは、BSD ライセンスの下でソフトウェアをリリースしています。
Zeekの目的は、ネットワークトラフィックを検査し、検出されたアクティビティを記述するさまざまなログを生成することです。[ 5 ]ログファイルの完全なリストは、プロジェクトのドキュメントサイトで入手できます。[ 6 ]
以下は、conn.log からのJSON形式のエントリの例です。 [ 7 ]
{ "ts" : 1554410064 .698965 , "uid" : "CMreaf3tGGK2whbqhh" , "id.orig_h" : "192.168.144.130" , "id.orig_p" : 64277 , "id.resp_h" : "192.168.144.2" , "id.resp_p" : 53 , "proto" : "udp" , "service" : "dns" , "duration" : 0.320463 , "orig_bytes" : 94 , "resp_bytes" : 316 , "conn_state" : "SF" , "missed_bytes" : 0 , "history" : "Dd" 、"orig_pkts" : 2 、"orig_ip_bytes" : 150 、"resp_pkts" : 2 、"resp_ip_bytes" : 372 、"tunnel_parents" : [] }Zeekの主な用途の1つは、サイバー脅威のハンティングです。[ 8 ]
主任著者のパクソンは、当初、ジョージ・オーウェルの小説『1984年』に登場するビッグ・ブラザーへの警告として、このソフトウェアを「Bro」と名付けた。2018年、プロジェクトリーダーシップチームはソフトウェアの名前を変更することを決定した。 1990年代にLBNLで開発者たちは「zeek」という擬似ユーザーとしてセンサーを実行しており、これが2018年の名前変更のきっかけとなった。[ 9 ]
セキュリティチームは、ネットワーク上で可視化したい場所を特定します。トラフィックにアクセスするために、 1 つ以上のネットワークタップを展開するか、スイッチの SPAN ポートを有効にしてポートミラーリングを行います。これらの可視化ポイントにアクセスできるサーバーに Zeek を展開します。 [ 10 ]サーバー上の Zeek ソフトウェアは、ネットワークトラフィックをログとして解読し、ローカルディスクまたはリモートストレージに書き込みます。[ 11 ]
Zeekのイベントエンジンは、ライブまたは記録されたネットワークトラフィックを分析して、中立的なイベントログを生成します。Zeekは、一般的なポートと動的なプロトコル検出(シグネチャと動作分析を含む)を使用して、ネットワークプロトコルを識別します。[ 12 ]
開発者は、チューリング完全なZeekスクリプト言語でZeekポリシースクリプトを作成します。デフォルトでは、Zeekはイベントに関する情報をファイルにログ記録しますが、アナリストは、メール送信、アラート発生、システムコマンド実行、内部メトリック更新、別のZeekスクリプト呼び出しなど、他のアクションを実行するようにZeekを設定することもできます。
Zeekアナライザーは、アプリケーション層のデコード、異常検出、シグネチャマッチング、接続分析を実行します。[ 13 ] Zeekの開発者は、追加のアナライザーを組み込むようにソフトウェアを設計しました。新しいプロトコルアナライザーを作成する最新の方法は、Spicyフレームワークに依存しています。[ 14 ]