Dell スイッチのログを収集する

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

このパーサーは、Dell スイッチログを抽出し、タイムスタンプを正規化し、Grok パターンを使用してログ メッセージを Key-Value ペアに構造化します。次に、抽出されたフィールドを統合データモデル(UDM)にマッピングし、さまざまなログ形式を処理して、アセットの詳細やセキュリティの重大度などのコンテキスト情報をデータに追加します。

始める前に

  • Google Security Operations インスタンスがあることを確認します。
  • Windows 2016 以降、または systemd を使用する Linux ホストを使用していることを確認します。
  • プロキシの背後で実行している場合は、ファイアウォールのポートが開いていることを確認します。
  • Dell スイッチへの有効な接続と管理者認証情報があることを確認します。

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

  1. Google SecOps コンソールにログインします。
  2. [SIEM 設定] > [収集エージェント] に移動します。
  3. 取り込み認証ファイルをダウンロードします。BindPlane をインストールするシステムにファイルを安全に保存します。

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

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

BindPlane Agent をインストールする

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 Agent を構成する

  1. 構成ファイルにアクセスします。

    • config.yaml ファイルを見つけます。通常、Linux では /etc/bindplane-agent/ ディレクトリ、Windows ではインストール ディレクトリにあります。
    • テキスト エディタ(nanovi、メモ帳など)を使用してファイルを開きます。
  2. config.yaml ファイルを次のように編集します。

    receivers:
        tcplog:
            # Replace the below port <54525> and IP <0.0.0.0> with your specific values
            listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: sell_switch
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. インフラストラクチャの要件に応じてポートと IP アドレスを置き換えます。

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

  5. [Google SecOps 取り込み認証ファイルを取得する] セクションで、/path/to/ingestion-authentication-file.json を認証ファイルが保存されているパスに更新します。

BindPlane Agent を再起動して変更を適用する

  • Linux で BindPlane Agent を再起動するには、次のコマンドを実行します。

    sudo systemctl restart bindplane-agent
    
  • Windows で BindPlane Agent を再起動するには、[サービス] コンソールを使用するか、次のコマンドを入力します。

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Dell スイッチからの Syslog エクスポートを構成する

  1. SSH またはコンソール ポートを使用して Dell スイッチに接続します。
  2. 管理者認証情報でログインします。
  3. 次のコマンドを使用して、Syslog サーバーの IP アドレスまたはホスト名を指定します(<syslog_server_ip><udp|tcp><syslog-port-number> は実際の詳細に置き換えます)。

    logging host <syslog-server-ip> transport <udp|tcp> port <syslog-port-number>
    
  4. 省略可: Syslog サーバーに送信されるメッセージの最小重大度レベルを定義します。たとえば、情報メッセージ以上をログに記録するには:

    logging level informational
    
  5. 実行構成起動構成に保存して、再起動後も変更が維持されるようにします。

    copy running-config startup-config
    
  6. 構成を保存します。

    write memory
    

UDM マッピング テーブル

ログフィールド UDM マッピング 論理
acct principal.user.userid user フィールドが存在しない場合、userid として使用されます。
addr principal.asset.ipprincipal.ip IP アドレスとして解析され、有効な IP でホスト名と異なる場合は、プリンシパルの IP とアセット IP に使用されます。
application principal.application 直接マッピングされます。
asset principal.asset.attribute.labels.value アセットラベル値に直接マッピングされ、キーは「Asset Name」としてハードコードされています。アセット フィールドが空で、メッセージに「Dell」が含まれている場合、アセットは「Dell」に設定されます。
auid principal.resource.attribute.labels.value principal.resource.attribute.labels 内のキー auid を持つラベルに直接マッピングされます。
datetime metadata.event_timestamp メッセージ フィールドのさまざまな形式から解析され、タイムスタンプに変換されます。
dest_ip target.asset.iptarget.ip ターゲット IP とターゲット アセット IP にマッピングされます。
enterpriseId principal.resource.attribute.labels.value principal.resource.attribute.labels 内のキー enterpriseId を持つラベルにマッピングされます。
exe sec_result.detection_fields.value キー exe を持つ検出フィールドにマッピングされます。
File target.file.full_path 直接マッピングされます。
grantors principal.resource.attribute.labels.value principal.resource.attribute.labels 内のキー grantors を持つラベルにマッピングされます。
host principal.hostnameprincipal.asset.hostnamemetadata.event_type プリンシパルのホスト名とアセットのホスト名として使用されます。host が存在する場合、metadata.event_typeSTATUS_UPDATE に設定されます。ホスト名は存在するがホストが存在しない場合、ホスト名がホストとして使用されます。
hostname principal.asset.ipprincipal.iphost 有効な IP の場合は、プリンシパル IP とアセット IP に使用されます。host が空の場合、host として使用されます。
ID principal.resource.attribute.labels.value principal.resource.attribute.labels 内のキー ID を持つラベルにマッピングされます。
ip principal.asset.ipprincipal.ip プリンシパル IP とアセット IP にマッピングされます。
is_synced sec_result.detection_fields.value キー is_synced を持つ検出フィールドにマッピングされます。
local target.asset.iptarget.iptarget.port 解析されてローカル IP とポートが抽出され、ターゲット IP、ターゲット アセット IP、ターゲット ポートにマッピングされます。
local_ip target.asset.iptarget.ip local フィールドから抽出され、ターゲット IP とターゲット アセット IP にマッピングされます。
local_port target.port local フィールドから抽出され、ターゲット ポートにマッピングされます。
mac principal.mac 有効な MAC アドレスの場合は、プリンシパル MAC アドレスにマッピングされます。
msg metadata.description イベントの説明として使用されます(存在する場合)。追加フィールドも解析されます。
msg1 metadata.description msg2 が存在しない場合、イベントの説明として使用されます。
msg2 sec_result.descriptionmetadata.event_typeextensions.auth.type セキュリティ結果の説明として使用されます。「opened for user」が含まれている場合、イベントタイプは USER_LOGIN に、認証タイプは MACHINE に設定されます。「closed for user」が含まれている場合、イベントタイプは USER_LOGOUT に、認証タイプは MACHINE に設定されます。
op metadata.product_event_type プロダクトイベントのタイプとして使用されます(存在する場合)。
pid principal.process.pid 直接マッピングされます。
port principal.port 直接マッピングされます。
prod_event_type metadata.product_event_type プロダクトイベントのタイプとして使用されます(存在する場合)。
res sec_result.summary 直接マッピングされます。
sec_description sec_result.descriptiontarget.urltarget.iptarget.asset.ipsec_result.action_details ターゲット URL、IP、アクションの詳細が解析され、セキュリティの結果の説明として使用されます。
Server_ID target.resource.product_object_id 直接マッピングされます。
server principal.asset.ipprincipal.ipprincipal.port 解析されてサーバー IP とポートが抽出され、プリンシパル IP、プリンシパル アセット IP、プリンシパル ポートにマッピングされます。
server_ip principal.asset.ipprincipal.ip server フィールドから抽出され、プリンシパル IP とプリンシパル アセット IP にマッピングされます。
server_port principal.port server フィールドから抽出され、プリンシパル ポートにマッピングされます。
ses network.session_id 直接マッピングされます。
severity sec_result.severitymetadata.product_event_type 特定の値に基づいて、セキュリティ結果の重大度とプロダクト イベントタイプを決定するために使用されます。
software principal.asset.software 直接マッピングされます。
softwareName software.name 直接マッピングされます。
Status sec_result.summary res が存在しない場合、セキュリティ結果のサマリーとして使用されます。
subj principal.resource.attribute.labels.value principal.resource.attribute.labels 内のキー subj を持つラベルにマッピングされます。
swVersion software.version 直接マッピングされます。
target_host target.hostnametarget.asset.hostname ターゲット ホスト名とターゲット アセットホスト名に直接マッピングされます。
target_ip target.asset.iptarget.ip ターゲット IP とターゲット アセット IP に直接マッピングされます。
target_url target.url 直接マッピングされます。
target_user_id target.user.userid 直接マッピングされます。
terminal principal.resource.attribute.labels.value principal.resource.attribute.labels 内のキー terminal を持つラベルにマッピングされます。
tzknown sec_result.detection_fields.value キー tzknown を持つ検出フィールドにマッピングされます。
uid principal.resource.attribute.labels.value principal.resource.attribute.labels 内のキー uid を持つラベルにマッピングされます。
user principal.user.useridmetadata.event_type プリンシパル ユーザー ID として使用されます。user が存在する場合、metadata.event_typeUSER_UNCATEGORIZED に設定されます。
username target.user.userid ターゲット ユーザー ID に直接マッピングされます。
該当なし metadata.vendor_name 「Dell」にハードコードされています。
該当なし metadata.product_name 「Dell Switch」にハードコードされています。
該当なし extensions.auth.type 特定のログイン / ログアウト イベントの場合は MACHINE に設定します。
該当なし metadata.event_type さまざまなフィールドと条件に基づく複雑なロジックによって決定されます。特に設定しない限り、デフォルトは GENERIC_EVENT です。USER_LOGINUSER_LOGOUTUSER_UNCATEGORIZEDNETWORK_CONNECTIONNETWORK_UNCATEGORIZEDSTATUS_UPDATEGENERIC_EVENT のいずれかです。

変更

2024-04-25

  • 新しいログタイプを解析するための Grok パターンを追加しました。
  • opmetadata.product_event_type にマッピングしました。
  • macprincipal.mac にマッピングしました。
  • addrprincipal.ip にマッピングしました。
  • hostnameprincipal.ip にマッピングしました。
  • server_ipprincipal.ip にマッピングしました。
  • server_portprincipal.port にマッピングしました。
  • acctprincipal.user.userid にマッピングしました。
  • target_iptarget.ip にマッピングしました。
  • local_iptarget.ip にマッピングしました。
  • local_porttarget.port にマッピングしました。
  • Filetarget.file.full_path にマッピングしました。
  • target_hosttarget.hostname にマッピングしました。
  • target_user_idtarget.user.userid にマッピングしました。
  • Server_IDtarget.resource.product_object_id にマッピングしました。
  • tzknownis_syncedexesecurity_result.detection_fields にマッピングしました。
  • ressecurity_result.summary にマッピングしました。
  • フィールド res の値が「""」の場合、statussecurity_result.summary にマッピングしました。
  • uidenterpriseIdauidterminalsubjgrantorsIDprincipal.resource.attribute.labels にマッピングしました。

2024-04-04

  • 新しいログタイプを解析するための Grok パターンを追加しました。
  • prod_event_typemetadata.product_event_type にマッピングしました。
  • ipprincipal.ip にマッピングしました。
  • dest_iptarget.ip にマッピングしました。
  • target_urltarget.url にマッピングしました。
  • sec_descriptionsecurity_result.description にマッピングしました。
  • action_detailssecurity_result.action_details にマッピングしました。

2024-01-04

  • 新しく取り込まれたログ用の Grok パターンを追加しました。
  • datetimeSYSLOGTIMESTAMP 形式の場合に日付ブロックを追加しました。
  • softwareNameprincipal.asset.software.name にマッピングしました。
  • swVersionprincipal.asset.software.version にマッピングしました。
  • portprincipal_port にマッピングしました。
  • userprincipal.user.userid にマッピングし、user が存在する場合は metadata.event_typeUSER_UNCATEGORIZED に設定しました。
  • applicationprincipal.application にマッピングしました。
  • ipprincipal.ip にマッピングしました。
  • severityIFMGR-5-OSTATE_DN の場合、sec_result.severityINFORMATIONAL に設定します。
  • msgmetadata.description にマッピングしました。

2023-11-02

  • 新しく作成されたパーサー。

さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps の専門家から回答を得る。