Azure syslog クラウドサービス

Azure Sentinel

2020年3月3日

Azure Sentinel の問い合わせが多いと聞いたので少し調べてみる。

Azure Sentinel は、Azure 上の SIEM  (Security Information and Event Management) 製品。

Azure の場合は、ドキュメントがすごくわかりやすく、必要そうな情報がきちんとまとまっている気がする。

基本のドキュメントは、以下からたどれるようになっている。

Sentinel に統合できるデータ

Sentinel では、Sentinel に統合できるデータ(ログ)のソースを「データソース」と呼んでいる。

「データソース」の種類によって3つのデータの統合方法がある。

  1. Azure や Microsoft のサービスであれば、簡単に統合できる
  2. MS 製品以外からログを統合したい場合は、Azure Sentinel は、"Azure Log Analytics" というデータの入り口を持っていて、そこに API を使ってログ・データを送る事ができる。
  3. 上記とほぼ同じ仕組みになるが、"Azure Log Analytics" に対して、syslog でプロトコルで接続し、 CEF (Common Event Format) を使ってデータを送信するタイプ。

該当するドキュメントを見る限り、API を使って送り込むが CEF/syslog で送り込むかの2つ。カスタムなログを CEFなどに変換して取り込む Agent or アダプター的なものは現時点ではなさそう(多分)。

Syslog のフォーマットについて

syslog のフォーマットで CEF ?と思ったので少し調査

まず syslog のフォーマット自体が2種類ある

  • BSD 形式 RFC3164 -  規格ではなく、その時点で使われていた習慣をまとめたものとの事。RFC の前書きにも「This document describes the observed behavior of the syslog protocol (観察された動きを記述するもの) 」とある。
    PRI + HEADER + MSG   の形式

    PRI (Priority) は (Facility * 8 + Severity) で計算される。
  • IETF 形式 RFC5424  - RFC3164 を規格化したもの
    HEADER + STRUCTURED-DATA  +  MSG  の形式

    HEADER の部分は、BSDフォーマットとの互換性を保つため (provide some interoperability with older BSD-based syslog ) のもの。BSD syslog の  Facility や Severity から計算される PRI(Priority) は、Header の中の値として存在している。
    STRUCTURED-DATA は、新しく導入された仕組み。好きな情報を入れる事ができる。例として”トラフィック・カウンター”だったり”IPアドレス”などの このsyslog に関係する「メタ情報」を入れ込む事ができる。
    MSG の部分は 2048 Byte 以上は、受け手がサポートしていなかった場合、2048 Byte を超えた所を Truncate (SHOULD) か、メッセージを破棄 (MAY) する。

そして syslog 内にメッセージ部分があり、この MSG (メッセージ) の部分は、ユニーコードであれば、フリーフォーマットでメッセージを書いてもいいのだが、SIEM の世界ではここのフォーマットを規格しようという動きがあり、2つのフォーマットがメジャーである。

  • LEEF (Log Event Extended Format) 形式 - IBM QRadar 用のフォーマット UTF-8 を使用する必要がある。特定ベンダー(IBM) のフォーマットだが、ネットワーク機器が標準で対応している場合がある。
  • CEF (Common Event Format) 形式 - Security、非セキュリティベンダー関係なく一般的になっているフォーマット。
参考リンク

-Azure, syslog, クラウドサービス
-

Copyright© エンジニアの何でもメモ帳 , 2020 All Rights Reserved.