Demistoでセキュリティ業務を効率化しよう

# Intro
SOC的な業務は面白い事も沢山ありますが、それと同じくらいダルくもあります。例えば、「ドキュメントの作成」「進捗図の更新」「エビデンスの確保」「レスポンス前の細かい初期確認・トリアージ作業」。自分にとって、出来ればやりたくない日々の業務です。というのも、フロー・マニュアルが定まってはいるが、そこそこ時間のかかる作業でメンドイからです。よって自動化したいと常々考えていたのですが、良さげなサービスを見つけたので紹介します。それがChatOpsベースのSOCサービス[「DEMISTO」](https://www.demisto.com/)です。

# Demisto内容
DEMISTOのサービスでは、以下のサービスが提供されます。尚、原文なのは日本語訳が思いつかなかったから...

* Bi-directional Integration with products for Information Enrichment and Response Actions
* Triage and Respond Rapidly through Automated Playbooks
* Investigate and Collaborate with Security ChatOps
* Journaling and Evidentiary Support
* Report, Assess and Audit via Automated Documentation

とはいえ、上記の機能はEnterprise版およびFree版のみです。Free版は会社のメールアドレスを登録しないと利用できないので、週末に調査することはできませんでした。しかし、更に限定的とは言えSlack Integration版もありましたので、今回はそちらを利用してみました。

# Slack版Demisto

## Slack版で出来ること
Enterprise/Free版でいう「Investigate and Collaborate with Security ChatOps」の
レピュテーションチェックのみが可能です。レピュテーションチェックとは、脅威インテリジェンスと、ファイルのハッシュ値・IPアドレス・URLを照合するものです。Slack版Demistoを使えばbotが勝手にチェックしてくれるので非常に楽です。現時点では、IBM X-Force、Virus Total、Cylanceといった脅威インテリジェンスと連携しているようです。

## デモ
* 事前準備: [ここから自組織Slackに連携](http://dbot.demisto.com/slackuser)

## 監視するチャネルを指定する 
* dbot(Slack連携すると追加されるボットアカウント)とのDirect Messagesで設定

![image](https://qiita-image-store.s3.amazonaws.com/0/59166/7f516504-77d6-656c-100d-759bd44a4144.png)


```
join all/#channel1, #channel2

```

![image](https://qiita-image-store.s3.amazonaws.com/0/59166/41459858-03a0-f2a2-705b-4acb99a11437.png)


## Verboseモードの設定
* dbotとのDirect Messagesで設定
* 実際に脅威インテリジェンスと照合した結果を通知するためには、これを設定する必要があります

```
verbose on #channel1, private1
```

![image](https://qiita-image-store.s3.amazonaws.com/0/59166/c08af27f-8237-29c2-71b9-e1e3ac712f2d.png)


## IPを検査する
* dbotがjoin済み・verbose on済みのチャネルにIPを打ちます

![image](https://qiita-image-store.s3.amazonaws.com/0/59166/4b8b5d5f-4215-f053-e402-c091a801bcac.png)


## サイトを検査する
* dbotがjoin済み・verbose on済みのチャネルにURLを打ちます

![image](https://qiita-image-store.s3.amazonaws.com/0/59166/72055c6b-fb9e-ed96-f2c6-1aed3eb7c8ff.png)



## ファイルを検査する
* dbotがjoin済み・verbose on済みのチャネルにファイルをアップロードします

![image](https://qiita-image-store.s3.amazonaws.com/0/59166/9f7353e2-b0de-84e6-baa0-e97b5efa9a05.png)


## MD5ハッシュ値を検査する
* dbotがjoin済み・verbose on済みのチャネルにファイルのハッシュ値を打ちます
* 尚、sha256/sha1は検査されません

![image](https://qiita-image-store.s3.amazonaws.com/0/59166/21efc8b8-ba66-a6c6-4bbc-23f2088e33e5.png)


凄い（小並感
以上です。機会があれば、Slack版ではないFree版も試して見ようと思います。


# おまけ
EnterpriseとFree版の機能を書いておきます。

## レスポンス製品と情報インベントリ製品との双方向な統合
「Bi-directional Integration with products for Information Enrichment and Response Actions」を直訳したので、頭痛が痛いみたいな表現になってしまい、お詫び申し上げます。

Twilio, Exabeam, Black Carbon, Slack, Active Directory, CheckPointを始めとした様々なツールと連携している様です。恐らく「大量に外部送信してる通信(CheckPoint)かつ通常行動パターンとことなる挙動(Exabeam)を端末がしてて、Black Carbonがアラートあげてるから、管理者に連絡して(Twillio, Slack)、アカウントを一旦凍結(Active Directory)しつつ、穴を閉じ(CheckPoint)〜ましょ〜」のように、アクションとインベントリを連携可能にしているのかと思われます。

## 自動プレイブックの生成と準備

DEMISTOは、インシデントが発生した場合、事前に定義した条件から、適切なPlayBookを選択します。このPlaybook内には複数のタスクが含まれており、自動で担当・期限が割り当てられるなど、それぞれの進捗確認・更新が容易になっています。各タスクについては、アサインされた担当がマニュアルに従って仕事をすることも可能ですが、Demistoが自動実行することもあるそうです。

## セキュリティChatOpsによる調査と連携
これはタイトルそのままですが、過去分の調査と被ってないか自動でチェックしてくれたり、調査結果をエビデンス保存するなどの機能が、チャット上でワンクリックで実行可能なようです。便利です〜

## ジャーナリングとエビデンスサポート
上述通り

## 自動ドキュメントによるレポート、評価、監査
自組織が抱えているインシデント全体のレポートを作成してくれるようです。抱えているインシデントの数、SLAの状況、インシデントの種類といったことを分かりやすいレポートにおとしてくれます。SOCやCSIRTそのもので役に立つより、チーム外にSOCの成果を報告する上でよさそうです。