Jump to section

Clair とは

Copy URL

Clair は、appc および docker コンテナの脆弱性に対して静的な分析を行い、コンテナのセキュリティを監視するツールを提供するオープンソース・プロジェクトです。Clair は API 駆動型の分析エンジンで、既知のセキュリティ上の欠陥がないか、レイヤーごとにコンテナを検査します。Clair を使用すると、コンテナの脆弱性を継続的に監視するサービスを簡単に構築できます。

脆弱性データは、既知のソースセットから継続的にインポートされ、コンテナイメージのインデックス付きコンテンツと関連付けられて、コンテナを脅かす脆弱性のリストを生成します。脆弱性データがアップストリームで変更されると、脆弱性の以前の状態と新しい状態、およびそれらが影響を与えるイメージが、Webhook 経由で構成済みのエンドポイントに送信されます。すべての主要コンポーネントは、プロジェクトをフォークすることなく、コンパイル時にプログラムでカスタマイズできます。Clair は次の方法でコンテナのセキュリティをサポートしています。

  • 定義した一連のソースから脆弱性データを更新し、このデータをデータベースに格納する
  • クライアントが API を使用して、特定のイメージ内の脆弱性について、このデータベースにクエリできるようにする
  • API を使用して、イメージ内に存在する機能のリストでコンテナイメージにインデックスを付ける

Clair は各コンテナレイヤーをスキャンし、Common Vulnerabilities and Exposures データベース (CVE) および Red Hat®、Ubuntu、Debian の類似データベースに基づいて、脅威となる可能性のある脆弱性を通知します。レイヤーは多くのコンテナ間で共有できるため、パッケージのインベントリを構築し、既知の CVE と照合するためには、イントロスペクションが不可欠です。

Clair は、Python をはじめとするプログラミング言語パッケージマネージャーのサポートと、イメージ指向の新しい API も導入しています。

脆弱性の自動検出により、開発チームと運用チーム全体の認識とセキュリティのベストプラクティスが向上し、脆弱性にパッチを当てて対処するためのアクションが促進されます。新たな脆弱性が告知されると、Clair は再スキャンすることなく即座に、どの既存のレイヤーが脆弱であり、どの通知が送信されるかを認識します。

たとえば、CVE-2014-0160、別名「ハートブリード」はしばらく前から知られていますが、Red Hat Quay のセキュリティスキャンでは、依然として高い割合で、ユーザーが Quay に格納したコンテナイメージに対する潜在的な脅威であることが判明しています。 

脆弱性が悪用される場合は、特定の条件が利用されることが多いことに注意してください。たとえば、ハートブリードは、脆弱な OpenSSL パッケージがインストールされ、使用されている場合にのみ脅威として問題になります。Clair はそのレベルの分析には適していないため、必要に応じてさらに深い分析を行う必要があります。

Clair はオープンソースの Project Quay の一環です。Kubernetes プラットフォームの Red Hat OpenShift® は、それ自体が Red Hat Quay のコンポーネントである Container Security Operator という Kubernetes Operator を通じて Clair を利用し、コンテナのセキュリティを実現します。Red Hat Quay はオープンソースのコンテナイメージレジストリのプラットフォームであり、クラウドネイティブ および DevSecOps の開発モデルと環境に焦点を当てた、グローバルデータセンター全体でのコンテナの構築、配布、デプロイを可能にします。

Quay Container Security Operator (Red Hat OpenShift と統合) を使用すると、自動化、認証、承認システムを使用してイメージリポジトリのセキュリティを強化できます。Red Hat Quay は Red Hat OpenShift と併用するか、スタンドアローン・コンポーネントとして利用できます。

Red Hat のコンサルタントがお手伝いします

Red Hat はオープンソース・コミュニティへのコミットメントの一環として、Cloud Native Computing Foundation のメンバーとして Project Quay の開発に引き続き参加します。

Red Hat は Clair と Project Quay の新機能のエンジニアリングに多大な貢献をしています。また、Clair が使用する脆弱性の主要なデータベースの 1 つを管理していることに加え、実際の負荷テスト環境として機能する、quay.io を介した Clair の最大規模のインストールも実行しています。

Keep reading

Article

What's a Linux container?

A Linux container is a set of processes isolated from the system, running from a distinct image that provides all the files necessary to support the processes.

Article

Containers vs VMs

Linux containers and virtual machines (VMs) are packaged computing environments that combine various IT components and isolate them from the rest of the system.

Article

What is container orchestration?

Container orchestration automates the deployment, management, scaling, and networking of containers.

コンテナの詳細はこちら

製品

エンタープライズ対応の Kubernetes コンテナ・プラットフォームで、ハイブリッドクラウド、マルチクラウド、エッジのデプロイメントを管理するフルスタックの自動運用機能を備えています。

リソース

チェックリスト

コンテナ型アプリケーションの開発:チームと話し合うべき 5 つのトピック

e ブック

Forrester が Red Hat を マルチクラウドコンテナ開発 プラットフォームのリーダーに選出

トレーニング

無料のトレーニングコース

Running Containers with Red Hat Technical Overview

無料のトレーニングコース

Containers, Kubernetes and Red Hat OpenShift Technical Overview

無料のトレーニングコース

Developing Cloud-Native Applications with Microservices Architectures

Illustration - mail

その他の関連コンテンツ

無料のニュースレター「Red Hat Shares」(英語) では、注目の IT トピックスに関するコンテンツをお届けしています。