Cylance PROTECT のログを収集する

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

このドキュメントでは、Bindplane を使用して Cylance PROTECT ログを Google Security Operations に取り込む方法について説明します。Logstash パーサーコードは、Cylance PROTECT Syslog メッセージを統合データモデル(UDM)に変換します。syslog メッセージからフィールドを抽出し、正規化して UDM フィールドにマッピングし、脅威の重大度とカテゴリ情報でデータを拡充します。

始める前に

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

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

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_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
            ingestion_labels:
                log_type: 'CYLANCE_PROTECT'
                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 エージェントを再起動するには、サービス コンソールを使用するか、次のコマンドを入力します。

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Cylance Protect で Syslog を構成する

  1. Cylance 管理コンソールにログインします。
  2. [設定> アプリケーション] に移動します。
  3. [Syslog/SIEM] チェックボックスをオンにします。
  4. すべてのイベントを選択します。
  5. 次の構成の詳細を指定します。
    • SIEM: [Syslog] を選択します。
    • Protocol: [UDP] を選択します。
    • [2 KB を超えるメッセージを許可する] チェックボックスをオンにします。
    • IP/ドメイン: Bindplane エージェントの IP アドレスを入力します。
    • ポート: Bindplane エージェントのポート番号を入力します(UDP の場合は 514 など)。
    • ファシリティ: アプリケーション ロギングのタイプを選択します。
  6. [Test Connection] をクリックします。
  7. [保存] をクリックします。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
エージェントのバージョン metadata.product_version Agent Version: <value> から抽出された値
Cylance スコア security_result.severity_details Cylance Score: <value> から抽出された値
security_result.severity 次のロジックに基づいてマッピングされます。
- HIGH: Cylance スコアが 67 より大きい場合
- MEDIUM: Cylance スコアが 33 より大きい場合
- LOW: Cylance スコアが 33 以下の場合
検出者 security_result.detection_fields.value Detected By: <value> から抽出された値
デバイス ID principal.asset_id Device Id: <value> から抽出された値に Cylance: が付加された値
デバイス ID principal.asset_id Device Ids: <value> から抽出された値。Cylance: が先頭に追加されます。Device Id が存在しない場合に使用されます。
デバイス名 principal.hostname Device Name: <value> から抽出された値
デバイス名 target.hostname Device Name: <value> から抽出された値。ScriptControl などの特定のイベントタイプに使用されます。
デバイス名 principal.hostname Device Names: <value> から抽出された値。Device Name が存在しない場合に使用されます
説明 security_result.summary Description: <value> から抽出された値。OpticsCaeNetworkEvent などの特定のイベントタイプに使用されます。
宛先 IP target.ip Destination IP: <value> から抽出された値
宛先ポート target.port Destination Port: <value> から抽出された値
イベント ID metadata.product_log_id Event Id: <value> から抽出された値
イベント名 特定のイベント サブタイプを特定し、対応するロジックを適用するために使用されます
イベントタイプ metadata.product_event_type Event Type: <value> から抽出された値
metadata.event_type Event Type フィールドと Event Name フィールドに基づいてマッピングされます。デフォルト値は GENERIC_EVENT です。
ファイル名 principal.process.file.full_path File Name: <value> から抽出された値と Path: <value> を組み合わせて完全なパスを形成します
ファイルパス target.file.full_path File Path: <value> から抽出された値
Instigating Process ImageFileSha256 principal.process.file.sha256 Instigating Process ImageFileSha256: <value> から抽出された値
Instigating Process Name(開始プロセス名) principal.process.file.full_path Instigating Process Name: <value> から抽出された値
開始プロセス オーナー principal.user.userid Instigating Process Owner: <value> から抽出された値。ユーザー名が存在する場合は、// で分割した後に抽出されます。
開始プロセス オーナー principal.administrative_domain Instigating Process Owner: <value> から抽出されたドメイン名(存在する場合は // で分割)
IP アドレス principal.ip IP Address: (<value>) から抽出された IP アドレス
インタープリタ security_result.rule_labels.value Interpreter: <value> から抽出された値
インタープリタのバージョン security_result.rule_labels.value Interpreter Version: <value> から抽出された値
Logged On Users(ログインしたユーザー) about.user.userid Logged On Users: (<value>) から抽出されたユーザー名
MAC アドレス principal.mac MAC Address: (<value>) から抽出され、コロンでフォーマットされた MAC アドレス
MD5 principal.process.file.md5 MD5: <value> から抽出された値
メッセージ AuditLog などの特定のイベントタイプのデータを抽出するために使用されます。
OS principal.platform OS フィールドに Windows が含まれている場合は、WINDOWS にマッピングされます。
パス principal.process.file.full_path Path: <value> から抽出された値と File Name: <value> を組み合わせて完全なパスを形成します
ポリシー名 security_result.rule_name Policy Name: <value> から抽出された値
プロセス ID principal.process.pid Process ID: <value> から抽出された値
プロセス名 principal.process.file.full_path Process Name: <value> から抽出された値
解決済みの住所 network.dns.answers.name Resolved Address: <value> から抽出された値
SHA256 principal.process.file.sha256 SHA256: <value> から抽出された値
ソース IP principal.ip Source IP: <value> から抽出された値。特定のイベントタイプで使用されます
ステータス security_result.action 値に基づいて特定の UDM アクションにマッピングされます。
- Quarantined: QUARANTINE
- Cleared: ALLOW_WITH_MODIFICATION
ターゲット ドメイン名 network.dns.questions.name Target Domain Name: <value> から抽出された値
ターゲット プロセス ImageFileSha256 target.process.file.sha256 Target Process ImageFileSha256: <value> から抽出された値
ターゲット プロセス名 target.process.file.full_path Target Process Name: <value> から抽出された値
ターゲット プロセスのオーナー target.user.userid Target Process Owner: <value> から抽出された値。ユーザー名が存在する場合は、// で分割した後に抽出されます。
ターゲット プロセスのオーナー target.administrative_domain Target Process Owner: <value> から抽出されたドメイン名(存在する場合は // で分割)
ターゲット レジストリ KeyPath target.registry.registry_key Target Registry KeyPath: <value> から抽出された値
脅威の分類 security_result.threat_name Threat Classification: <value> から抽出された値
ユーザー principal.user.userid User: <value> が存在する場合はそこから抽出されたユーザー名。User Name が存在しない場合に使用されます。
ユーザー principal.user.email_addresses User: <value> から抽出されたメールアドレス(存在する場合)。User Name が存在しない場合に使用されます。
ユーザー名 principal.user.userid User Name: <value> から抽出された値
違反のタイプ security_result.summary Violation Type: <value> から抽出された値に ExploitAttempt: が付加された値
違反のタイプ security_result.threat_name Violation Type: <value> から抽出された値
ゾーン名 security_result.description Zone Names: (<value>) から抽出された値に Zone_Names: が付加された値
metadata.vendor_name Cylance にハードコード
metadata.product_name ログメッセージから抽出された値(PROTECT または OPTICS
metadata.log_type CYLANCE_PROTECT にハードコード
network.ip_protocol OpticsCaeNetworkEvent イベントの場合、TCP にハードコードされています
network.application_protocol OpticsCaeDnsEvent イベントの場合、DNS にハードコードされています
security_result.rule_labels.key 利用可能なフィールドに基づいて Interpreter または Interpreter Version に設定します。
security_result.detection_fields.key Detected By にハードコード
security_result.category イベントタイプに基づいてマッピングされます。可能な値は、
- SOFTWARE_SUSPICIOUS、
- AUTH_VIOLOATION、
- POLICY_VIOLATION、
- NETWORK_SUSPICIOUS、
- EXPLOIT、
- SOFTWARE_MALICIOUS です。
security_result.action イベントタイプと特定の条件に基づいてマッピングされます。取りうる値は、
- ALLOW、
- BLOCK、
- QUARANTINE、
- ALLOW_WITH_MODIFICATION です。

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