2-2-2-4-1-コンテナスキャン (Container-Scanning)

コンテナ脆弱性スキャン

コンテナがアプリケーションをパッケージ化しデプロイする方法としてよく使われるようになるにつれ、マルウェアの出現率が高まっています。現在、コンテナのセキュリティ確保は DevOps エンジニアにとって最優先事項となりました。幸いなことに、コンテナやコンテナイメージをスキャンするオープンソースプログラムが多数利用可能です。そのようなツールを五つ見てましょう。

コンテナセキュリティスキャンは何ができるか?

  • セキュアでないコンテナの検出

    • 古いライブラリの検出

    • 正しく構成されていないコンテナの検出

    • 古いオペレーティングシステムの検出

  • コンプライアンスバリデーションの検出

  • ベストプラクティスの提案

コンテナセキュリティスキャナの問題点

  • 使用するツールにより深さのレベルが異なります。そのため選択するツールのタイプにより、得られる結果は大きく異なります。

  • 設定が "やりすぎ" になりやすい。さまざまな設定を構成できるツールがあり、簡単に失敗します。

  • スキャン結果が実用的なイベントにつながらないかもしれません。

コンテナスキャナをいつどこで使用するか?

たとえば Dockerfile を実際にビルドし、作成されたイメージを確認する際の build フェーズで使用できます。コンテナスキャナを実行する別の場所としては、コンテナをレジストリにプッシュするときや、コンテナをレジストリからプルするときがあります。しかし、信頼できるコンテナレジストリにプッシュする前にスキャンすることがよいアプローチです。そうすれば、すべてのイメージがスキャンされたものであるコンテナレジストリがあると言うことができ、本番環境にデプロイする際にはこの信頼できるコンテナレジストリからプルできます。 (以下の画像をご覧ください)


ツール:

  • オープンソース:

    • Clair - コンテナ向けの脆弱性静的解析です

    • Anchore - docker イメージの詳細な解析のためのオープンソースプロジェクトです

    • Dagda - docker イメージやコンテナの既知の脆弱性、トロイの木馬、ウィルス、マルウェア、およびその他の悪意のある脅威の静的解析を実行し、docker デーモンと docker コンテナを監視して異常なアクティビティを検出するツールです

    • Falco - クラウドネイティブなランタイムセキュリティプロジェクトである Falco は、デファクトの Kubernetes 脅威検出エンジンです

    • Harbor - Harbor はポリシーとロールベースのアクセス制御でアーティファクトを保護するオープンソースレジストリです。イメージがスキャンされて脆弱性がないことを確認し、信頼できるものとしてイメージに署名します。

    • Trivy - Trivy はコンテナや他のアーティファクトのためのシンプルで包括的な脆弱性/ミスコンフィギュレーションスキャナです。

    • Kbescape - Kubescape は K8s オープンソースツールで、リスク分析、セキュリティコンプライアンス、RBAC ビジュアライザー、イメージ脆弱性スキャンなど、マルチクラウドの K8s の単一の管理画面 (single pane of glass) を提供します。

  • 商用:

    • Aquasec - Aqua の高度な脆弱性スキャンと管理により DevOps は開発サイクルの中で脆弱性、埋め込まれたシークレット、その他のリスクを検出し、リスクベースの視点で緩和策の優先順位付けができます。Aqua Enterprise、セルフホスト、SaaS で利用可能です。


参考情報

Last updated