OSSのSOAR『Shuffle』 ~導入~
つい先日、OSSのSOAR*1でShuffleというのが登場した、というのを知り、さっそく触ってみました。
SOARについては以前Splunk Phantomを少し触ったことがありますが、今回はOSSのSOARということで、所謂製品版との違いや、どのような活用方法が考えられるかなど確かめてみたいなと思い触り始めました。
参考:
www.splunk.com
何回かに分けて試してみたこと、感じたことを書いていこうと思います。
導入方法
導入についてですが、お試しで利用する場合はとても簡単で、Githubに公開されているdocker-compose.ymlを持ってきて実行するだけです。
ただ今回はSplunkとの連携も行ってみたいと考えており、少しカスタマイズし導入します。
事前準備
今回、Dockerを動かす環境はCentOS7を利用しました。
Minimalでインストールし、IP設定、yum update、SELinux無効化などを事前に行っておきます。
Docker、Docker-Composeの導入
Dockerを導入します。
yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum install -y docker-ce docker-ce-cli containerd.io systemctl start docker systemctl enable docker
参考: qiita.com
Docker-Composeを導入します。
curl -L "https://github.com/docker/compose/releases/download/1.26.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
参考: docs.docker.com
gitの導入
gitコマンドを使えるようにします。
yum install git
Shuffle導入
導入方法
こちらを参考にShuffleを導入します。 https://github.com/frikky/shuffle/blob/master/install-guide.mdgithub.com
git clone https://github.com/frikky/Shuffle cd Shuffle
公式のページではDocker Composeで起動していますが、Splunkと連携させたかったため、DockerのSplunkを利用するようdocker-compose.ymlを修正します。
具体的にはdocker-compose.ymlファイルのservice定義の中に以下を追記します。
splunk: hostname: shuffle-splunk image: splunk/splunk:latest environment: SPLUNK_START_ARGS: --accept-license SPLUNK_ENABLE_LISTEN: 9997 SPLUNK_PASSWORD: password ports: - "18000:8000" - "9997:9997" networks: - shuffle
最後にDocker Composeで起動します。
docker-compose up -d
docker psコマンドで状態を確認し、すべてのコンテナが起動したことを確認します。
(Splunkのみ、1分ほど時間がかかります。状態がhealtyになっていることを確認します。)
docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS bdc1fbbebaab frikky/shuffle:frontend "nginx -g 'daemon of…" About a minute ago Up 59 seconds 3e55ef72e353 frikky/shuffle:backend "./webapp" About a minute ago Up About a minute 4c88428bbea7 frikky/shuffle:orborus "./orborus" About a minute ago Up About a minute bfb8f128f663 splunk/splunk:latest "/sbin/entrypoint.sh…" About a minute ago Up About a minute (healthy) 35515f41623a frikky/shuffle:database "gcloud beta emulato…" About a minute ago Up About a minute
起動確認
以下にアクセスし、shuffleにアクセスできることを確認します。
(初回アクセス時は管理者アカウント作成を促されますので、適宜作成します。)
http://[docker host]:3001/
また、以下にもアクセスし、Splunkにアクセスできることを確認します。
(admin/passwordでログインできます。)
http://[docker host]:18000/
以上で導入は完了です。
次回以降の記事では、Workflow作成、Splunkとの連携も行ってみたいと思います。
*1:Security Orchestration, Automation and Response。こちらなどご参考に:セキュリティオーケストレーション(SOAR)とは?仕組みやメリット、注意点について徹底解説