AWS セキュリティ

##1.AWS セキュリティの主な分類##
項番はIPA「非機能要求グレード2018」セキュリティに基づいて分類されています。

| 項番      |       項目 |    脅威  |    対策   | 
|:------------------:|:------------------|:------------------|:------------------|
|E.5|アクセス・利用制限|アカウント乗っ取り|[AWS IAM](https://qiita.com/leomaro7/items/7b7018c120830bfe730e)、[AWS WAF](https://qiita.com/leomaro7/items/6c422b11ab6d19f88c3e)|
|E.6|データの秘匿|通信房受、データ漏洩|TLS、VPC、データストレージ暗号化|
|E.7|不正追跡・監視|ー|AmazonCloudWatch、Amazon CloudWatch Logs、Amazon CloudTrail、[AmazonGuardDuty](https://qiita.com/yifey/items/e260ee318a5cd8f566ce)|
|E.8|ネットワーク対策|ポートスキャン、サービス悪用、DDoS|Amazon EC2 Security Groups、[AWS Shield](https://qiita.com/leomaro7/items/9f5e705b7ec5fd7c35a7)|
|E.9|マルウェア対策|マルウェア感染|アンチウイルス、OSの最新化、出口対策|
|E.10|Web対策|ゼロディ、XSS、インジェクション|アプリケーションの対策、[AWS WAF](https://qiita.com/leomaro7/items/6c422b11ab6d19f88c3e)|

次の項目で詳しく見てみよう！





##2.行くつかWebアプリケーションを例に見てみよう##

![123無題.png](https://qiita-image-store.s3.amazonaws.com/0/280929/179d3528-1f53-28de-0f09-a92d0750b593.png)


| 脅威      |       概要 |    対策  | AWSサービスでは|
|:------------------|:------------------|:------------------|:------------------|
|通信房受|ネットワークや通信を流れるデータを盗聴してパスワード・重要データ・機密情報を盗んで悪用すること|通信の暗号化（TLS、VPN）|ー|
|ポートスキャン、サービス悪用|ポートスキャンから意図せず開放されているサービスを特定し、そのサービスの脆弱性をを利用して侵入を試みたり、データの窃取を試み攻撃|FWで不要なポートを閉じる、不要なサービスを止める、各種FWセキュリティサービスを利用|Amazon EC2 Security Groups|
|DDoS|対象のサーバなどに対して様々なな手段で大量トラフィックを送信し、対象のリソース枯渇を招きサービスダウンを狙う攻撃|DDoS製品|[AWS Shield](https://qiita.com/leomaro7/items/9f5e705b7ec5fd7c35a7)|
|ゼロディ|脆弱性に対してパッチを含めた脆弱性を解消する手段がない状態で脆弱性を攻撃すること|パッチを日頃から割り当てる|[AWS WAF](https://qiita.com/leomaro7/items/6c422b11ab6d19f88c3e)|
|アカウント乗っ取り|XSS脆弱性を利用して、セッションハイジャックする方法、パスワード総当たりでログイン試行してログインする方法、他社のセキュリティ事故で漏洩したIDとパスワードのリストを利用してログインを試行するアカウントリスト攻撃など様々な方法で悪用しようとする|アプリケーションなどの適切な設定・管理、その他セキュリティ製品で対応 |ー|
|インジェクション|悪意のあるコードを脆弱性などを利用して埋め込む攻撃|アプリケーションの脆弱性を利用することが基本|[AWS WAF](https://qiita.com/leomaro7/items/6c422b11ab6d19f88c3e)|
|XSS|攻撃者の作成したスクリプトを脆弱性のある標的サイトのドメインの権限において閲覧者のブラウザで実行させる攻撃|アプリケーションの脆弱性を利用することが基本|[AWS WAF](https://qiita.com/leomaro7/items/6c422b11ab6d19f88c3e)|
|データ漏洩 |データベースのデータを何らかの方法で盗み、そのデータのファイルの中身を悪用することでデータが漏洩する |ファイル単位、ストレージレベル、DB機能での暗号化 |暗号化オプション（EBS,S3,RDS）、鍵管理 [（KMS、CloudHSM）](https://qiita.com/leomaro7/items/46dafff79206087c2524)|
|マルウェア |不正な動作を意図して作成されたプログラムやコードの総称 |アンチウイルスソフトの導入、最新パッチの適用 |ー|
|内部犯行 |組織内部からの漏洩 |厳密な管理、権限付与を最小限にする |[AWS IAM](https://qiita.com/leomaro7/items/7b7018c120830bfe730e)|






##3.責任共有モデル##
AWSではデータセンター、ネットワークには高度なセキュリティに対応する柔軟なアーキテクチャーを採用しています。その一方で固有のデータは自身で管理する必要があります。

- クラウドのセキュリティ：AWSの責任範囲
- クラウド内のセキュリティ：ユーザの責任範囲




##4.AWS Service Catalog##
仮想マシンイメージ、サーバー、ソフトウェア、データベースといったAWS上のサービスの中でIT部門が使用を承認した作成・管理することができます。
デプロイされた IT サービスを集中管理でき、コンプライアンス要件を満たすと同時に、ユーザーは必要な承認済みの IT サービスのみをすばやくデプロイできます。





##5.アカウントルートユーザーとAWS IAM##
最初にAWSのアカウントを作成した場合は、すべてのAWSアカウントへアクセス可能なアカウントルートユーザーが作成されます。

なので、↓推奨
1.ルートユーザーのアクセスキーは消す
2.IAMユーザを作成する
3.管理者アクセス権(ポリシー)を付与する
4.IAM認証情報を利用して、AWSを操作する

AWS IAMについては[AWS IAM](https://qiita.com/leomaro7/items/7b7018c120830bfe730e) を見て学習しましょう。





##6.AWS Trusted Advisor##
AWS側であらかじめ用意されているベストプラクティス（こうゆう風にすればいいよ！）の情報に基づいて、今設定されているものを自動的にをチェックしてくれます。問題がある場合はアドバイスをしてくれるサービスです。

[AWS Trusted Advisor](https://qiita.com/leomaro7/items/69ce216c754491117812) の記事を確認して見ましょう！





##7.AWS advisoriesとBulletins##
現在の脆弱性と驚異について報告します。



##8.AWS 監査人のラーニングパス##
AWS のプラットフォームを使用して内部オペレーションのコンプライアンスを実証する方法を学習したいと考えている、監査人、コンプライアンス、および法的なロールを持っている方向けのサービスも多数用意しています。

詳細は↓まで。
[AWS 監査人のラーニングパス](https://aws.amazon.com/jp/compliance/auditor-learning-path/)





##9.AWSコンプライアンスソリューションガイド##
コンプライアンスに関して、何から始めたら良いかわからない場合、または、よく使われるリソースやプロセスにアクセスする必要がある場合に利用する。
具体的には、以下のようなものを利用して学習できます。

- 責任共有モデルの理解
- コンプライアンスレポートの要求
- セキュリティアンケートに答える

[AWSコンプライアンスソリューションガイド
](https://aws.amazon.com/jp/compliance/solutions-guide/)




##10.その他のコンプライアンスリソース##

AWSウェブサイトのコンプライアンスリソースにアクセスし、必要な詳細をすべて取得することが基本です。

- [コンプライアンスのリソース](https://aws.amazon.com/jp/compliance/resources/)
- [対象範囲内のサービス](https://aws.amazon.com/jp/compliance/services-in-scope/) : どのサービスが対象範囲内で、どのサービスがまだ進行中かを確認できます。
- [AWS セキュリティブログ](https://aws.amazon.com/jp/blogs/security/) 
- [導入事例](https://aws.amazon.com/jp/solutions/case-studies-jp/)





##11.AWSのセキュリティコンプライアンスプログラム##

**AWSのセキュリティと統制環境**

- 業界の認証と独立したサードパーティ認証機関による証明書を取得する
- AWSのセキィリティと統制の方法に関するホワイトペーパーおよびウェブサイトコンテンツで公表する
- （必要に応じて）NDAに基づいて。証明書やレポートなどのドキュメントをAWSのお客様に直接提供する

**AWSのリスクとコンプライアンスプログラム**

- リスク管理
- 統制環境
- 情報セキュリティ

**主要なプラクティス**

- （関連する情報源のよって提供される）必要なコンプライアンスの目標と要件を理解する
- これらの目標と要件を満たす統制環境を構築する
- 企業のリスク許容度に基づいて、必要とされる検証方法を理解する
- 統制環境の運用の有効性を検証する

**基本的なアプローチ**

- 確認：AWSから提供される情報や他の情報を確認して、IT環境全体について可能な限り多くのことを把握してから、すべてのコンプライアンス要件をドキュメント化します。
- 設計：エンタープライズのコンプライアンス要件を満たすために、統制目標を設計および実装します。
- 特定：サードパーティが所有する統制を特定およびドキュメント化します。
- 検証：統制目標がすべて達成され、主要な統制がすべて効果的に設計および運用されていることを確認します。



##12.Amazon Inspector##
EC2インスタンスにエージェントをインストールすることで、EC2インスタンスへのネットワークアクセスと、インスタンス上で実行されているアプリケーションの脆弱性の診断を行うことができるサービスです。
CVEに登録されている既知の脆弱性や、SSHやパスワードに関するOS上の設定が安全かどうかを評価することができます。

なお、サポートされているOSやリージョンは制限があります。
[Amazon Inspector でサポートされているオペレーティングシステムとリージョン](https://docs.aws.amazon.com/ja_jp/inspector/latest/userguide/inspector_supported_os_regions.html)

操作についてはチュートリアルを参考に。
[Amazon Inspector のチュートリアル](https://docs.aws.amazon.com/ja_jp/inspector/latest/userguide/inspector_tutorials.html)


##13.脆弱性テストと侵入テスト##
AWSで侵入テストを行う場合は、一部の許可されたサービスを除き、事前申請をする必要があります。
[脆弱性テストと侵入テスト](https://aws.amazon.com/jp/security/penetration-testing/)


##14.GuardDuty##
・GuardDutyの結果でどこを見たら良いのか？
→「重要度」　と　「結果」　をまずは見るのが良い。


##15.AWS Security Hub##
*2019/06 AWS Security Hubは一般提供を発表しました。*
Security HubはAWSのセキュリティとコンプライアンスのステータスを一括で表示できるサービスです。
AWSのセキュリティサービスとしては、Amazon InspectorやAmazon GuardDuty、Amazon Macieなどがありますが、これまではそれぞれの画面で情報を別々に扱っていましたが、
Security Hubを用いることによりこれらの運用を1つのサービス上で、1つの画面の中で扱うことが可能になったという、うれしい。

[AWS Security Hub とは](https://qiita.com/leomaro7/items/0dacee1abea26e54596d)

##16.AWS Artifact##
AWS Artifactは、無料でセルフサービス型の、AWSコンプライアンスレポートのダウンロードサービスです。

 [AWS Artifact を使用してコンプライアンスドキュメントを簡単にダウンロードして共有](https://aws.amazon.com/jp/about-aws/whats-new/2020/12/aws-artifact-compliance-documents-easy-download-share/) ※2020/12/22
AWS Artifact サービスから AWS コンプライアンスレポートをダウンロードする前に、秘密保持契約 (NDA) の締結を要求されなくなりました。
代わりに、AWS Artifact のすべてのコンプライアンスレポートの最初のページに適用される利用規約 (T&C) を追加しました。
↓のような感じのメッセージが表示されます。
`AWS Artifact により、コンプライアンスドキュメントを簡単にダウンロードして共有できます。AWS Artifact から AWS コンプライアンスレポートをダウンロードする前に、機密保持契約書 (NDA) を実行する必要はなくなりました。代わりに、AWS Artifact のすべてのコンプライアンスレポートの最初のページで、コンプライアンスレポートを規制当局、または顧客と直接共有できるタイミングを詳しく説明し、該当する利用規約を追加しました。ご質問、フィードバック、またはご提案があれば、AWS Artifact Forum  で当社にご連絡ください。`

##17.Macie##

S3に保存されているデータから機微情報が含まれたファイルを検出するサービスです。

設定方法については⬇️

https://blog.serverworks.co.jp/tech/2020/05/19/macie-tokyo/

どこまでの情報が検出されるかは⬇︎（あくまでAWSの機械学習にのっといて行われるので、厳密には正確ではないでしょうから。）

https://blog.serverworks.co.jp/macie-test


##18.ベストプラクティス##

https://d1.awsstatic.com/whitepapers/ja_JP/Security/AWS_Security_Best_Practices.pdf