Carbon Black App Control(旧称 CB Protection)のログを収集する
このドキュメントでは、Bindplane を使用して Carbon Black App Control(以前は CB Protection と呼ばれていましたが、現在は Broadcom の一部)のログを Google Security Operations に取り込む方法について説明します。パーサーは CEF 形式と JSON 形式の両方をサポートしています。まず、入力を JSON として解析しようとします。解析に失敗すると、入力を CEF として扱い、テキスト置換を実行し、CEF フィールドを抽出して UDM にマッピングし、イベントタイプを GENERIC_EVENT に設定します。
Carbon Black App Control は、組織がサーバーと重要なシステムをロックダウンできるアプリケーション制御とホワイトリスト登録のソリューションです。信頼ベースのポリシーを適用し、ファイルの整合性の変更をモニタリングし、エンドポイント アクティビティをリアルタイムで可視化することで、不正なソフトウェアや悪意のあるソフトウェアの実行を防止します。
始める前に
次の前提条件を満たしていることを確認してください。
- Google SecOps インスタンス。
systemdを使用する Windows Server 2016 以降または Linux ホスト。- プロキシの背後で実行している場合は、ファイアウォール ポートが開いていることを確認します。
- Carbon Black App Control Server バージョン 8.x 以降。
- Carbon Black App Control コンソールへの特権アクセス(管理者アカウント)。
Google SecOps の取り込み認証ファイルを取得する
- Google SecOps コンソールにログインします。
- [SIEM Settings] > [Collection Agents] に移動します。
- 取り込み認証ファイル をダウンロードします。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
その他のインストール リソース
その他のインストール オプションについては、Bindplane エージェントのインストール ガイドをご覧ください。
syslog を取り込んで Google SecOps に送信するように Bindplane エージェントを構成する
構成ファイルにアクセスします。
config.yamlファイルを見つけます。通常、Linux では/observiq-otel-collector/ディレクトリに、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: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: CB_APP_CONTROL 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 observiq-otel-collectorサービスが実行されていることを確認します。
sudo systemctl status observiq-otel-collectorログでエラーを確認します。
sudo journalctl -u observiq-otel-collector -f
Windows で Bindplane エージェントを再起動するには:
次のいずれかのオプションを選択します。
- 管理者としてコマンド プロンプトまたは PowerShell を開きます。
net stop observiq-otel-collector && net start observiq-otel-collector- サービス コンソール:
Win+Rキーを押して「services.msc」と入力し、Enter キーを押します。- observIQ OpenTelemetry Collector を見つけます。
- 右クリックして [再起動] を選択します。
サービスが実行されていることを確認します。
sc query observiq-otel-collectorログでエラーを確認します。
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
Carbon Black App Control の syslog 転送を構成する
- 管理者アカウントで Carbon Black App Control コンソールにログインします。
- [設定](歯車)アイコンをクリックし、[システム構成] をクリックします。
- [System Configuration] ページで、[Events] タブをクリックします。
- ページの下部にある [編集] ボタンをクリックします。
- [外部イベント ロギング] パネルで、[Syslog Enabled] チェックボックスをオンにします。
- 次の構成の詳細を指定します。
- Syslog アドレス: Bindplane エージェント ホストの IP アドレスまたは FQDN を入力します(例:
192.168.1.100)。 - Syslog ポート:
514(または Bindplane で構成されたポート)を入力します。 - Syslog Format: [Syslog Format] メニューから出力形式を選択します。
- CEF(ArcSight)- Google SecOps の取り込みに推奨されます。
- 拡張(RFC 5424) - v6.0.1 以降の新規インストールでのデフォルト。
- Basic(RFC 3164)- 6.0.1 より前のバージョンからのアップグレードのデフォルト。
- LEEF(Q1 Labs)- QRadar との統合用。
- Syslog アドレス: Bindplane エージェント ホストの IP アドレスまたは FQDN を入力します(例:
[更新] をクリックし、確認ダイアログ ボックスで [はい] をクリックします。
UDM マッピング テーブル
| ログフィールド | UDM マッピング | ロジック |
|---|---|---|
ABId |
principal.asset.asset_id |
JSON ログの ABId は、PRODUCT_SPECIFIC_ID:{ABId}-{Bit9Server} 形式のアセット ID の一部として使用されます。 |
Bit9Server |
principal.asset.asset_id |
プリンシパルのアセット ID の一部として使用され、ABId と組み合わされます。metadata.url_back_to_product フィールドの作成にも使用されます。 |
CommandLine |
about.process.command_line |
直接マッピングされます。 |
EventType |
metadata.product_event_type |
対応する EventTypeId と角かっこで囲んでマッピングします(例: [5] - Discovery)。 |
EventTypeId |
metadata.product_event_type |
EventType とともに使用して metadata.product_event_type を設定します。 |
EventSubType |
metadata.description |
metadata.description フィールドに追加されます。 |
EventSubTypeId |
metadata.description |
明示的にマッピングされていませんが、パーサーの内部ロジックに基づいて説明に貢献する可能性があります。 |
externalId |
metadata.product_log_id |
直接マッピングされます。 |
FileHash |
about.file.sha256 |
直接マッピングされます。 |
FileName |
additional.fields(キー FileName を含む) |
追加フィールドとして追加されました。一部のイベントの metadata.description のファイル情報の一部としても使用されます。 |
FilePath |
about.file.full_path |
直接マッピングされます。 |
FileThreat |
additional.fields(キー fileThreat を含む) |
追加フィールドとして追加されました。 |
FileTrust |
additional.fields(キー fileTrust を含む) |
追加フィールドとして追加されました。 |
HostId |
principal.asset.asset_id |
metadata.url_back_to_product で商品に戻る URL を作成するために使用されます。 |
HostName |
target.hostname |
直接マッピングされます。 |
HostIP |
target.ip |
直接マッピングされます。 |
Message |
metadata.description |
直接マッピングされます。 |
PathName |
about.file.full_path |
直接マッピングされます。 |
Platform |
target.platform |
列挙値 WINDOWS にマッピングされます。 |
Policy |
additional.fields(キー Policy を含む) |
追加フィールドとして追加されました。 |
PolicyId |
additional.fields(キー PolicyId を含む) |
追加フィールドとして追加されました。 |
ProcessKey |
additional.fields(キー ProcessKey を含む) |
追加フィールドとして追加されました。 |
ProcessPath |
about.process.command_line |
直接マッピングされます。 |
ProcessPathName |
about.process.command_line |
直接マッピングされます。 |
ProcessThreat |
additional.fields(キー ProcessThreat を含む) |
追加フィールドとして追加されました。 |
ProcessTrust |
additional.fields(キー ProcessTrust を含む) |
追加フィールドとして追加されました。 |
RuleName |
additional.fields(キー ruleName を含む) |
追加フィールドとして追加されました。 |
Timestamp |
metadata.event_timestamp |
直接マッピングされます。 |
UserName |
target.user.user_display_name |
直接マッピングされます。 |
UserSid |
principal.user.userid |
直接マッピングされます。 |
agent.ephemeral_id |
observer.labels(キー ephemeral_id を含む) |
オブザーバー ラベルとして追加されます。 |
agent.name |
principal.hostname、observer.hostname、observer.user.userid |
複数のフィールドにマッピングされています。 |
agent.type |
observer.application |
直接マッピングされます。 |
agent.version |
metadata.product_version |
JSON ログに直接マッピングされます。CEF ログの場合、CEF メッセージから抽出されます。 |
cat |
security_result.category_details |
直接マッピングされます。 |
process |
event.idm.read_only_udm.principal.file.full_path |
変更履歴からマッピング |
text |
event.idm.read_only_udm.metadata.description |
変更履歴からマッピング |
type |
event.idm.read_only_udm.security_result.category_details |
変更履歴からマッピング |
subtype |
event.idm.read_only_udm.security_result.category_details |
変更履歴からマッピング |
hostname |
event.idm.read_only_udm.principal.hostname と event.idm.read_only_udm.principal.asset.hostname |
変更履歴からマッピング |
username |
event.idm.read_only_udm.target.user.userid |
変更履歴からマッピング |
date |
event.idm.read_only_udm.metadata.collected_timestamp |
変更履歴からマッピング |
ip_address |
event.idm.read_only_udm.principal.ip と event.idm.read_only_udm.principal.asset.ip |
変更履歴からマッピング |
file_path |
event.idm.read_only_udm.target.file.full_path |
変更履歴からマッピング |
file_name |
event.idm.read_only_udm.target.process.file.names |
変更履歴からマッピング |
file_hash |
event.idm.read_only_udm.target.file.sha256 |
変更履歴からマッピング |
policy |
event.idm.read_only_udm.security_result.rule_name |
変更履歴からマッピング |
server_version |
event.idm.read_only_udm.metadata.product_version |
変更履歴からマッピング |
file_trust |
event.idm.read_only_udm.security_result.about.labels |
変更履歴からマッピング |
file_threat |
event.idm.read_only_udm.security_result.about.labels |
変更履歴からマッピング |
変更履歴
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。