Atlassian Jira のログを収集する
以下でサポートされています。
Google SecOps
SIEM
概要
このパーサーは、SYSLOG 形式と JSON 形式の Atlassian Jira ログを処理します。まず、メッセージを JSON として解析しようとします。失敗した場合は、grok パターンを使用して SYSLOG 形式のメッセージを解析し、IP アドレス、ユーザー名、HTTP メソッド、レスポンス コードなどのさまざまなフィールドを抽出し、それらを UDM にマッピングします。また、パーサーはログインの成功と失敗などの特定の Jira 監査イベントを処理し、関連するフィールドを UDM 内のセキュリティ結果属性にマッピングします。
始める前に
次の前提条件を満たしていることを確認します。
- Google SecOps インスタンス。
- Atlassian Jira への特権アクセス。
[SIEM 設定] > [フィード] でフィードを設定する
フィードを構成する手順は次のとおりです。
- [SIEM Settings] > [Feeds] に移動します。
- [Add New Feed] をクリックします。
- 次のページで [単一のフィードを設定] をクリックします。
- [フィード名] フィールドに、フィードの名前を入力します(例: Atlassian Jira Logs)。
- [Source type] として [Webhook] を選択します。
- [Log type] で [Atlassian Jira] を選択します。
- [次へ] をクリックします。
- 省略可: 次の入力パラメータの値を指定します。
- 分割区切り文字: ログ行を区切るために使用される区切り文字(
\n
など)。 - Asset namespace: アセットの名前空間。
- Ingestion labels: このフィードのイベントに適用されるラベル。
- 分割区切り文字: ログ行を区切るために使用される区切り文字(
- [次へ] をクリックします。
- [Finalize] 画面でフィードの設定を確認し、[Submit] をクリックします。
- [秘密鍵を生成する] をクリックして、このフィードを認証するためのシークレット キーを生成します。
- 秘密鍵をコピーして保存します。この秘密鍵を再び表示することはできません。必要に応じて、新しい秘密鍵を再生成できますが、この操作により以前の秘密鍵は無効になります。
- [詳細] タブで、[エンドポイント情報] フィールドから、フィードのエンドポイント URL をコピーします。このエンドポイント URL をクライアント アプリケーション内で指定する必要があります。
- [完了] をクリックします。
Webhook フィード用の API キーを作成する
- Google Cloud コンソール > [認証情報] に移動します。
- [認証情報を作成] をクリックして [API キー] を選択します。
- API キーのアクセスを Google Security Operations API に制限します。
エンドポイント URL を指定する
- クライアント アプリケーション内で、Webhook フィードで提供される HTTPS エンドポイント URL を指定します。
次の形式でカスタム ヘッダーの一部として API キーと秘密鍵を指定して、認証を有効にします。
X-goog-api-key = API_KEY X-Webhook-Access-Key = SECRET
推奨事項: API キーは URL 内ではなくヘッダーとして指定してください。Webhook クライアントがカスタム ヘッダーをサポートしていない場合は、次の形式のクエリ パラメータを使用して API キーと秘密鍵を指定できます。
ENDPOINT_URL?key=API_KEY&secret=SECRET
以下を置き換えます。
ENDPOINT_URL
: フィード エンドポイントの URL。API_KEY
: Google Security Operations に対する認証に使用する API キー。SECRET
: フィードの認証用に生成した秘密鍵。
Google SecOps 用に Atlassian Jira で Webhook を作成する
- 管理者として Jira インスタンスにアクセスします。
- [Settings] settings > [System] > [WebHooks] に移動します。
- [Create a WebHook] をクリックします。
- 次の Webhook の詳細を構成します。
- Name: Webhook のわかりやすい名前を入力します(例: Google SecOps Integration)。
- URL: Google SecOps API エンドポイント URL を入力します。
- Events: Webhook をトリガーする Jira イベントを選択します。セキュリティ モニタリングの必要性に応じてイベントを選択します(問題の発生、問題の更新、コメントの追加など)。必要に応じて [All Events] を選択できます。
- 省略可: JQL Filter: JQL フィルタを使用して、Webhook をトリガーするイベントをさらに絞り込みます。これは、特定のプロジェクト、問題タイプ、その他の条件に焦点を当てる場合に便利です。
- Exclude body: このチェックボックスはオフのままにします。Webhook は、イベントデータを JSON 形式で Google SecOps に送信する必要があります。
- [Create] をクリックして、Webhook の構成を保存します。
UDM マッピング テーブル
ログフィールド | UDM マッピング | 論理 |
---|---|---|
affectedObjects.id |
target.resource.attribute.labels.value |
affectedObjects 配列の各オブジェクト内の id フィールドは、キー「ID_[index]」を持つラベルにマッピングされます。[index] は、配列内のオブジェクトの位置です。 |
affectedObjects.name |
target.resource.attribute.labels.value |
affectedObjects 配列の各オブジェクト内の name フィールドは、キー「Name_[index]」を持つラベルにマッピングされます。[index] は、配列内のオブジェクトの位置です。 |
affectedObjects.type |
target.resource.attribute.labels.value |
affectedObjects 配列の各オブジェクト内の type フィールドは、キー「Type_[index]」を持つラベルにマッピングされます。[index] は、配列内のオブジェクトの位置です。 |
associatedItems.0.id |
target.user.userid |
associatedItems.0.typeName が「USER」の場合、このフィールドは target.user.userid にマッピングされます。それ以外の場合は、security_result.detection_fields のキー「associatedItems Id」を持つラベルにマッピングされます。 |
associatedItems.0.name |
target.user.user_display_name |
associatedItems.0.typeName が「USER」の場合、このフィールドは target.user.user_display_name にマッピングされます。それ以外の場合は、security_result.detection_fields のキー「associatedItems Name」を持つラベルにマッピングされます。 |
associatedItems.0.parentId |
target.process.parent_process.pid |
associatedItems.0.typeName が「USER」の場合、このフィールドは target.process.parent_process.pid にマッピングされます。 |
associatedItems.0.parentName |
target.resource.parent |
associatedItems.0.typeName が「USER」の場合、このフィールドは target.resource.parent にマッピングされます。 |
associatedItems.0.typeName |
security_result.detection_fields.value |
security_result.detection_fields のキー「associatedItems TypeName」を持つラベルにマッピングされます。 |
author.id |
principal.user.userid |
principal.user.userid にマッピングされます。 |
author.name |
principal.user.user_display_name |
principal.user.user_display_name にマッピングされます。 |
author.type |
principal.resource.attribute.labels.value |
principal.resource.attribute.labels のキー「Author Type」を持つラベルにマッピングされます。 |
author.uri |
principal.url |
principal.url にマッピングされます。 |
authorAccountId |
principal.user.userid |
principal.user.userid にマッピングされます。 |
authorKey |
target.resource.attribute.labels.value |
target.resource.attribute.labels のキー「Author Key」を持つラベルにマッピングされます。 |
auditType.action |
security_result.summary |
security_result.summary にマッピングされます。security_result.action と metadata.event_type の導出にも使用されます(アクションに「login」が含まれている場合は USER_LOGIN、「successful」の場合は ALLOW、「failed」の場合は BLOCK)。 |
auditType.area |
metadata.product_event_type |
metadata.product_event_type にマッピングされます。 |
auditType.category |
security_result.category_details |
security_result.category_details にマッピングされます。 |
category |
metadata.product_event_type |
metadata.product_event_type にマッピングされます。 |
changedValues.changedFrom |
security_result.about.resource.attribute.labels.value |
security_result.about.resource.attribute.labels のキー「Changed From」を持つラベルにマッピングされます。 |
changedValues.changedTo |
security_result.about.resource.attribute.labels.value |
security_result.about.resource.attribute.labels のキー「Changed To」を持つラベルにマッピングされます。 |
changedValues.fieldName |
security_result.about.resource.attribute.labels.value |
security_result.about.resource.attribute.labels のキー「FieldName」を持つラベルにマッピングされます。 |
changedValues.i18nKey |
security_result.about.resource.attribute.labels.value |
security_result.about.resource.attribute.labels のキー「FieldName」を持つラベルにマッピングされます。 |
changedValues.key |
security_result.about.resource.attribute.labels.value |
security_result.about.resource.attribute.labels のキー「Changed From」を持つラベルにマッピングされます。 |
changedValues.to |
security_result.about.resource.attribute.labels.value |
security_result.about.resource.attribute.labels のキー「Changed To」を持つラベルにマッピングされます。 |
created |
metadata.event_timestamp |
解析され、metadata.event_timestamp にマッピングされます。 |
dst_ip |
target.ip |
target.ip にマッピングされます。 |
extraAttributes.name |
principal.resource.attribute.labels.value |
principal.resource.attribute.labels のキー「Name」を持つラベルにマッピングされます。 |
extraAttributes.value |
principal.resource.attribute.labels.value |
principal.resource.attribute.labels のキー「Value」を持つラベルにマッピングされます。 |
http_method |
network.http.method |
network.http.method にマッピングされます。 |
http_referral_url |
network.http.referral_url |
network.http.referral_url にマッピングされます。 |
id |
metadata.product_log_id |
metadata.product_log_id にマッピングされます。 |
objectItem.id |
security_result.detection_fields.value |
security_result.detection_fields のキー「objectItem Id」を持つラベルにマッピングされます。 |
objectItem.name |
security_result.detection_fields.value |
security_result.detection_fields のキー「objectItem Name」を持つラベルにマッピングされます。 |
objectItem.typeName |
security_result.detection_fields.value |
security_result.detection_fields のキー「objectItem TypeName」を持つラベルにマッピングされます。 |
path |
principal.url |
「-」または「/status」以外の場合は、principal.url にマッピングされます。 |
protocol |
network.ip_protocol |
「HTTP」の場合は network.ip_protocol にマッピングされます。 |
remoteAddress |
principal.ip |
principal.ip にマッピングされます。 |
response_code |
network.http.response_code |
network.http.response_code にマッピングされます。 |
sent_bytes |
network.sent_bytes |
network.sent_bytes にマッピングされます。 |
source |
principal.ip |
解析して IP アドレスを抽出し、principal.ip に統合されます。 |
src_ip1 、src_ip2 、src_ip3 |
principal.ip |
principal.ip にマッピングされます。 |
summary |
metadata.description |
metadata.description にマッピングされます。 |
user_agent |
network.http.user_agent |
network.http.user_agent にマッピングされます。 |
user_name |
principal.user.userid |
principal.user.userid にマッピングされます。auditType.action に「login」が含まれている場合は、「MACHINE」に設定されます。syslog を解析する場合は date_time から、JSON を解析する場合は created から取得されます。timestamp が JSON で使用可能な場合は、created の代わりに使用されます。いずれも存在しない場合は、バッチの create_time が使用されます。他のフィールドの有無に基づいて派生します。dst_ip が存在する場合は NETWORK_HTTP、user_name が存在する場合、または(associatedItems.0.typeName が「USER」で associatedItems.0.id が存在する場合)は USER_UNCATEGORIZED、src_ip1 、src_ip2 、src_ip3 、remoteAddress のいずれかが存在する場合は STATUS_UPDATE、それ以外の場合は GENERIC_EVENT です。auditType.action に「login」が含まれている場合は、USER_LOGIN にオーバーライドされます。常に「ATLASSIAN_JIRA」に設定されます。常に「ATLASSIAN_JIRA」に設定されます。auditType.action に「login successful」が含まれている場合は「ALLOW」、auditType.action に「login failed」が含まれている場合は「BLOCK」に設定されます。 |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。