Splunk Enterprise Security 8.X系からSOARとのネイティブでのペアリングができるようになりました。
Automationにフォーカスした場合には、以前のSOARと同じくActionやPlaybookを利用してインシデントに対する対応を自動化できる、ということになりほとんど何も変りません。しかしながら、素のSOARを利用していた方々にとってはESとの連携によって大きく異なるところがあります。
この記事は実際何が異なるのかをメモ書きとして残していきたいと思います。
そもそも何が変わったのか?
1 ネイティブでのES-SOARペアリング
ES8.0よりSOARのApp(Splunk App for SOAR Export)を利用しないで、ES Cloud-SOAR Cloudでのペアリングを行うことが可能になり、ES8.1でオンプレ版のESでもオンプレ同士のペアリングが可能になりました。さらにES8.2.3ではクラウドのESとオンプレのSOARのペアリングも可能になりました。(残念ながら、逆のオンプレ ESとCloud SOARとのペアリングはできません・・・)
ペアリング、という意味通り1:1の連携となってn:nの連携はできません。
また、SOARのCommunityライセンスではペアリングができないことも注意が必要です。
2 ESとのSSO
ペアリングが完了すると、SOARのアカウントではなくESのアカウントにてSOARへログインすることができるようになります。ペアリング時にESのロールとSOARのロールを関連付けする必要があります。
ペアリングを行うための画面を表示するためには、Splunk Cloudの場合には sc_admin オンプレの場合には admin ロールが必要です。また、ロールマッピングの対象となるESのロールには soar_user というcapabilityを継承するようにしなければなりません。
基本的なロールのマッピングはマニュアルにありますが、下記の通りであるとのことです。
| ESのロール | SOARのロール |
|---|---|
| mc_admin | Automation Enginner |
| ess_admin | Incident Commander |
| ess_user | Observer |
ペアリングが完了すると、SOAR側のユーザは基本的にデフォルトのビルトインアカウントであるLocal Admin(soar_local_admin)アカウントを残して全てSplunk管理のユーザとなります。

3 ESとペアリングした場合にはSOAR側の画面はPlaybook作成する時等、SOAR側の設定以外に使用しない
ESにはIncident Review(ES8以前)や、Mission ControlのAnalyst Queue(App/ES8以降)のようなインシデント管理画面があり、SOARにも同様にインシデントを管理するEvent管理画面が存在しています。どちらの画面を使うのが良いのか?という疑問が多く寄せられていたのも事実です。
ペアリングしたESとSOARは、主にESの画面を使ってインシデントを管理することができるようになりました。基本的にSOARの画面はPlaybookの参照や編集、あるいはSOARの設定やConnector(Apps)の管理のみに使うことになります。
4 Playbookで参照する各種フィールドの値を取得するデータパスが変更
ES8以前のペアリングがされていないSOARのPlaybookが、Eventのデータを参照する場合には、基本的にSOARのデーターフォーマットであるCEF形式でのフィールド指定を利用します。ES8以降で、ペアリングを行ったES/SOARの場合はCEFフォーマットではなくESのフィールドを参照するためのデーターパスとなります。そのため既存のSOARを利用しているユーザーはPlaybookの変更が必要となります。
例えば、送信先アドレスを例にとると、
SOARの場合は、artifact:*.cef.destinationAddress
ESの場合は、finding:consolidated_findings.dest_ip
のような指定になります。


5 VPE(Visual Playbook Editor)にES用のPlaybook作成が追加
上記3で記したようにESとペアリングするとSOARのイベント管理画面は利用しなくなります。そのため、ES側のAnalyst Quese画面がインシデント管理の画面となるために、ESへのデータパスを主に利用することになります。また、イベントではなくESのDetectionsで検知されたFindingあるいは中間Findingを直接参照しなけれなならないことになります。Playbook作成画面の”Enterprise Security”を選択することによって、デフォルトのデータパスがES主体となるので、ペアリングしたSOARの場合にはこれを選ぶことになります。

6 VPEにESブロックが追加
ES8系はSOARとの連携などの機能拡張によってREST APIも強化されています。SOARにてアクションを行うときに利用できるAPIをESのブロックとして提供を行なっています。ほとんど全ての機能をSOARのPlaybookから実行することができると言っています。

7 PlaybookやActionの結果はESのInvestigation画面にある Automation タブに表示される
SOAR画面にてインシデントの管理を行う場合にはPlaybookの実行結果やActionの実行結果はEventを開いた画面にて確認できていました。ペアリングを行ったESでは、Automationタブで見ることが可能となります。

8 Automation Rule Frameworkの追加
SOAR単体で運用する時、特定のイベントに対して自動実行させるPlaybookがある場合にはコンテナ名を元にPlaybookを自動実行する設定がありました。ESの場合に同じことを行いたい場合には新しく追加されたAutomation Ruleを設定することによって可能となります。

他にも細々とした変更点やアップグーレドはあるのですが、主な変更点はこんな感じです。
特に重要なのがインシデント管理の機能をESが持つために、例えばPlaybookの実行結果などをNoteとしてインシデントの情報に追記することをSOARではなくESの画面側へ変更しなければなりません。

上の画面が、SOAR単体の場合のNote指定です。
ESの場合には下記のような指定を行わなければなりません。

以上のように、ESと連携した場合にSOARの扱いが少しばかり変わるので、注意が必要になります。ただ、ペアリングしたESとSOARの提供するTDIR(Threat Detection Incident Response)による1画面での検知から対応までを運用できるということは大変魅力的ですので、移行をお考えの場合には上記の点を注意して行うようにした方が良いでしょう。
[EOD]