【SRE】ゼロトラストネットワーク を読む

ゼロトラストネットワークを読んだので、アウトプットしていきます。
[ゼロトラストネットワーク ―境界防御の限界を超えるためのセキュアなシステム設計](https://www.amazon.co.jp/%E3%82%BC%E3%83%AD%E3%83%88%E3%83%A9%E3%82%B9%E3%83%88%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF-%E2%80%95%E5%A2%83%E7%95%8C%E9%98%B2%E5%BE%A1%E3%81%AE%E9%99%90%E7%95%8C%E3%82%92%E8%B6%85%E3%81%88%E3%82%8B%E3%81%9F%E3%82%81%E3%81%AE%E3%82%BB%E3%82%AD%E3%83%A5%E3%82%A2%E3%81%AA%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E8%A8%AD%E8%A8%88-Evan-Gilman/dp/4873118883)

その他参考にした記事です。
[ゼロトラストネットワークとは何者なのか - Qiita](https://qiita.com/tsukasa1301/items/24dc9b6e51d6be1c21cf)
[2020年に流行るらしいゼロトラストネットワークって何？ - ニフクラ ブログ](https://blog.pfs.nifcloud.com/20200205_zerotrust_network)

## 内容
- 従来のネットワーク
- ゼロトラストネットワークの理論
- ゼロトラストネットワークの実現

## 従来のネットワーク
ファイヤーウォールなどで制御する構成
重要なデータをインターネットから遠ざけるような構成。
よく見る データベースやアプリケーションをプライベートサブネットで切ってあげて、ロードバランサだけインターネットと接続する構成です。
ここに社内のデータにアクセスするために `VPN` などを設定したりします。

## ゼロトラストネットワーク
全ての通信を疑うことからはじめ、認証し、信用を評価することで、全てのトラフィックをセキュアな通信を築きます。
全体像としては下記が非常にわかりやすかったです。
>![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/148392/e912c1dd-7644-dae7-7ac8-4df219e42a25.png)
[2020年に流行るらしいゼロトラストネットワークって何？ - ニフクラ ブログ](https://blog.pfs.nifcloud.com/20200205_zerotrust_network) より引用

[ゼロトラストネットワークとは何者なのか - Qiita](https://qiita.com/tsukasa1301/items/24dc9b6e51d6be1c21cf)
[【書評】ゼロトラストネットワーク \| Developers.IO](https://dev.classmethod.jp/articles/bookreview_zerotrust_network/)
[『ゼロトラストネットワーク』を読んだ感想 - 虎の穴開発室ブログ](https://toranoana-lab.hatenablog.com/entry/2019/11/08/180826)

### 必要な要素
- ネットワークフローは処理前に認証する
- ネットワークフローは全て送信前に暗号化する
- 認証と暗号化はネットワーク内のエンドポイントで実行する
- アクセス制御をするために、ネットワークフローを全て列挙する
- ネットワーク内ではもっとも強力な認証 / 暗号化スイートを使用する
- 認証にパブリック PKI プロバイダを使用すべきではなく、代わりにプライベート  PKI を使用する
- デバイスのスキャン、バッチ、ローテーションは定期的に実行する


### アプリケーション
ゼロトラストの観点でいくと、悪用されたコードを特定することに焦点をおきます。
アプリケーションをビルド、デプロイするときのパイプラインが攻撃しやすい対象となるよう。
特にビルドするときが検知もしづらくて、攻撃しやすい対象となるよう。

#### 攻撃の確認方法
- ファジング
- インジェクションスキャン
- ネットワークポートスキャン
- 脆弱性スキャン


### トラフィック
#### ゼロトラストはネットワークモデルのどこに位置するのか
`mTLS`を使用することを推奨しています。
`IPsec` にしたいけど、ネットワークのサポートなどの問題があるよう。

### 認可の判断
信頼スコアを計算する
下記のそれぞれのコンポーネントは、**ロードバランサ、プロキシ、ファイアウォールとして実装されることになります。**


#### 構成要素
- エンフォーサ
- ポリシーエンジン
- トラストエンジン
- データストア

`エンフォーサ` で認可リクエストを送り、
`ポリシーエンジン`で認可の可否判断を行う。
`トラストエンジン`では、リクエスト/ アクションを許可することに対する危険度を評価し、
`データストア`はイベントリ(ユーザー情報を管理するユーザーイベントリや企業が管理しているデバイス情報を記録するデバイスイベントリなど)と履歴を管理します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/148392/ff7bec6f-5f30-d305-9795-053a0987eb24.png)



## ゼロトラストネットワークの実現
書籍内では、`BeyondCorp` と `PagerDuty` がゼロトラストネットワークを実現しているサービスとして紹介されています。
[BeyondCorp - 企業セキュリティ  \|  Google Cloud](https://cloud.google.com/beyondcorp?hl=ja)
[BeyondCorp: A New Approach to Enterprise Security](https://research.google.com/pubs/pub43231.html?hl=ja)
[PagerDuty \| リアルタイムオペレーション | インシデントレスポンス | オンコール | PagerDuty](https://ja.pagerduty.com/)

### Istio
`Istio` とかも絡んでくるのかな？
[新しいセキュリティアプローチ、CalicoとIstio、Kubernetesによるゼロトラストネットワークとは \| Think IT（シンクイット）](https://thinkit.co.jp/article/13276)


## 個人的に再復習必要なもの
暗号周りとかもう一度復習せねばと思ったので、残しておきます。

### X.509
[図解 X.509 証明書 - Qiita](https://qiita.com/TakahikoKawasaki/items/4c35ac38c52978805c69)

自分で書いた記事も復習していく
[【SRE】公開鍵、証明書、SSL/TLSの関係性がわかりづらい - Qiita](https://qiita.com/sanoyo/items/e1b1bdb7963413640b61)

### 真正性(authenticity)
メッセージが本人から送信されたものであることを受取人が検証できる特性
[情報セキュリティ対策に重要な３要素とは？ 今後知っておくべき4つの新要素とともに紹介 \| フォーカスシステムズ Webマガジン](http://magazine.focus-s.com/1252/#authenticity)

### 暗号スイート 
「共通鍵暗号・公開鍵暗号・署名・ハッシュ関数」の組合せ
[SSL/TLS暗号設定ガイドライン](https://www.ipa.go.jp/files/000066775.pdf)

### mTLS
[HTTPSにおけるクライアント認証(Mutual TLS)の話 - Qiita](https://qiita.com/kmtr/items/f718ea90fa29f55e9313)

### IPsec、TLSの違い
[【図解】IPsecとSSL/TLSの違い ～セキュリティ強度や用途,メリット/デメリットの比較～ \| SEの道標](https://milestone-of-se.nesuke.com/nw-basic/tls/compare-with-ipsec-and-tls/#:~:text=%E6%AF%94%E8%BC%83%E3%81%97%E3%81%BE%E3%81%99%E3%80%82-,%E6%9A%97%E5%8F%B7%E5%8C%96%EF%BC%88%EF%BC%8B%E6%94%B9%E3%81%96%E3%82%93%E6%A4%9C%E7%9F%A5%EF%BC%89%E7%AF%84%E5%9B%B2%E3%81%AE%E9%81%95%E3%81%84%E3%80%81%E3%82%AA%E3%83%BC%E3%83%90%E3%83%BC%E3%83%98%E3%83%83%E3%83%89,%E6%94%B9%E7%AB%84%E6%A4%9C%E7%9F%A5%E3%82%92%E8%A1%8C%E3%81%84%E3%81%BE%E3%81%99%E3%80%82&text=%E4%B8%80%E6%96%B9%E3%80%81TLS%20%E3%81%AF%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%204,%E5%8C%96%E3%83%BB%E6%94%B9%E7%AB%84%E6%A4%9C%E7%9F%A5%E3%81%97%E3%81%BE%E3%81%99%E3%80%82)