Pulse Secure ログを収集する

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

このドキュメントでは、Google Security Operations フォワーダーを使用して Pulse Secure のログを収集する方法について説明します。

詳細については、Google Security Operations へのデータの取り込みの概要をご覧ください。

取り込みラベルによって、未加工のログデータを構造化 UDM 形式に正規化するパーサーが識別されます。このドキュメントの情報は、取り込みラベル PULSE_SECURE_VPN が付加されたパーサーに適用されます。

Pulse Secure VPN を構成する

Pulse Secure VPN を構成するには、次のいずれかを行います。

  • Pulse Secure VPN バージョン 8.3R3 以前を構成する
  • Pulse Secure VPN バージョン 8.3R4 以降を構成する

Pulse Secure VPN バージョン 8.3R3 以前を構成する

  1. Pulse Connect Secure コンソールにログインします。
  2. Pulse Connect Secure コンソールで、[システム] > [ログ/モニタリング] > [設定] を選択します。[イベント] タブ、[ユーザー アクセス] タブ、[管理者アクセス] タブから [設定] を選択できます。
  3. [ロギングするイベントを選択] セクションで、イベントに対応するチェックボックスをすべてオンにします。
  4. [Syslog サーバ] セクションで、次の操作を行います。
    1. [Server name/IP] フィールドに、Google Security Operations 転送元の IP アドレスを指定します。
    2. [施設] リストで [LOCAL0] を選択します。[施設] リストには、LOCAL0LOCAL7 の 8 つの施設があります。これらの設定のいずれかを使用して、Syslog サーバーの施設をマッピングできます。
    3. [タイプ] リストで、[UDP] または [TCP] を選択します。
  5. [追加] をクリックします。
  6. 省略可: イベント、管理者アクセス、ユーザー アクセスのログを対象とする複数の Syslog サーバーを追加するには、手順 2 ~ 4 を繰り返します。
  7. [変更を保存] をクリックします。
  8. 標準ログ形式がデフォルトとして設定されるようにするには、次の操作を行います。
    1. Pulse Connect Secure コンソールを開きます。
    2. [イベント] タブ、[ユーザー アクセス] タブ、[管理者アクセス] タブで、[フィルタ] を [標準] に設定します。
    3. 標準フィルタがデフォルトのフィルタとして定義されていない場合は、[デフォルトにする] をクリックします。
    4. [保存] をクリックします。

Pulse Secure VPN バージョン 8.3R4 以降を構成する

  1. Pulse Connect Secure コンソールで、[イベント] タブ、[ユーザー アクセス] タブ、または [管理者アクセス] タブをクリックし、[フィルタ] を [新しいフィルタ] に設定します。
  2. [フィルタ名] フィールドに、フィルタの名前を入力します。
  3. [エクスポート形式] セクションで [カスタム] を選択し、フィールドに次の形式を入力します。

    [SecureConnect] %date% %time% - %node% - [%sourceip%] %user%(%realm%)[%role%] - %msg%

  4. [保存] をクリックします。

  5. デバイスのバージョンに応じて、syslog 構成を有効にするには、次のいずれかを行います。

    • Pulse Secure VPN で Syslog ロギングを有効にする
    • Ivanti Connect Secure で Syslog ロギングを有効にする

Pulse Secure VPN で Syslog ロギングを有効にする

  1. Pulse Connect Secure コンソールで、[システム] > [ログ/モニタリング] > [設定] を選択します。[イベント] タブ、[ユーザー アクセス] タブ、[管理者アクセス] タブから [設定] を選択できます。
  2. [ログに記録するイベントを選択] セクションで、[HTML5 アクセス]、[アドミッション制御メッセージ]、[未認証のリクエスト] のチェックボックスを除くすべてのチェックボックスをオンにします。
  3. [Syslog server] フィールドに、Syslog サーバーに関する情報を入力します。
  4. [Syslog サーバ] セクションで、次の操作を行います。
    1. [Server name/IP] フィールドに、サーバー名または Google Security Operations フォワーダの IP アドレスを入力します。
    2. [施設] リストで [LOCAL0] を選択します。
    3. [フィルタ] リストで、前に作成したフィルタを選択します。
  5. [追加] をクリックします。
  6. 省略可: イベント、管理者アクセス、ユーザー アクセスのログを記録する複数の Syslog サーバーを追加するには、手順 2 ~ 4 を繰り返します。
  7. [変更を保存] をクリックします。

Ivanti Connect Secure で Syslog ロギングを有効にする

  1. Pulse Connect Secure コンソールで、[イベント] タブ、[ユーザー アクセス] タブ、または [管理者アクセス] タブをクリックし、[フィルタ] を選択します。
  2. [新しいフィルタ] タブをクリックします。
  3. [エクスポート形式] セクションで [カスタム] を選択し、フィールドに次の形式を入力します。

    [SecureConnect] %date% %time% - %node% - [%sourceip%] %user%(%realm%)[%role%] - %msg%

  4. [保存] をクリックします。

  5. [システム] > [ログ/モニタリング] をクリックし、[設定] タブを選択します。

  6. [最大ログサイズ] フィールドで最大ログサイズを指定し、ロギングするイベントを選択します。

  7. 次のようにサーバー構成を指定します。

    1. [Server name/IP] フィールドに、syslog サーバーの完全修飾ドメイン名または Google Security Operations 転送元 IP アドレスを指定します。

      タイプリストから Transport Layer Security(TLS)を選択する場合、サーバー名は、サーバーから取得した証明書の subjectDNCN と一致している必要があります。

    2. [施設] リストで、Syslog サーバー施設レベルを選択します。

    3. [Type] リストで、Syslog サーバーへの接続タイプとして [UDP]、[TCP]、[TLS] を選択します。TLS は暗号プロトコルを使用して安全な通信を提供します。

      [TLS] を選択した場合は、Syslog サーバーの認証に使用するインストール済みのクライアント証明書を選択します。クライアント証明書は、[構成] > [証明書] > [クライアント認証証明書] ウィンドウで定義します。クライアント証明書を使用するには、デバイスにインストールする必要があります。証明書については、認証局にお問い合わせください。

    4. [フィルタ] リストで [カスタム] を選択します。

  8. [追加] をクリックします。

Pulse Secure ログを取り込むように Google Security Operations フォワーダーを構成する

  1. [SIEM 設定] > [転送元] を選択します。
  2. [新しいフォワーダーの追加] をクリックします。
  3. [フォワーダーの名前] フィールドに、フォワーダーの一意の名前を入力します。
  4. [送信]、[確認] の順にクリックします。フォワーダーが追加され、[コレクタの構成を追加する] ウィンドウが表示されます。
  5. [コレクタ名] フィールドに、コレクタの一意の名前を入力します。
  6. [ログタイプ] として [Pulse Secure] を選択します。
  7. [Collector type] として [Syslog] を選択します。
  8. 次の必須入力パラメータを構成します。
    • プロトコル: コレクタが syslog データをリッスンするために使用する接続プロトコルを指定します。
    • アドレス: コレクタが存在し、syslog データをリッスンするターゲット IP アドレスまたはホスト名を指定します。
    • ポート: コレクタが存在し、Syslog データをリッスンするターゲット ポートを指定します。
  9. [送信] をクリックします。

Google Security Operations フォワーダーの詳細については、Google Security Operations UI でフォワーダー構成を管理するをご覧ください。

フォワーダーの作成時に問題が発生した場合は、Google Security Operations サポートにお問い合わせください。

フィールド マッピング リファレンス

このパーサーは、Pulse Secure VPN ログからフィールドを抽出し、Windows イベントログと syslog 形式の両方を処理します。さまざまなログ構造を共通の形式に正規化し、ログイン、ログアウト、接続、ポリシー変更などのイベントを分類し、ユーザー エージェント、IP アドレス、タイムスタンプなどのコンテキスト データを追加します。

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
アクション security_result.action_details action フィールドから直接マッピングされます。
アプリケーション principal.application application フィールドから直接マッピングされます。
bytes_read network.received_bytes bytes_read フィールドから直接マッピングされ、符号なし整数に変換されます。
bytes_written network.sent_bytes bytes_written フィールドから直接マッピングされ、符号なし整数に変換されます。
client_host principal.hostnameprincipal.asset.hostname client_host フィールドから直接マッピングされます。
cmd principal.process.command_line cmd フィールドから直接マッピングされます。
connection_status security_result.detection_fields.value.string_value connection_status フィールドから直接マッピングされます。
data_time metadata.event_timestamp.seconds さまざまなタイムスタンプ形式(MM-dd-yyyy HH:mm:ss Z、RFC 3339、ISO8601、MMM d HH:mm:ss、MMM d HH:mm:ss)を使用して data_time フィールドから解析されます。
devname principal.hostnameprincipal.asset.hostname devname フィールドから直接マッピングされます。
dstip target.iptarget.asset.ip dstip フィールドから直接マッピングされます。
dstport target.port dstport フィールドから直接マッピングされ、整数に変換されます。
dstcountry target.location.country_or_region dstcountry フィールドが「予約済み」または空でない場合、dstcountry フィールドから直接マッピングされます。
duration network.session_duration.seconds duration フィールドから直接マッピングされ、整数に変換されます。
dvc intermediary.hostname または intermediary.ip dvc フィールドを IP アドレスに変換できる場合は、intermediary.ip にマッピングされます。それ以外の場合は intermediary.hostname にマッピングされます。
dvc_hostname intermediary.hostnameprincipal.hostnameprincipal.asset.hostnameintermediary.ipprincipal.ipprincipal.asset.ip dvc_hostname フィールドを IP アドレスに変換できる場合は、それぞれの IP フィールドにマッピングされます。それ以外の場合は、それぞれのホスト名フィールドにマッピングされます。
event_type metadata.product_event_type event_type フィールドから直接マッピングされます。
failure_reason security_result.description failure_reason フィールドから直接マッピングされます。メッセージに「because host」が含まれている場合、失敗の理由の前に「host」というテキストが追加されます。
has_principal event.idm.read_only_udm.principal(プレゼンス) プリンシパル フィールドに値が設定されている場合は「true」、それ以外の場合は「false」に設定します。パーサー ロジックによって導出されます。
has_target event.idm.read_only_udm.target(プレゼンス) ターゲット フィールドに値が設定されている場合は「true」、それ以外の場合は「false」に設定します。パーサー ロジックによって導出されます。
has_target_user event.idm.read_only_udm.target.user.userid(プレゼンス) target.user.userid が入力されている場合は「true」、それ以外の場合は「false」に設定します。パーサー ロジックによって導出されます。
host_ip principal.ipprincipal.asset.ip host_ip フィールドから直接マッピングされます。
host_mac principal.mac host_mac フィールドから直接マッピングされ、ハイフンがコロンに置き換えられます。
http_method network.http.method http_method フィールドから直接マッピングされます。
http_response network.http.response_code http_response フィールドから直接マッピングされ、整数に変換されます。
info_desc about.labels.value info_desc フィールドから直接マッピングされます。
ip_new target.iptarget.asset.ip ip_new フィールドから直接マッピングされます。
level security_result.severitysecurity_result.severity_details security_result.severitylevel フィールドから派生します(「error」/「warning」-> HIGH、「notice」-> MEDIUM、「information」/「info」-> LOW)。level の元の値も security_result.severity_details にマッピングされます。
logid metadata.product_log_id logid フィールドから直接マッピングされます。
locip principal.ipprincipal.asset.ip locip フィールドから直接マッピングされます。
message metadata.description grok フィルタと kv フィルタを使用してさまざまなフィールドを抽出するために使用されます。メッセージに「EventID」が含まれている場合、Windows イベントログとして処理されます。
message_info metadata.description より具体的な grok パターンで使用されていない場合は、metadata.description に直接マッピングされます。
msg metadata.product_event_typemetadata.description msg フィールドが存在する場合、商品タイプが抽出され、metadata.product_event_type にマッピングされ、残りのメッセージは metadata.description にマッピングされます。
msg_hostname principal.hostnameprincipal.asset.hostname msg_hostname フィールドから直接マッピングされます。
msg_ip principal.ipprincipal.asset.ip msg_ip フィールドから直接マッピングされます。
msg_user_agent network.http.user_agentnetwork.http.parsed_user_agentmetadata.product_version ユーザー エージェント文字列は network.http.user_agent にマッピングされ、解析されたユーザー エージェントは network.http.parsed_user_agent にマッピングされ、プロダクト バージョン(存在する場合)は metadata.product_version にマッピングされます。
network_duration network.session_duration.seconds network_duration フィールドから直接マッピングされ、整数に変換されます。
policyid security_result.rule_id policyid フィールドから直接マッピングされます。
policyname security_result.rule_name policyname フィールドから直接マッピングされます。
policytype security_result.rule_type policytype フィールドから直接マッピングされます。
priority_code about.labels.value priority_code フィールドから直接マッピングされ、[Severity] キーの about.labels.value の導出にも使用されます(ロジックをご覧ください)。
prod_name metadata.product_name prod_name フィールドから直接マッピングされます。
product_type metadata.product_event_type product_type フィールドから直接マッピングされます。
product_version metadata.product_version product_version フィールドから直接マッピングされます。
proto network.ip_protocol ルックアップを使用して IP プロトコル名に変換された後、network.ip_protocol にマッピングされます。
pwd principal.process.file.full_path pwd フィールドから直接マッピングされます。
レルム principal.group.attribute.labels.value realm フィールドから直接マッピングされます。
rcvdbyte network.received_bytes rcvdbyte フィールドから直接マッピングされ、符号なし整数に変換されます。
remip target.ip remip フィールドから直接マッピングされます。
resource_name target.resource.name 先頭と末尾の空白文字とハイフンを削除した後、resource_name フィールドから直接マッピングされます。
resource_status security_result.description resource_status フィールドから直接マッピングされます。
resource_user_group principal.user.group_identifiers resource_user_group フィールドから直接マッピングされます。
resource_user_name principal.user.userid resource_user_name フィールドから直接マッピングされます。
ロール principal.user.group_identifiers roles フィールドから直接マッピングされます。
sentbyte network.sent_bytes sentbyte フィールドから直接マッピングされ、符号なし整数に変換されます。
session_id network.session_id session_id フィールドから直接マッピングされます。
sessionid network.session_id sessionid フィールドから直接マッピングされます。
srcip principal.ipprincipal.asset.ip srcip フィールドから直接マッピングされます。
srcport principal.port srcport フィールドから直接マッピングされ、整数に変換されます。
srccountry principal.location.country_or_region srccountry フィールドが「予約済み」または空でない場合、srccountry フィールドから直接マッピングされます。
subtype metadata.product_event_type type と組み合わせて metadata.product_event_type を形成します。
target_file target.file.full_path target_file フィールドから直接マッピングされます。
target_host target.hostnametarget.asset.hostname target_host フィールドから直接マッピングされます。
target_ip target.iptarget.asset.ip target_ip フィールドから直接マッピングされます。
target_port target.port target_port フィールドから直接マッピングされ、整数に変換されます。
target_url target.url target_url フィールドから直接マッピングされます。
時間 metadata.event_timestamp.seconds 「yyyy-MM-dd HH:mm:ss」形式で time フィールドから解析されます。
type metadata.product_event_type subtype と組み合わせて metadata.product_event_type を形成します。
u_event_source_ip principal.ipprincipal.asset.iptarget.ipのいずれか target_ip または target_host が存在する場合、u_event_source_ipprincipal.ipprincipal.asset.ip にマッピングされます。それ以外の場合、target_iptarget_hosttarget_url がすべて空の場合、u_event_source_iptarget.ip にマッピングされます。
u_observer_ip observer.ip u_observer_ip フィールドから直接マッピングされます。
u_prin_ip principal.ipprincipal.asset.ip u_prin_ip フィールドから直接マッピングされます。
ユーザー target.user.userid user フィールドから直接マッピングされます。
user_agent network.http.user_agentnetwork.http.parsed_user_agent ユーザー エージェント文字列は network.http.user_agent にマッピングされ、解析されたユーザー エージェントは network.http.parsed_user_agent にマッピングされます。
user_group_identifier target.user.group_identifiers または principal.user.group_identifiers ほとんどの場合、target.user.group_identifiers にマッピングされます。IP 変更(USER_UNCATEGORIZED)イベントと Realm の制限イベントで principal.user.group_identifiers にマッピングされました。
user_ip principal.ipprincipal.asset.ip user_ip フィールドから直接マッピングされます。空で、u_event_source_ip が空でない場合、u_event_source_ip の値が使用されます。
ユーザー名 principal.user.userid または target.user.userid ほとんどの場合、principal.user.userid にマッピングされます。特定のシナリオ(detect_user_logout_failed が false で detect_policy_change_failed が false の場合など)では target.user.userid にマッピングされます。
username_removed target.user.userid username_removed フィールドから直接マッピングされます。
vd principal.administrative_domain vd フィールドから直接マッピングされます。

metadata.vendor_namemetadata.product_namemetadata.event_typemetadata.log_typenetwork.ip_protocolsecurity_result.actionsecurity_result.severityextensions.auth.type は、[ロジック] 列に記述されている条件に基づいて、パーサー ロジックによって導出または設定されます。

変更点

2024-05-27

  • 「observer_hostname」を「observer.hostname」にマッピングしました。
  • 「dvc_hostname」が有効な IP アドレスの場合は「principal.ip」にマッピングし、それ以外の場合は「principal.hostname」にマッピングしました。
  • 「priority_code」、「Syslog_version」、「info_desc」を「about.labels」にマッピングしました。
  • 「prod_name」を「metadata.product_event_type」にマッピングしました。

2024-04-16

  • 新しい GROK パターンを追加して、SYSLOG ログの新しいパターンを解析しました。
  • 「connection_status」を「security_result.detection_fields」にマッピングしました。

2024-02-26

  • Key-Value データを解析する「kv」ブロックを追加しました。
  • 「username」を「target.user.userid」にマッピングしました。
  • 「message_info」の条件付きチェックを追加しました。
  • 「u_prin_ip」を「principal.ip」にマッピングしました。
  • 「u_observer_ip」を「observer.ip」にマッピングしました。

2023-11-07

  • バグの修正:
  • 「observer_host」のマッピングを「observer.hostname」から「additional.fields」に変更しました。

2023-08-19

  • 失敗したログを解析するための Grok パターンを追加しました。

2023-05-26

  • 新しい syslog ログをサポートする Grok パターンを追加しました。

2023-01-06

  • 「product_type」を解析して「metadata.product_event_type」にマッピングするように、GROK を変更しました。

2022-10-25

  • session_id を抽出するための「message_info」の新しい grok パターンを追加しました。
  • 「session_id」を「network.session_id」にマッピングしました。
  • detect_policy_change_failed が false の場合に target.ip を principal.ip に変更しました。
  • detect_policy_change_failed が false の場合に、target.mac を principal.mac に変更しました。

2022-10-12

  • 機能強化 - 次のフィールドのマッピングを追加しました。
  • 「msg」フィールドから IP の値を抽出し、「principal.ip」にマッピングしました。
  • 「msg」フィールドからホスト名の値を抽出し、「principal.hostname」にマッピングしました。
  • 「user」を「target.user.userid」にマッピングしました。
  • 「realm」を「principal.group.attribute.labels」にマッピングしました。
  • 「roles」を「principal.user.group_identifiers」にマッピングしました。
  • 「metadata.event_type」の値を「GENERIC_EVENT」から「USER_UNCATEGORIZED」に変更しました。

2022-10-03

  • 機能拡張 - 「sudo」を含むログを解析しました。
  • 新しい Key-Value ペア形式のログのサポートを追加しました。

2022-07-01

  • 機能強化 - イベント ID 4624 の新しいイベントを生成
  • 「principal.ip」、「target.ip」、「principal.hostname」が null でない場合は、metadata.event_type を「GENERIC_EVENT」から「STATUS_UPDATE」または「NETWORK_CONNECTION」に変更しました。

2022-04-13

  • 機能拡張 - GENERIC_EVENT イベントタイプの新しいフィールドのマッピングを追加しました。
  • user_ip を event.idm.read_only_udm.principal.ip に変更。
  • user_group_identifier を event.idm.read_only_udm.target.user.group_identifiers に変更しました。
  • すべての event_type のタイムスタンプを変更して、タイムゾーンを含めました。
  • GENERIC イベントタイプと NETWORK_CONNECTION イベントタイプのフィールド user_ip、target_ip を変更しました。