Google Cloudとコンテナの継続的なセキュリティ
本文の内容は、2019年11月26日にSysdigのPawan Shankarが投稿したブログ(https://sysdig.com/blog/aws-ecr-scanning/)を元に日本語に翻訳・再構成した内容となっております。
AWSにおいてコンテナの採用が始まったため、ECRスキャンは継続的なセキュリティとコンプライアンスを実現するための最初のステップです。AWSで実行中の悪用可能なアプリケーションをプッシュしないように、AWS ECRから取得したイメージをスキャンして、脆弱性と設定ミスの両方を確認する必要があります。
Sysdig Secureは、Kubernetesライフサイクルのすべての段階にセキュリティとコンプライアンスを組み込みます。15種類以上の脅威フィードを活用するSysdig Secureは、脆弱性とセキュリティまたはコンプライアンス関連の誤設定を検出する単一のワークフローを提供します。チームがアプリケーションを構築する際、Sysdigは脆弱なイメージがCI/CDパイプライン(Jenkins、Bamboo、Gitlab、またはAWS CodePipeline)を介してプッシュされるのを防ぎ、本番環境においても新たな脆弱性を特定できます。Sysdig SecureはSysdig Secure DevOps Platformの一部であり、本番環境でクラウドネイティブのワークロードを自信を持って実行できます。
Amazon Elastic Container Registry(ECR)は、完全に管理されたDockerコンテナーレジストリであり、開発者がDockerコンテナーイメージを簡単に保存、管理、デプロイできるようにします。Amazon ECRは、ECSやEKSなどのAWSコンテナサービスと統合されており、開発から本番までのワークフローを簡素化します。
Sysdig Secureは、OS以外の脆弱性(サードパーティライブラリ)のスキャン、設定ミス、コンプライアンスチェックなど、ECRのデフォルトのイメージスキャンベースのClairに加えて、追加のECRスキャン機能を提供します。
最初のステップは、Sysdig SecureでECR認証情報をセットアップして、レジストリーにアクセスできるようにすることです。構成が完了すると、Sysdig Secureはレジストリ内に保存されているイメージをエンジンにプルして分析します。
イメージがスキャンエンジンに取り込まれると、Sysdig Secureは以下のスキャニング結果を提供します。
これらのアーティファクトは、特定のレジストリ、リポジトリ、またはイメージタグに指定できるカスタムスキャンポリシーに対して保存および評価されます。これらのポリシーは、イメージ内の脆弱性、誤設定、またはコンプライアンスの問題を検出し、UIで直接的にPass/Failの結果を生成するのに役立ちます。
このレポートには、OS/OS以外の脆弱性が詳細に発見されています。発見された各脆弱性について、Sysdig Secureは、その脆弱性の影響を受けるイメージで見つかったパッケージバージョンを表示し、その問題の修正を含むバージョン番号も表示します。脆弱性を取り除くためには、コンテナイメージを再ビルドして、修正プログラムが利用可能なバージョンのパッケージを含める必要があります。
たとえば、影響を受けるパッケージはベースイメージ自体にある可能性があります。この場合、ベースイメージを直接更新するのが最適です。その他の場合、パッケージはDockerfileのコマンドによってベースイメージの上にインストールされる場合があります。たとえば、Dockerfileで指定されたaptやyumなどのパッケージマネージャーコマンドがよく見られます。これらが影響を受けるパッケージのバージョンを指定している場合、Dockerfileを編集する必要があります。
ECRスキャンについて説明しましたので、次にECR脆弱性レポートとECR脆弱性アラートについて説明します。
多くの場合、アプリケーションセキュリティチームは、30日以内(あるいは短期間の間に)に修正を行って、重大度の高いCVEに対処する必要があります。
Sysdig Secureを使用すると、従来のパッチ管理プロセスをコンテナーに組み込むことができます。チームは、ECRおよび/または特定のAWSクラスターまたはリージョンでの実行の両方で脆弱性レポートのポリシーを設定できます。その後、CVE ID、severity、fix、age、またはその他の基準などの高度な条件によって特定の脆弱性を照会できます。
たとえば、新しいCVEがアナウンスされている場合、ECRで脆弱なイメージについて報告することができます。
現在ECRにあるイメージをスキャンした後、次の質問は通常、そのサービスの過去のすべてのビルドのイメージスキャン結果はどうでしたでしょうか? 脆弱性管理チームは、ECRで特定のレポに対して経時的に発生したすべてのスキャンに関するレポートを必要とします。
Sysdig Secureを使用すると、ポリシーを用いてクエリを実行し、3回未満のクリックでその質問に答える特定のスコープを適用できます。
最後に、ECRの脆弱性アラートを簡単に設定できます。ECRで新しいイメージが分析された場合、またはCVEが更新されたスコアを取得した場合、チームにアラートを設定できます。 Slack、AWS SNSなどを使用してダウンストリーム通知を作成するか、独自のカスタムWebhookを作成して特定のアクションを実行する事も可能です。
AWS Elastic Container RegistryとSysdig Secureの両方を使用して簡単に起動して実行できることがおわかりいただけたでしょうか。また、SysdigのコンテナーおよびKubernetesのイメージスキャン機能をさらに掘り下げるか、SysdigがさまざまなAWSコンテナーサービス(EKS、ECS)にセキュリティサービスを拡張する方法について詳しく読むこともできます。
または、www.sysdig.comにアクセスして、デモについてお問い合わせください!