第 7 章 セキュリティイベント・ログの可視化手法 69
7.4 実装
要がある.周囲との平均をとることで,1つの期間でしか発生していないセキュリティ イベントも認識が容易となる.Eiと,その周囲とで得られた平均をAiとする.
Ai =
i+2P
j=i−2
Ej
5 (3≤i≤n−2) (7.2)
Aiを得られた後,最終的な視覚化における強調度を決定する.強調度は0から1の 間の割合として求める.i番目の期間の強調度Piは,式7.3によって算出する.E¯以上 と未満によって算出方法が異なり,それぞれE¯からEmまでの割合と0からE¯までの 割合を求め,その後Hu,Hlと乗算する.そして,双方最後に(Hu+Hl)によって除算 し,(Hu+Hl)に対する割合Piを求める.
Pi =
(Ai−E)H¯ u Em−E¯ +Hl
Hu+Hl Ai ≥Eの場合¯ AiHl
E(H¯ u+Hl) Ai <Eの場合¯
(7.3)
Piによって,各細分化された期間の視覚化について図7.3に示す.各∆tにはそれぞ れ幅1ピクセル,高さhピクセルの視覚化領域が割り当てられている.本実装ではこ の視覚化領域の中心から[hPi
2 ]ピクセルだけ,上下に向かって色を描画する.Piが0で ない限りはセキュリティイベント発生の見落としを割けるために,かならず1ピクセ ル以上は描画する.この方法にもとづき,全ての∆tを描画することによって量的変化 の発見やパターン発見を実現する.
7.4 実装
第7.3節の設計をもとに,Security Event Log VisualizerとしてBishopを実装した.
本節ではBishopの詳細な実装について述べる.
7.4.1 システム構成
Bishopでは視覚化した情報を表示するためのユーザインターフェースとして,Web
ブラウザを利用している.Hyper Text Markup Language (HTML)[62]を表示するWeb ブラウザは様々なOSにおいて実装されているため,管理者はOSを意識せずにBishop を使用できる.Bishopの具体的なシステム構成を図7.4に示す.BishopはHTTPサー バから実行されるCommon Gateway Interface (CGI)として動作する.実装にはC言 語を用い,描画ライブラリとしてGD Graphics Library (libgd)[63]を利用した.C言
7.4. 実装 第 7章 セキュリティイベント・ログの可視化手法
図 7.3: 計算結果を用いた視覚化
語の標準出力によってHTMLを生成し,視覚化した画像情報をlibgdによってGIFイ メージとして出力する.HTML中に生成したイメージを表示させるUniform Resource
Identifiers (URI)を記述し,テキストによるセキュリティイベント名などの情報と画像
情報を同時に出力する.
Bishopはインターフェースの視覚化エンジンの他には,主にデータ取得エンジンと
拡張機能管理機構が動作している.データ取得エンジンは1つ,あるいは複数のデー タベースやファイルからNIDSが出力したログのデータを取得する.ログの格納状態 はNIDSの実装や出力先によって様々であるため,特定形式を取得するためのプラグイ ンを必要に応じて用意する.これによって様々な形式のログを視覚化するための抽象 化がなされる.本論文執筆時点では,snortがMySQL[45]に出力したセキュリティイ ベントログおよび,S-NIDSがMySQLに出力したセキュリティイベントログを取得す るためのプラグインをそれぞれ実装している.
取得したデータは特定の形式に変換され,拡張機能管理機構に渡される.Bishopに おける拡張機能とは取得したセキュリティイベントログに,視覚化を補助するための 付加情報を与える仕組みである.例えば,本論文執筆時点では検出されたセキュリティ イベントログが外部ネットワークから内部ネットワークへのセキュリティイベント,内 部ネットワークから外部ネットワークへのセキュリティイベント,内部から内部への
7.4. 実装 第 7章 セキュリティイベント・ログの可視化手法
図 7.4: 視覚化システムの構成概要図
セキュリティイベント,外部から外部へのセキュリティイベントのいずれであるかを 判別し,結果を各セキュリティイベントログに付加する拡張機能を実装している.第
3.1節でも述べたとおり,NIDSが検知するセキュリティイベントはその送信元と送信
先によって意味が異なるため,それぞれを分けて考える機能が必要となる機能だと言 える.このような送信先,送信元の分類に限らず,OSRESで得られた結果などを付与 する機能を組み込むことで,より複雑な状況を把握可能になると考える.
7.4. 実装 第 7章 セキュリティイベント・ログの可視化手法
図 7.5: ユーザインターフェースの表示例
7.4.2 インターフェース説明
Bishopによって視覚化されたユーザインターフェースの一部を図7.5に示す.図では
右側がセキュリティイベントの名称,中央が表示されている範囲でのセキュリティイ ベント検知総数,そして左側が実際の視覚化した画像を示している.色づけされてい る各点がセキュリティイベントの発生を表しており,視覚化部分は左から右に移動す るにつれ時間が経過していることを示している.縦幅が広い部分ほど,同一セキュリ ティイベントにおいて相対的発生頻度が高い部分となっている.そのため,発生数の 高い部分が強調され,発生頻度が少なくなれば目立たなくなっており発生頻度が変化 を認識しやすい表示となっている.
視覚化の条件指定についても利用の容易さを考慮している.ユーザインターフェー スがWebブラウザなので各項目名がリンクとなっている.リンクは当該項目のみを表 示するような条件が指定されているため,クリックすれば当該項目に関連するセキュ リティイベントログだけが視覚化される.また,項目名の横にあるエクスクラメーショ ンマークは,当該項目を除外するための条件を指定したリンクとなっている.また,視 覚化された画像の一部をクリックすることによって表示期間を縮小し,より詳細に当 該部分を調査できる.
図中の例では,セキュリティイベントの送信元IPアドレスと送信先IPアドレスに よって分類する拡張機能も実装している.外部ネットワークから内部ネットワークへの セキュリティイベント(InComing),内部ネットワークから外部ネットワークへのセ キュリティイベント(OutGoing),内部から内部へのセキュリティイベント(Internal),
外部から外部へのセキュリティイベント(External)のいずれであるかを判断し,項目 の分類に利用している.InComing,OutGoing,Internal,Externalの中から必要なも のだけを抽出しての視覚化も可能となっている.