AWSのセキュリティサービスについて

# AWSのセキュリティサービスについて
## 初めに
AWSのサービスの中でセキュリティに関するサービスってめちゃくちゃありますよね、WAF,GarudDuty,SecurityHubなどなど。。正直種類がありすぎてそれぞれの特徴だったり使い分けをはっきりと理解していません。。なのでこの機会でそれぞれのサービスの特徴をまとめたいと思います。

## セキュリティサービスの種類
まず、AWSにどのくらいセキュリティ関連のサービスがあるか列挙していきましょう
・WAF
・SecurityHub
・Inspector
・GuardDuty
・Config
・Shield
・KMS
・セキュリティグループ,ACL（厳密にいうとサービスではない）

これだけ上げましたが実はほかにもこの倍くらいのサービスがありましたが、全部は網羅しきれないので私が使ったことor聞いたことのあるサービスを列挙しました。
[AWSセキュリティサービス](https://aws.amazon.com/jp/products/?aws-products-all.sort-by=item.additionalFields.productNameLowercase&aws-products-all.sort-order=asc&awsf.re%3AInvent=*all&awsf.Free%20Tier%20Type=*all&awsf.tech-category=tech-category%23security-identity-compliance&awsm.page-aws-products-all=1)

## セキュリティサービス解説
簡単にジャンルごとに分類しました。特に「自分のAWSリソースに対しての脆弱性系」のサービスが複数あり、結構ややこしいイメージなので、今日こそはっきりさせたいと思います！

### 自分のAWSリソースに対しての脆弱性系
#### SecurityHub
SecurityHubとは、AWS内のセキュリティ状態を包括的に把握することができるサービスです。
具体的に2つの機能があり、１つは他のセキュリティ関連のAWSサービスのデータの取得して、分析します。複数のサービスを同一フォーマットで確認することができます。
※セキュリティ関連のAWSサービスの例
・GuardDuty
・Inspcetor
・Config
などなど。。

２つ目は、CISやPCIなどの業界標準のセキュリティチェックを行ってくれる機能です。たとえば、S3バケットを暗号化しているか、EC2でメタデータV2を使用しているかなどなど。。

他のセキュリティサービスも包括していることから、SecurityHubはAWSのセキュリティサービスの中で親的なポジションと言えそうですね。

[[2021年版]AWS Security HubによるAWSセキュリティ運用を考える](https://dev.classmethod.jp/articles/aws-security-operation-with-securityhub-2021/)

#### GuardDuty
GuardDutyはいい感じに脅威を検知してくれるサービスです。
・各種AWSのログを収集している
　AWSへのAPIコールを記録するCloudTrailのイベントログ
　VPC内のトラフィックを記録するVPCFlowLogs
　各種リソースからのDNSログ
・ログを機械学習とAIで分析
　不正なIPの情報など既存の脅威情報を活用している
　通常の利用と異なるリクエストなどを検知している
　リスクレベルを10段階で評価する

GuardDutyは複雑な設定は不要で有効かするだけで簡単に利用できます。

[GuardDuty](https://dev.classmethod.jp/articles/guardduty-summary/)

#### Config
Configとは、AWSアカウントになるAWSリソースの設定を評価、監査、審査できるサービスのことです。AWSリソースの設定変更の記録を行い、その設定に対し問題がないか確認し、問題がある場合はメール通知や修正対応ができます。

具体的には下記のことができます。
・リソースの管理
　サポートしている各リソースに対し、常に監視を行っています。リソースの作成、変更、削除が行われるとSNSやEventBridgeを通じて通知が行われます。

・監査とコンプライアンス
　Configでプロジェクトのポリシーやベストプラクティスをルールと設定し、AWSリソースのコンプライアンスへの準拠状況を確認することができます。
例えば、EC2にパブリックIPが紐づいているか、EBSが暗号化されているかどうかなど

・設定変更の管理とトラブルシューティング
　１つのリソースへの設定変更が、関連する他のリソースに予期せぬ影響を与える場合があります。あるリソースの変更によって関連するリソースへ影響が発生した場合、Configによって変更前の状態を確認して元の修正値に戻すことができます。

・セキュリティ分析
　Configで記録した期間内であればIAMのユーザー、グループ、ロールに割り当てられたポリシーを確認できます。この情報をもとにユーザーAが20XX年X月X日にVPCを変更できる権限を持っていたかどうか確認できます。

(AWSリソースの設定変更履歴を管理する「AWS Config」とは？実際に使用してみた
)[https://business.ntt-east.co.jp/content/cloudsolution/column-try-26.html]

### 侵入防御系
#### WAF
AWS WAFとはAWSが提供するWAF（Web Application Firewall）です。
CloudFront,API GateWay,ALB,AppSyncに対するHTTPリクエストを監視することができます。
WAFを使用するメリットは以下になります。
・ウェブ攻撃に対する俊敏な保護
・簡単なデプロイとメンテナンス
・マネージドルールにより時間を節約する
・ボットの監視、ブロック、リミット制限が簡単に
・向上したウェブトラフィック可視性
・アプリケーションの開発方法に統合されたセキュリティ

[AWS再入門2022 AWS WAF編](https://dev.classmethod.jp/articles/re-introduction-2022-aws-waf/)


#### Shield
ShieldはAWSにおけるアプリケーションさーびすから DDosに対する保護を提供するサービスです。
※DDos・・・サービスダウンを目的としたDos攻撃の一つで、大量のボット化したコンピューターを利用して攻撃してくる手法です。

DDoSはIPアドレスで制限しようとしても数が多すぎて設定が追い付かず、対策が難しいです。また、WAFはパケットの中身まで解析して制御の対象にできるので有効な策となります。（WAFはDDos対策は緩和程度）

Shiledは無料のスタンダードと有料のアドバンスがあります。

スタンダードはL3,L4を標的とするDDos攻撃を保護、悪意のあるトラフィックを検出、攻撃を自動緩和してくれますが、攻撃の履歴の参照やレポートかなどはできないです。

アドバンスはL7層におけるDDos攻撃も検出、大規模な攻撃の検知、24365の専門サポートなどをすることができます。

### EC2系
#### Inspector
EC2インスタンスにAmazon Inspector エージェントをインストールして、ネットワーク到達性や、プラットフォームの脆弱性を診断し、潜在的なセキュリティ上の問題を発見するためのものです。 Inspectorは脆弱性の棚卸しで利用するサービスとなります。

使用する流れは下記のようなイメージです
・対象となる EC2 インスタンスにエージェントをインストールする
・対象となる EC2 インスタンスにタグを付ける
・Amazon Inspector が自分のアカウントにアクセスできるようにする
・評価ターゲットの定義
・評価テンプレートの定義

肝心のチェックする内容ですが、あらかじめAWS側でルールパッケージが準備されており、それを組み合わせるといった形で使用します。例えば、ネットワーク到達可能性(Security Groupなどの各種ネットワークリソースの設定を分析し、 インターネット、Direct Connect、VPCピアリングなどの外部ネットワークから、EC2インスタンスに到達できるかどうかを評価)や共通脆弱性識別子(CVE),CISベンチマークなどになります。

もっと具体的にいうとブロードキャストICMPを無視する設定になっているか、監査ログが自動的に削除されないようになっているかなどです。（CISベンチマーク）

[AWS再入門ブログリレー Amazon Inspector編](https://dev.classmethod.jp/articles/re-introduction-2020-inspector/)

### 図解
ここまで一通りセキュリティサービスについてまとめましたがそれぞれ同じじゃない？って思うような内容もあったり、文字だけで書かれてもわかりづらいと思うので図にまとめました！

青枠・・・SecurityHubが分析するAWSサービス
![スクリーンショット 2022-10-02 215059.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2823786/21291497-4ba9-d74f-712c-f4c0c04861ce.png)

## まとめ
それぞれのサービスを細かく見ていくとある程度それぞれの見るセキュリティの観点というものがわかりました。が、結構見ている観点や、実際のチェック項目がかぶっているんじゃないの？というサービスもありました。それは、チェックするルールの出元？が違うのでそうなるのではないかと思っています。まあ、不足があるよりかはいいのではないかと思っておきます。。