Attack Surface Analyzer 2.0が出たのでmac上で動かしてみた

# なぜやろうとおもったか
ふとタイムラインにこの記事が流れてきたので、興味を持った

> Microsoft、セキュリティ分析ツール「Attack Surface Analyzer 2.0」を無償公開
> v1.0はWindows専用だったが、v2.0はWindows、LinuxおよびmacOS上で動作する
> スキャンできるシステム項目は、
> - ファイルシステム
> - ユーザーアカウント
> - システムサービス
> - ネットワークポート
> - システム証明書ストア
> - レジストリ（Windows版のみ）
> https://forest.watch.impress.co.jp/docs/news/1185544.html

# TL;DR
- 実際に使ったときのUIが気になる方に、参考になるかな？ってレベルの記事になりました
- そもそも脆弱性診断かとおもったら、システムの差分比較ツールだった (原文よく読め!と。笑)
    - ``sudo``で動かすのでMS製じゃなかったら実行してないなと
- やたらディスクアクセスするので（下記参照）、下手に本番とかで動かすとヤバそう（語彙力
- 最近自分はServerlessでつくっちゃってるので、これの業務での用途はみえなかった
- マニアむけ過ぎて、個人的な期待値を結構下回った

# GUIモードで実行してみた
- 環境
    - mac 10.14.5
    - chrome@latest
- githubからDLしてくる
    - https://github.com/microsoft/AttackSurfaceAnalyzer/releases/tag/v2.0.143%2Bfe41ced7df
    - ``AsaGui-slim-macos-2.0.143.tar.gz``をDLした
- 実行

```bash
sudo /path/to/download/AsaGui-slim-macos-2.0.143/AttackSurfaceAnalyzer-GUI
```
- ``http://localhost:5000``に立ち上がるのでchromeでアクセス

## top画面こんな感じ
<img width="1031" alt="ASA-1.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/5d6795fe-d245-9b22-550a-b26ae9874469.png">

## Get Stargedボタン押したあと
<img width="958" alt="ASA-2.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/37e852b8-d5c3-f5f6-3f50-fa8e8174867f.png">


## Collect Data押したあと
- 押した直後 (実際に歯車はぐるぐる回転アニメーションがついてる)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/92a2f753-176a-adf4-6b6c-0597aabc6e1a.png)

- ちょっと進んだ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/4bb7e8e0-935c-59ca-ba1b-1c42a5bdf3fb.png)

- マシンがうなり始めた
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/7d85a0c0-495f-2382-8d1a-6717617f2543.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/7ff7eb52-8d7d-77f2-ed31-2f72a00e858b.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/b23f1ab4-d655-dc54-d168-74441861669f.png)

## しばらく放置。終わったらまたこの記事更新します。
![asa.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/39daae90-18fe-54d7-5d2e-3489b6f7b938.gif)

## 15分ぐらいでおわった
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/084c57e7-2ab1-7a94-1cda-e5d8ab71f6c7.png" width="250px">

# Analyze
- よくわかってなかったが、このツールは 基準データ(Base collection)と、最終データの差分で異常検知をしている
- なので、時間をあけて再度Collect Dataを実行し、その２つをつかってAnalyzeかけてみた
- 実行中
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/a5499075-7654-5118-b335-d553ee780022.png)
- めっちゃディスクにアクセスしてる。これ寿命縮めそう...
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/0074e39b-acaa-6b63-afaf-4260229d3af1.png)
- 処理結果
    - 新しく作られたフォルダとかPort開いてる差分とかそういうのを表示してくれる
    - JSONでエクスポートできる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/44c234c4-f5f2-a8bf-afc8-10dad413aa7f.png)

- GUI起動したターミナルにでてたログ (抜粋)

```bash
[16:39:44 INF] Comparing 19/05/22 14:36:07 vs 19/05/22 15:11:10
[16:39:44 INF] Begin : FileSystemCompare
[16:41:43 INF] Found 7697 Created
[16:43:31 INF] Found 10359 Deleted
[16:46:02 INF] Found 303 Modified
```

# 収集されたデータ (asa.sqlite)の中身をみてみた
- Analyzeまで終わった状態で、なんと **4.9GB!!**

```bash
-rw-r--r--  1 root  staff   4.9G asa.sqlite
```

## テーブル構成としてはこんな感じ
- table内のデータは公開すると微妙な内容だったので、ここでは伏せます
<img alt="image.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/8571/ad1a303b-3793-64ac-5580-8f1eb811f5d9.png" width="500px">

# おわりに
- 用途が思いつかなかったので、サクッと削除しました。。