Cisco Firewall Service Module(FWSM)のログを収集する
このドキュメントでは、Bindplane を使用して Cisco Firewall Service Module(FWSM)ログを Google Security Operations に取り込む方法について説明します。パーサーは、まず Grok パターンを使用して、アプライアンスの syslog メッセージからタイムスタンプ、IP アドレス、イベントの説明などの共通フィールドを抽出します。次に、抽出された情報を標準化された統合データモデル(UDM)スキーマにマッピングし、データ型の変換、フィールド名の変更を行い、特定の値とキーワードに基づいてセキュリティ関連の分類で出力を拡充します。
始める前に
次の前提条件を満たしていることを確認してください。
- Google SecOps インスタンス
- Windows 2016 以降、または
systemd
を使用する Linux ホスト - プロキシの背後で実行している場合は、ファイアウォール ポートが開いていることを確認する
- Cisco FWSM アプライアンスへの特権アクセス
Google SecOps の取り込み認証ファイルを取得する
- Google SecOps コンソールにログインします。
- [SIEM 設定] > [収集エージェント] に移動します。
- 取り込み認証ファイルをダウンロードします。
- 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 に送信するように Bindpolane エージェントを構成する
- 構成ファイルにアクセスします。
config.yaml
ファイルを見つけます。通常、Linux では/etc/bindplane-agent/
ディレクトリに、Windows ではインストール ディレクトリにあります。- テキスト エディタ(
nano
、vi
、メモ帳など)を使用してファイルを開きます。
config.yaml
ファイルを次のように編集します。receivers: udplog: # 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: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'CISCO_FWSM' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
- 自社のインフラストラクチャでの必要性に応じて、ポートと IP アドレスを置き換えます。
<customer_id>
は、実際の顧客 ID に置き換えます。/path/to/ingestion-authentication-file.json
の値を、Google SecOps の取り込み認証ファイルを取得するで認証ファイルを保存したパスに更新します。
Bindplane エージェントを再起動して変更を適用する
Linux で Bindplane エージェントを再起動するには、次のコマンドを実行します。
sudo systemctl restart bindplane-agent
Windows で Bindplane エージェントを再起動するには、Services コンソールを使用するか、次のコマンドを入力します。
net stop BindPlaneAgent && net start BindPlaneAgent
Cisco FWSM で Syslog を構成する
- SSH またはコンソール接続を使用して Cisco FWSM にログインします。
ロギングを構成します。
logging on
ロギングレベルを構成します。
logging trap <level>
- ロギング トラップ レベルを 6(情報)に変更します。
syslog 設定を構成します。
logging host [interface] bindplane_ip_address udp[/bindplane_port]
UDM マッピング テーブル
ログフィールド | UDM マッピング | ロジック |
---|---|---|
1.1.1.1 | observer.ip | Grok パターンを使用してログ メッセージから抽出されます。 |
2.2.2.2 | principal.ip target.ip |
Grok パターンを使用してログ メッセージから抽出されます。接続の方向に基づいて、宛先 IP は principal.ip または target.ip のいずれかにマッピングされます。dst outside の場合は principal.ip にマッピングされ、それ以外の場合は target.ip にマッピングされます。 |
3.3.3.3 | principal.ip target.ip |
Grok パターンを使用してログ メッセージから抽出されます。接続の方向に基づいて、送信元 IP は principal.ip または target.ip のいずれかにマッピングされます。dst outside の場合は principal.ip にマッピングされ、それ以外の場合は target.ip にマッピングされます。 |
Apr 3 10:35:40 | このタイムスタンプは UDM でキャプチャされません。 | |
Apr 3 10:44:38 | このタイムスタンプは UDM でキャプチャされません。 | |
Apr 3 11:20:34 | このタイムスタンプは UDM でキャプチャされません。 | |
Apr 3 11:20:38 | このタイムスタンプは UDM でキャプチャされません。 | |
Apr 29 16:09:44 | このタイムスタンプは UDM でキャプチャされません。 | |
拒否 | security_result.action_details | Grok パターンを使用してログ メッセージから抽出されます。 |
拒否 | security_result.action_details | Grok パターンを使用してログ メッセージから抽出されます。 |
FWSM-3-106011 | metadata.product_event_type | Grok パターンを使用してログ メッセージから抽出されます。 |
FWSM-3-313001 | metadata.product_event_type | Grok パターンを使用してログ メッセージから抽出されます。 |
FWSM-4-106023 | metadata.product_event_type | Grok パターンを使用してログ メッセージから抽出されます。 |
FWSM-4-302010 | metadata.product_event_type | Grok パターンを使用してログ メッセージから抽出されます。 |
FWSM-4-302016 | metadata.product_event_type | Grok パターンを使用してログ メッセージから抽出されます。 |
ICMP | network.ip_protocol | Grok パターンを使用してログ メッセージから抽出され、大文字に変換されます。 |
TCP | network.ip_protocol | Grok パターンを使用してログ メッセージから抽出され、大文字に変換されます。 |
破棄 | security_result.action_details | Grok パターンを使用してログ メッセージから抽出されます。 |
UDP | network.ip_protocol | Grok パターンを使用してログ メッセージから抽出され、大文字に変換されます。 |
111 | target.port | Grok パターンを使用してログ メッセージから抽出され、整数に変換されます。dst outside の場合は principal.port にマッピングされ、それ以外の場合は target.port にマッピングされます。 |
17608 | principal.port | Grok パターンを使用してログ メッセージから抽出され、整数に変換されます。dst outside の場合は principal.port にマッピングされ、それ以外の場合は target.port にマッピングされます。 |
3000 | principal.port | Grok パターンを使用してログ メッセージから抽出され、整数に変換されます。dst outside の場合は principal.port にマッピングされ、それ以外の場合は target.port にマッピングされます。 |
33103 | target.port | Grok パターンを使用してログ メッセージから抽出され、整数に変換されます。dst outside の場合は principal.port にマッピングされ、それ以外の場合は target.port にマッピングされます。 |
514 | principal.port target.port |
Grok パターンを使用してログ メッセージから抽出され、整数に変換されます。dst outside の場合は principal.port にマッピングされ、それ以外の場合は target.port にマッピングされます。 |
metadata.description | 未加工ログの descrip フィールド全体がこのフィールドにマッピングされます。 |
|
metadata.event_timestamp | バッチ オブジェクトのタイムスタンプは、イベントのタイムスタンプとして使用されます。 | |
metadata.event_type | 送信元 IP と宛先 IP の有無に基づいて決定されます。 - NETWORK_CONNECTION: 送信元 IP と宛先 IP の両方が存在します。 - STATUS_UPDATE: 送信元 IP のみ存在します。 - GENERIC_EVENT: 送信元 IP も宛先 IP も存在しません。 |
|
metadata.product_name | CISCO_FWSM にハードコードされています。 |
|
metadata.vendor_name | CISCO にハードコードされています。 |
|
principal.resource.type | ログメッセージから抽出された facility フィールドからマッピングされます。 |
|
security_result.action | action フィールドが Deny 、Teardown 、denied 、Denied のいずれかの場合、BLOCK に設定します。 |
|
security_result.severity | severity_level フィールドに基づいて決定されます。- 7、6: INFORMATIONAL - 5: LOW - 4: MEDIUM - 3: ERROR - 2: HIGH - その他: CRITICAL |
|
network.direction | ログメッセージから抽出された direction フィールドからマッピングされます。direction フィールドが inbound の場合、このフィールドは INBOUND に設定されます。 |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。