Forcepoint NGFW のログを収集する
このドキュメントでは、Bindplane を使用して Forcepoint NGFW ログを Google Security Operations に取り込む方法について説明します。パーサーは、JSON ログまたは CEF 形式のメッセージからフィールドを抽出し、Unified Data Model(UDM)に正規化して、ベンダーとプロダクトのメタデータでデータを拡充します。JSON 形式と CEF 形式の両方のログを処理し、grok パターンと条件付きロジックを使用して、ネットワーク接続の詳細、セキュリティ結果、メタデータなどの未加工のログフィールドを UDM フィールドにマッピングします。
始める前に
次の前提条件を満たしていることを確認してください。
- Google SecOps インスタンス
- Windows 2016 以降、または
systemdを使用する Linux ホスト - プロキシの背後で実行している場合は、Bindplane エージェントの要件に従ってファイアウォール ポートが開いていることを確認します。
- Forcepoint Security Management Center(SMC)への特権アクセス
Google SecOps の取り込み認証ファイルを取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [コレクション エージェント] に移動します。
- Ingestion Authentication File をダウンロードします。Bindplane をインストールするシステムにファイルを安全に保存します。
Google SecOps のお客様 ID を取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [プロファイル] に移動します。
- [組織の詳細情報] セクションから [お客様 ID] をコピーして保存します。
Bindplane エージェントをインストールする
次の手順に沿って、Windows または Linux オペレーティング システムに Bindplane エージェントをインストールします。
Windows のインストール
- 管理者として コマンド プロンプトまたは PowerShell を開きます。
次のコマンドを実行します。
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Linux のインストール
- root 権限または sudo 権限でターミナルを開きます。
次のコマンドを実行します。
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
その他のインストール リソース
- その他のインストール オプションについては、こちらのインストール ガイドをご覧ください。
Syslog を取り込んで Google SecOps に送信するように Bindplane エージェントを構成する
構成ファイルにアクセスします。
config.yamlファイルを見つけます。通常、Linux では/etc/bindplane-agent/ディレクトリに、Windows ではインストール ディレクトリにあります。- テキスト エディタ(
nano、vi、メモ帳など)を使用してファイルを開きます。
config.yamlファイルを次のように編集します。receivers: tcplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: YOUR_CUSTOMER_ID endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'FORCEPOINT_FIREWALL' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - tcplog exporters: - chronicle/chronicle_w_labels- 自社のインフラストラクチャでの必要性に応じて、ポートと IP アドレスを置き換えます。
<CUSTOMER_ID>は、実際の顧客 ID に置き換えます。/path/to/ingestion-authentication-file.jsonの値を、Google SecOps の取り込み認証ファイルを取得するで認証ファイルを保存したパスに更新します。
Bindplane エージェントを再起動して変更を適用する
Linux で Bindplane エージェントを再起動するには、次のコマンドを実行します。
sudo systemctl restart bindplane-agentWindows で Bindplane エージェントを再起動するには、Services コンソールを使用するか、次のコマンドを入力します。
net stop BindPlaneAgent && net start BindPlaneAgent
Forcepoint NGFW で Syslog 転送を構成する
- Forcepoint Security Management Center(SMC)にログインします。
- [構成> ログサーバー> プロパティ] に移動します。
- [ログ転送] セクションに移動します。
- [追加] をクリックして、新しい転送ルールを作成します。
- 次の構成の詳細を指定します。
- 名前: わかりやすい名前を入力します(例:
Google SecOps BindPlane Syslog)。 - ホスト: Bindplane エージェントの IP アドレスを入力します。
- ポート: Bindplane エージェントのポート番号(例:
514)を入力します。 - プロトコル: 実際の Bindplane エージェントの構成に応じて、[TCP] または [UDP] を選択します。
- 形式: [JSON] を選択します。
- 名前: わかりやすい名前を入力します(例:
- 転送するログフィールドを構成します。
- [フィールドを選択] をクリックするか、フィールド選択の構成にアクセスします。
- 要件に応じて、関連するログフィールドを選択します。セキュリティ分析には、通常、次のフィールドが必要です。
TIMESTAMP(作成日時)LOG_ID(データ ID)EVENT(イベント)EVENT_ID(イベント ID)SRC(送信元アドレス)DST(宛先アドレス)Sport(送信元ポート)Dport(宛先ポート)PROTOCOL(プロトコル)SERVICE(サービス)RULE_ID(ルールタグ)ACTION(アクション)NAT_SRC、NAT_DST、NAT_SPORT、NAT_DPORT(NAT フィールド)ACC_RX_BYTES、ACC_TX_BYTES、ACC_ELAPSED(会計フィールド)NODE_ID(送信者)COMP_ID(コンポーネント ID)FACILITY(施設)INFO_MSG(情報メッセージ)SITUATION(状況)APPLICATION(アプリケーション)
- エクスポート可能なフィールドの完全なリストについては、Forcepoint NGFW エクスポート可能なファイアウォールとレイヤ 2 ファイアウォールのログエントリ フィールドのドキュメントをご覧ください。
- [イベント] セクションに移動し、[すべて] を選択します。
- 構成を保存します。
- 変更をログサーバーに適用します。
UDM マッピング テーブル
| ログフィールド | UDM マッピング | ロジック |
|---|---|---|
AccElapsed |
network.session_duration.seconds |
空でないか 0 でない場合、AccElapsed から直接マッピングされます。整数に変換されます。 |
AccRxBytes |
network.received_bytes |
AccRxBytes から直接マッピングされます。符号なし整数に変換されます。 |
AccTxBytes |
network.sent_bytes |
AccTxBytes から直接マッピングされます。符号なし整数に変換されます。 |
Action |
security_result.action_details |
Action から直接マッピングされます。 |
Action |
security_result.action |
Action が「Allow」の場合、「ALLOW」に設定します。Action が「Discard」の場合、「BLOCK」に設定します。 |
CompId |
target.hostname |
CompId から直接マッピングされます。 |
Dport |
target.port |
0 でない場合、Dport から直接マッピングされます。整数に変換されます。 |
Dst |
target.ip |
Dst から直接マッピングされます。 |
Event |
metadata.product_event_type |
Event から直接マッピングされます。 |
Facility |
metadata.description |
Facility から直接マッピングされます。 |
InfoMsg |
security_result.description |
InfoMsg から直接マッピングされます。 |
LogId |
metadata.product_log_id |
LogId から直接マッピングされます。 |
NatDport |
target.nat_port |
0 でない場合、NatDport から直接マッピングされます。整数に変換されます。 |
NatDst |
target.nat_ip |
NatDst から直接マッピングされます。 |
NatSport |
principal.nat_port |
0 でない場合、NatSport から直接マッピングされます。整数に変換されます。 |
NatSrc |
principal.nat_ip |
NatSrc から直接マッピングされます。 |
NodeId |
intermediary.ip |
Src または Dst と NodeId の両方が存在する場合、NodeId から直接マッピングされます。 |
NodeId |
principal.ip |
NodeId が存在し、Src と Dst が存在しない場合は、NodeId から直接マッピングされます。 |
Protocol |
network.ip_protocol |
Protocol からマッピングされます。まず、Protocol を整数に変換し、ルックアップを使用して数値をプロトコル名(6 は TCP になります)。 |
RuleId |
security_result.rule_id |
RuleId から直接マッピングされます。 |
Service |
principal.application |
「Dest. ServiceUnreachable(Port Unreachable)」と表示されます。 |
Service |
network.application_protocol |
Service が「HTTP」または「HTTPS」の場合は、Service の値に設定します。Service に「DNS」が含まれている場合は、「DNS」に設定します。 |
Service |
metadata.event_type |
Service が「HTTP」または「HTTPS」の場合は、metadata.event_type を「NETWORK_HTTP」に設定します。 |
Situation |
security_result.summary |
Situation から直接マッピングされます。 |
Sport |
principal.port |
0 でない場合、Sport から直接マッピングされます。整数に変換されます。 |
Src |
principal.ip |
Src から直接マッピングされます。 |
Timestamp |
metadata.event_timestamp |
日付として解析された後、Timestamp から直接マッピングされます。 |
Type |
security_result.severity_details |
Type から直接マッピングされます。 |
Type |
security_result.severity |
Type が「Notification」の場合は、「LOW」に設定します。Src または NodeId と Dst または CompId が存在する場合は、「NETWORK_CONNECTION」に設定します。principal.ip のみが存在する場合は、「STATUS_UPDATE」に設定されます。それ以外の場合は、「GENERIC_EVENT」に設定されます。「FORCEPOINT_FIREWALL」に設定されます。「FORCEPOINT FIREWALL」に設定します。「FORCEPOINT」に設定します。 |
rt |
metadata.event_timestamp |
CEF ブロックで日付として解析された後、rt から直接マッピングされます。 |
act |
security_result.action_details |
CEF ブロックの act から直接マッピングされます。 |
app |
principal.application |
CEF ブロックの app から直接マッピングされます。 |
deviceFacility |
metadata.description |
CEF ブロックの deviceFacility から直接マッピングされます。 |
destinationTranslatedAddress |
target.nat_ip |
CEF ブロックの destinationTranslatedAddress から直接マッピングされます。 |
destinationTranslatedPort |
target.nat_port |
CEF ブロックの destinationTranslatedPort から直接マッピングされます。 |
dst |
target.ip |
CEF ブロックの dst から直接マッピングされます。 |
dpt |
target.port |
CEF ブロックの dpt から直接マッピングされます。 |
dvchost |
intermediary.ip |
CEF ブロックの dvchost から直接マッピングされます。 |
event_name |
metadata.product_event_type |
CEF ブロックの event_name から直接マッピングされます。 |
msg |
security_result.description |
CEF ブロックの msg から直接マッピングされます。 |
proto |
network.ip_protocol |
proto からマッピングされます。まず、proto を整数に変換し、ルックアップを使用して数値をプロトコル名(6 が TCP になります)。 |
sourceTranslatedAddress |
principal.nat_ip |
CEF ブロックの sourceTranslatedAddress から直接マッピングされます。 |
sourceTranslatedPort |
principal.nat_port |
CEF ブロックの sourceTranslatedPort から直接マッピングされます。 |
spt |
principal.port |
CEF ブロックの spt から直接マッピングされます。 |
src |
principal.ip |
CEF ブロックの src から直接マッピングされます。 |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。