BlueCat DDI ログを収集する
以下でサポートされています。
Google SecOpsSIEM
このパーサーは、Bluecat DDI(DNS、DHCP、IPAM)からの LEEF 形式と非 LEEF 形式の Syslog メッセージを処理します。grok パターンと条件付きロジックを使用して、さまざまなログタイプ(named、dhcpd、audit、CRON など)からフィールドを抽出し、ログタイプに基づいて UDM にマッピングし、DNS、DHCP、ユーザー関連のフィールドに入力します。
始める前に
- Google Security Operations インスタンスがあることを確認します。
- Windows 2016 以降、または systemd を使用した Linux ホストを使用していることを確認します。
- プロキシの背後で実行している場合は、ファイアウォールのポートが開いていることを確認します。
- Bluecat への特権アクセス権があることを確認します。
Google SecOps 取り込み認証ファイルを取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定 > 収集エージェント] に移動します。
- 取り込み認証ファイルをダウンロードします。
Google SecOps のお客様 ID を取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [プロファイル] に移動します。
- [組織の詳細] セクションから [お客様 ID] をコピーして保存します。
BindPlane Agent をインストールする
- Windows へのインストールの場合は、次のスクリプトを実行します。
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
- Linux へのインストールの場合は、次のスクリプトを実行します。
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
- その他のインストール オプションについては、こちらのインストール ガイドをご覧ください。
Syslog を取り込んで Google SecOps に送信するように BindPlane エージェントを構成する
- BindPlane がインストールされているマシンにアクセスします。
config.yaml
ファイルを次のように編集します。receivers: tcplog: # Replace the below port <54525> and IP <0.0.0.0> with your specific values listen_address: "0.0.0.0:54525" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the creds location below according the placement of the credentials file you downloaded creds: '{ json file for creds }' # Replace <customer_id> below with your actual ID that you copied customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # You can apply ingestion labels below as preferred ingestion_labels: log_type: SYSLOG namespace: bluceat_ddi raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - tcplog exporters: - chronicle/chronicle_w_labels
BindPlane エージェントを再起動して変更を適用します。
sudo systemctl restart bindplane
Bluecat DDI で Syslog を構成する
- Bluecat Address Manager(BAM)にログインします。
- [構成] メニューから構成を選択します。
- [Servers] タブを選択します。
- [サーバー] で BDDS の名前をクリックします。
- サーバーの [詳細] タブが開きます。
- サーバー名メニューをクリックします。
- [Service Configuration] を選択します。
- [Service Type> Syslog] をクリックします(アドレス マネージャーがサーバーにクエリを実行し、現在の値を返します)。
- [全般] で、次の値を設定します。
- Syslog Server: Syslog サーバー(Bindplane)の IP アドレス。
- Syslog Port: Syslog サーバー(Bindplane)のポート。
- Syslog Transport: Bindplane の構成に応じて、[TCP] または [UDP] を選択します。
- [追加] をクリックします。
- 新しく追加した Syslog サーバーがリストに表示されます。
- [更新] をクリックします。
BlueCat DDI で Syslog 設定を構成する
- BlueCat Address Manager にログインします。
- [構成] > [システム設定] > [ロギング] に移動します。
- [Logging Settings] で、[Syslog Servers] セクションを見つけます。
- [Add Syslog Server] をクリックします。
- 必要な値を指定します。
- サーバー名: syslog サーバーの一意の名前(BindplaneServer など)。
- IP アドレス: syslog サーバーの IP アドレスまたはホスト名。
- プロトコル: TCP、UDP(デフォルト)、または TLS(Syslog 構成に基づく)を選択します。
- ポート: syslog 通信のポート(デフォルト: UDP/TCP の場合は 514、TLS の場合は 6514)を指定します。
- [Logging Level] を構成します。ニーズに応じて適切なレベルを選択します。次のようなオプションがあります。
- 緊急: 直ちに対応が必要な重大な問題
- アラート: 迅速な対応が必要なアラート
- 重大: 重大な状態
- Error: エラーイベント
- 警告: 警告イベント
- お知らせ: 正常だが重大なイベント
- 情報: 情報メッセージ
- デバッグ: 詳細なデバッグ情報
- 省略可: ログを分類するカスタム Syslog 施設を追加します(local0 や local1 など)。
- 構成を保存します。
DDI アプライアンスに Syslog 設定を適用する
- [サーバー] > [サーバー管理] に移動します。
- syslog を有効にする DNS/DHCP サーバーを選択します。
- [サーバーを編集] をクリックします。
- [ロギング] セクションで次の操作を行います。
- 前に構成した syslog サーバーを選択します。
- 特定のサービス(DNS クエリや DHCP リースなど)のロギングを有効にします。
- 変更を保存します。
UDM マッピング テーブル
ログフィールド | UDM マッピング | ロジック |
---|---|---|
client_ip |
network.dhcp.ciaddr |
DHCPREQUEST メッセージから抽出されます。DHCPREQUEST メッセージの場合のみ入力されます。 |
client_mac |
principal.mac |
DHCP メッセージ(DHCPDISCOVER、DHCPREQUEST、DHCPRELEASE)から抽出されます。 |
client_mac |
target.mac |
DHCP メッセージ(DHCPOFFER、DHCPNAK)から抽出されます。 |
client_mac |
network.dhcp.chaddr |
DHCP メッセージ(DHCPREQUEST、DHCPOFFER、DHCPACK、DHCPNAK、DHCPRELEASE)から抽出されます。 |
cmd |
target.process.command_line |
CRON ログから抽出されます。アンパサンドとスペースは削除されます。 |
description |
metadata.description |
さまざまなログタイプから抽出され、追加のコンテキストを提供します。 |
description |
metadata.description |
syslog-ng ログから抽出され、追加のコンテキストを提供します。 |
file_path |
target.file.full_path |
さまざまなログタイプから抽出され、ファイルのフルパスを表します。 |
file_path |
target.process.file.full_path |
agetty ログから抽出されたもので、プロセスに関連するファイルのフルパスを表します。 |
inner_message |
metadata.description |
オペレーション タイプが定義されていない場合の GENERIC_EVENT の説明と、MEM-MON ログに使用されます。 |
metadata.event_type |
ログタイプとコンテンツに基づいてパーサーによって決定されます。有効な値は、NETWORK_DNS、NETWORK_DHCP、USER_LOGIN、USER_LOGOUT、USER_UNCATEGORIZED、GENERIC_EVENT、STATUS_UPDATE、NETWORK_CONNECTION です。常に「BLUECAT_DDI」です。 | |
metadata.vendor_name |
常に「Bluecat Networks」です。 | |
metadata.product_name |
常に「Bluecat DDI」です。 | |
metadata.event_timestamp |
ログエントリの解析されたタイムスタンプからコピーされます。 | |
network.protocol |
DNS ログの場合は「DNS」、DHCP ログの場合は「DHCP」に設定します。 | |
network.dns.answers |
回答レコードを含む配列。answers 内の data フィールドには、target_ip が存在する場合は target_ip が入力されます。 |
|
network.dns.questions |
質問レコードを含む配列。name フィールドには target_host が設定され、type フィールドは query_type フィールドまたは question_type フィールドから派生し、class フィールドは qclass フィールドから派生します。 |
|
network.dns.recursive |
rec_flag が「+」の場合は「true」に設定します。 |
|
qclass |
network.dns.questions.class |
DNS クエリログから抽出され、dns_query_class_mapping.include ファイルを使用して整数値にマッピングされます。 |
query_type |
network.dns.questions.type |
DNS クエリログから抽出され、dhcp_qtype_mapping.include ファイルを使用して整数値にマッピングされます。 |
relay_ip |
intermediary.ip |
DNS ログと DHCP ログから抽出されます。リレー サーバーまたは中間サーバーの IP アドレスを表します。 |
server_host |
target.hostname |
さまざまなログタイプから抽出され、サーバーのホスト名を表します。 |
server_host |
network.dhcp.sname |
DHCP ログから抽出されたもので、サーバー ホスト名を表します。 |
server_host |
principal.hostname |
systemd、agetty、一部の監査ログから抽出され、プリンシパルのホスト名を表します。 |
server_ip |
target.ip |
LEEF 形式のログから抽出されたもので、サーバーの IP アドレスを表します。 |
src_ip |
principal.ip |
さまざまなログタイプから抽出され、送信元 IP アドレスを表します。 |
src_ip |
network.dhcp.yiaddr |
DHCPINFORM メッセージで yiaddr フィールドに値を設定するために使用されます。 |
src_port |
principal.port |
さまざまなログタイプから抽出され、送信元ポートを表します。 |
src_user |
principal.user.userid |
CRON と監査ログから抽出され、ユーザー ID を表します。 |
target_host |
target.hostname |
さまざまなログタイプから抽出され、ターゲット ホスト名を表します。 |
target_host |
network.dns.questions.name |
DNS ログでクエリ名を入力するために使用されます。 |
target_ip |
target.ip |
さまざまなログタイプから抽出され、ターゲット IP アドレスを表します。 |
target_ip |
network.dhcp.ciaddr |
BOOTREQUEST メッセージで ciaddr フィールドに値を設定するために使用されます。 |
target_ip |
network.dns.answers.data |
DNS ログで回答データを入力するために使用されます。 |
tgt_port |
target.port |
syslog-ng ログから抽出され、ターゲット ポートを表します。 |
変更点
2022-11-08
- log_type が「agetty」、「syslog-ng」、「systemd」の新しい取り込まれたログに grok を追加しました。
- log_type の grok パターン(「named」、「systemd」、「CRON」、「agetty」、「syslog-ng」)と、上記の log_type のフィールドのそれぞれのマッピングを追加しました。
2022-09-01
- 汎用イベントの割合を減らすため、
event_type
を「GENERIC_EVENT」から「USER_UNCATEGORIZED」に変更しました。
2022-08-16
- UDM マッピングを追加しました
metadata.vendor_name
を「Bluecat Networks」に変更metadata.product_name
を「Bluecat DDI」に変更
2022-05-05
query_type
フィールドのチェックを追加しました。