Check Point SmartDefense のログを収集する

以下でサポートされています。

このドキュメントでは、Bindplane を使用して Check Point SmartDefense ログを Google Security Operations に取り込む方法について説明します。パーサーは、SYSLOG 形式の Check Point SmartDefense ログからフィールドを抽出し、データ変換とマッピングを実行して、セキュリティ分析用の Google SecOps 統合データモデル(UDM)に出力を構造化します。

始める前に

次の前提条件を満たしていることを確認してください。

  • Google SecOps インスタンス
  • Windows 2016 以降、または systemd を使用する Linux ホスト
  • プロキシの背後で実行されている場合、ファイアウォール ポートが開いている
  • Check Point SmartConsole と Management Server への特権アクセス

Google SecOps の取り込み認証ファイルを取得する

  1. Google SecOps コンソールにログインします。
  2. [SIEM 設定] > [コレクション エージェント] に移動します。
  3. Ingestion Authentication File をダウンロードします。Bindplane をインストールするシステムにファイルを安全に保存します。

Google SecOps のお客様 ID を取得する

  1. Google SecOps コンソールにログインします。
  2. [SIEM 設定] > [プロファイル] に移動します。
  3. [組織の詳細情報] セクションから [お客様 ID] をコピーして保存します。

Bindplane エージェントをインストールする

Windows のインストール

  1. 管理者として コマンド プロンプトまたは PowerShell を開きます。
  2. 次のコマンドを実行します。

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Linux のインストール

  1. root 権限または sudo 権限でターミナルを開きます。
  2. 次のコマンドを実行します。

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

その他のインストール リソース

その他のインストール オプションについては、インストール ガイドをご覧ください。

Syslog を取り込んで Google SecOps に送信するように Bindplane エージェントを構成する

  1. 構成ファイルにアクセスします。
    • config.yaml ファイルを見つけます。通常、Linux では /etc/bindplane-agent/ ディレクトリに、Windows ではインストール ディレクトリにあります。
    • テキスト エディタ(nanovi、メモ帳など)を使用してファイルを開きます。
  2. 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: '/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
            ingestion_labels:
                log_type: 'CHECKPOINT_SMARTDEFENSE'
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. 自社のインフラストラクチャでの必要性に応じて、ポートと IP アドレスを置き換えます。

  4. <customer_id> は、実際の顧客 ID に置き換えます。

  5. /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
    

SmartConsole で Syslog サーバー オブジェクトを構成する

  1. SmartConsole を使用して Management Server に接続します。
  2. [ゲートウェイとサーバー] に移動します。
  3. [オブジェクト エクスプローラ] で、[新規 > ホスト] をクリックします。
  4. 次の構成の詳細を指定します。
    • 名前: 一意の名前を入力します。
    • IPv4 アドレス: Bindplane エージェントの IP アドレスを入力します。
  5. [OK] をクリックします。
  6. [オブジェクト エクスプローラ] で、[新規作成> サーバー> その他> Syslog] をクリックします。
  7. 次の構成の詳細を指定します。
    • 名前: 一意の名前を入力します。
    • ホスト: 先ほど作成したホストを選択します。
    • ポート: Bindplane エージェントのポート番号(デフォルトは 514)を入力します。
    • バージョン: [Syslog プロトコル] を選択します。
  8. [OK] をクリックします。

Security Gateway で構成された Syslog を選択する

  1. [Security Gateway] オブジェクトをダブルクリックします。
  2. [ログ] をクリックします。
  3. [Send logs and alerts to these log servers] テーブルで、緑色の (+)をクリックし、前に構成した Syslog Server オブジェクトを選択します。
  4. [OK] をクリックしてポリシーをインストールします。

fwsyslog_enable を構成する

  1. CLI を使用して、セキュリティ ゲートウェイと各クラスタ メンバーに接続します。
  2. エキスパート モードに切り替えます。
  3. $FWDIR/boot/modules/fwkern.conf ファイルを編集します。

    vi $FWDIR/boot/modules/fwkern.conf
    
  4. 次の行を追加します。

    fwsyslog_enable=1
    
  5. ファイル内の変更を保存し、エディタを終了します。

  6. セキュリティ ゲートウェイ / 各クラスタ メンバーを再起動します。

UDM マッピング テーブル

ログフィールド UDM マッピング 論理
act read_only_udm.security_result.action 未加工ログの act フィールドの値。
additional_info read_only_udm.security_result.description 未加工ログの additional_info フィールドの値。
管理者 read_only_udm.target.user.user_display_name 未加工ログの administrator フィールドの値。
コメント read_only_udm.additional.fields.value.string_value 未加工ログの comment フィールドの値。キーは comment としてハードコードされています。
deviceDirection read_only_udm.network.direction deviceDirection=1 の場合は OUTBOUND、それ以外の場合は INBOUND。
ifname read_only_udm.additional.fields.value.string_value 未加工ログの ifname フィールドの値。キーは ifname としてハードコードされています。
loguid read_only_udm.metadata.product_log_id 未加工ログの loguid フィールドの値。
log_sys_message read_only_udm.metadata.description 未加工ログの log_sys_message フィールドの値。
msg read_only_udm.metadata.description 未加工ログの msg フィールドの値。
オペレーション read_only_udm.security_result.action_details 未加工ログの operation フィールドの値。
origin read_only_udm.intermediary.ip 未加工ログの origin フィールドの値。
originsicname read_only_udm.additional.fields.value.string_value 未加工ログの originsicname フィールドの値。キーは originsicname としてハードコードされています。
結果 read_only_udm.security_result.outcomes.value 未加工ログの outcome フィールドの値。キーは outcome としてハードコードされています。
product read_only_udm.metadata.product_name 未加工ログの product フィールドの値。
rt read_only_udm.metadata.event_timestamp.seconds 未加工ログの rt フィールドの値。秒に変換されます。
sendtotrackerasadvancedauditlog read_only_udm.additional.fields.value.string_value 未加工ログの sendtotrackerasadvancedauditlog フィールドの値。キーは sendtotrackerasadvancedauditlog としてハードコードされています。
sequencenum read_only_udm.additional.fields.value.string_value 未加工ログの sequencenum フィールドの値。キーは sequencenum としてハードコードされています。
session_uid read_only_udm.additional.fields.value.string_value 未加工ログの session_uid フィールドの値。キーは session_uid としてハードコードされています。
sntdom read_only_udm.principal.administrative_domain 未加工ログの sntdom フィールドの値。
src read_only_udm.principal.ip 未加工ログの src フィールドの値。
件名 read_only_udm.security_result.summary 未加工ログの subject フィールドの値。
update_service read_only_udm.additional.fields.value.string_value 未加工ログの update_service フィールドの値。キーは update_service としてハードコードされています。
version read_only_udm.additional.fields.value.string_value 未加工ログの version フィールドの値。キーは version としてハードコードされています。
なし read_only_udm.metadata.event_type 未加工ログに host フィールドが存在する場合、STATUS_UPDATEoperation フィールドが Log Out と等しい場合、USER_LOGOUToperation フィールドが Log In と等しい場合、USER_LOGIN。それ以外の場合は GENERIC_EVENT
なし read_only_udm.metadata.vendor_name ハードコードされた値: Check Point
なし read_only_udm.metadata.product_version ハードコードされた値: Check Point
なし read_only_udm.metadata.product_event_type ハードコードされた値: [Log] - Log
なし read_only_udm.metadata.log_type ハードコードされた値: CHECKPOINT_FIREWALL
なし read_only_udm.principal.hostname 未加工ログの host フィールドの値。
なし read_only_udm.principal.asset.hostname 未加工ログの host フィールドの値。
なし read_only_udm.extensions.auth.type operation フィールドが Log Out または Log In と等しい場合、AUTHTYPE_UNSPECIFIED
なし read_only_udm.extensions.auth.mechanism operation フィールドが Log Out または Log In と等しい場合、MECHANISM_UNSPECIFIED

さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。