SEC06-BP01 脆弱性管理を実行する - AWS Well-Architected フレームワーク

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

SEC06-BP01 脆弱性管理を実行する

コード、依存関係、インフラストラクチャ内の脆弱性のスキャンとパッチ適用を頻繁に実施し、新しい脅威から保護します。

期待される成果: 脆弱性管理プログラムを作成して維持します。Amazon EC2インスタンス、Amazon Elastic Container Service (Amazon ECS) コンテナ、Amazon Elastic Kubernetes Service (Amazon EKS) ワークロードなどのリソースを定期的にスキャンしてパッチを適用します。Amazon Relational Database Service (Amazon RDS) データベースなどの AWS マネージドリソースのメンテナンスウィンドウを設定します。静的コードスキャンを使用して、アプリケーションソースコードに一般的な問題がないかどうかを検査します。組織に必要なスキルがあるかどうか、または外部のアシスタンスを雇用できるかどうかを調べるために、Web アプリケーションペンテストを検討してください。

一般的なアンチパターン:

  • 脆弱性管理プログラムがない。

  • 重大度またはリスク回避を考慮せずに、システムパッチ適用を実施する。

  • ベンダー提供の有効期間終了日 (EOL) を過ぎたソフトウェアの使用。

  • セキュリティの問題を分析する前に、本番環境にコードをデプロイする。

このベストプラクティスを活用しない場合のリスクレベル:

実装のガイダンス

脆弱性管理プログラムには、セキュリティ評価、問題の特定、優先順位付け、問題解決の一環としてのパッチ適用の実施などが含まれます。自動化は、ワークロードの問題や想定外のネットワークへの露出を継続的にスキャンし、修復を実行するための鍵となります。リソースの作成と更新を自動化することにより、時間を節約し、さらなる問題を発生させる設定エラーのリスクを低減します。優れた設計の脆弱性管理プログラムでは、ソフトウェアライフサイクルの開発およびデプロイ段階における脆弱性テストも考慮する必要があります。開発中とデプロイ中に脆弱性管理を実装することにより、脆弱性が本番環境に入り込む可能性を低減します。

脆弱性管理プログラムを実装するには、AWS 責任共有モデルと、それが特定のワークロードとどのように関連しているかを十分に理解する必要があります。責任共有モデルでは、 のインフラストラクチャを保護する AWS 責任があります AWS クラウド。このインフラストラクチャは、 AWS クラウド サービスを実行するハードウェア、ソフトウェア、ネットワーク、および施設で構成されます。クラウド内のセキュリティ、例えば Amazon EC2インスタンスの実際のデータ、セキュリティ設定、管理タスク、Amazon S3 オブジェクトが適切に分類および設定されていることを確認する責任はお客様にあります。脆弱性管理へのアプローチは、利用するサービスに応じて異なります。例えば、 は マネージドリレーショナルデータベースサービスである Amazon のパッチ AWS を管理しますがRDS、セルフホストデータベースのパッチ適用はお客様の責任となります。

AWS には、脆弱性管理プログラムに役立つさまざまなサービスがあります。Amazon Inspector は、ソフトウェアの問題や意図しないネットワークアクセスがないか AWS ワークロードを継続的にスキャンします。AWS Systems Manager Patch Manager は、Amazon EC2インスタンス全体のパッチ適用の管理に役立ちます。Amazon Inspector と Systems Manager はAWS Security Hub、 AWS セキュリティチェックの自動化とセキュリティアラートの一元化に役立つクラウドセキュリティ体制管理サービスである で表示できます。

Amazon CodeGuru は、静的コード分析を使用して Java および Python アプリケーションの潜在的な問題を特定するのに役立ちます。

実装手順

  • Amazon Inspectorの設定: Amazon Inspector は、新しく起動した Amazon EC2インスタンス、Lambda 関数、および Amazon にプッシュされた適格なコンテナイメージを自動的に検出ECRし、ソフトウェアの問題、潜在的な欠陥、および意図しないネットワーク露出がないか、すぐにスキャンします。

  • ソースコードをスキャンする; ライブラリと依存関係をスキャンして、問題や欠陥がないかを調べます。Amazon CodeGuru は、Java アプリケーションと Python アプリケーションの両方で一般的なセキュリティ問題を修正するための推奨事項をスキャンして提供できます。OWASP Foundation は、ソースコード分析ツール (SASTツールとも呼ばれます) のリストを発行します。

  • CI/CD パイプライン構築プロセスの一環として、既存の環境をスキャンしてパッチを適用するメカニズムを実装する: 依存関係やオペレーティングシステムの問題をスキャンしてパッチを適用し、新しい脅威から保護するメカニズムを実装します。そのメカニズムを定期的に実行します。ソフトウェアの脆弱性管理は、パッチを適用したり、ソフトウェア問題に対処したりする状況を把握するのに不可欠です。継続的インテグレーション/継続的デリバリー (CI/CD) パイプラインの早期に脆弱性評価を組み込むことで、潜在的なセキュリティ問題修復の優先度を決定します。アプローチは、使用している AWS サービスによって異なります。Amazon EC2インスタンスで実行されているソフトウェアで潜在的な問題を確認するには、Amazon Inspector をパイプラインに追加して警告し、問題や潜在的な欠陥が検出された場合はビルドプロセスを停止してください。Amazon Inspector は リソースを継続的にモニタリングします。OWASP Dependency-CheckSnyk Open VAS、パッケージマネージャー、脆弱性管理 AWS Partner ツールなどのオープンソース製品を使用することもできます。

  • の使用AWS Systems Manager Amazon Elastic Compute Cloud (Amazon EC2) インスタンス、Amazon Machine Images (AMIs)、その他のコンピューティング AWS リソースなど、リソースのパッチ管理を担当します。AWS Systems Manager Patch Manager は、セキュリティ関連のアップグレードと他の種類のアップグレードの両方で、マネージドインスタンスにパッチを適用するプロセスを自動化します。Patch Manager を使用して、Microsoft アプリケーション、Windows サービスパック、Linux ベースのEC2インスタンスのマイナーバージョンアップグレードなど、オペレーティングシステムとアプリケーションの両方の Amazon インスタンスにパッチを適用できます。Amazon に加えてEC2、Patch Manager を使用してオンプレミスサーバーにパッチを適用することもできます。

    サポートされているオペレーティングシステムのリストについては、「Systems Manager ユーザーガイド」の「サポートされているオペレーティングシステム」を参照してください。インスタンスをスキャンし、見つからないパッチのレポートのみを表示できます。または、すべての見つからないパッチをスキャンして自動的にインストールできます。

  • の使用AWS Security Hub Security Hub は、 のセキュリティ状態を包括的に表示します AWS。これにより、複数の AWS サービスでセキュリティデータを収集し、それらの検出結果を標準化された形式で提供できるため、 AWS サービス間でセキュリティ検出結果を優先できます。

  • AWS CloudFormation を使用する: AWS CloudFormation は、リソースのデプロイを自動化し、複数のアカウントと環境でリソースアーキテクチャを標準化することで脆弱性管理に役立つ、Infrastructure as Code (IaC) サービスです。

リソース

関連ドキュメント:

関連動画: