コンテナセキュリティスキャン
コンテナ化されたアプリケーションは、そのモジュール性と移植性により人気が高まっています。 アプリケーションをコンテナ内にデプロイすることで、開発者は互換性を気にすることなく、より幅広いマシンでアプリケーションをホストできるようになります。
しかし、コンテナ化の台頭は、Dockerコンテナのセキュリティに関する潜在的な問題など、 コンテナのセキュリティ 上の懸念も生み出しています。 コンテナには、攻撃者によって悪用される前に発見して修正する必要がある脆弱性が含まれている場合があります。 コンテナ スキャンは、これらの自己完結型プログラミング環境の脆弱性を検査するプロセスです。
コンテナスキャンの仕組み
コンテナ スキャンでは、他の形態の脆弱性スキャンと同様に、自動ツールを使用してコンテナ内の既知の脆弱性を検索します。 多くの場合、これには、コンテナーの各層の脆弱性を検査するツールが含まれます。 これには、既知の共通脆弱性およびエクスポージャ (CVE) を持つソフトウェア インスタンスのチェックや、ソフトウェア内の一般的な脆弱性のテストが含まれます。
一般的なコンテナの脆弱性
コンテナ化されたアプリケーションには、さまざまな脆弱性が含まれる可能性があります。 最も一般的なタイプには、次のようなものがあります。
- アプリケーションの脆弱性:コンテナ内で実行されるアプリケーションには脆弱性が含まれる可能性があります。 たとえば、Web アプリケーションにはSQL インジェクションやバッファ オーバーフローの脆弱性が含まれており、攻撃を受けやすくなる場合があります。
- 安全でない構成:コード内の潜在的な脆弱性に加えて、アプリケーションには構成ミスによってセキュリティ上の問題が発生する可能性もあります。 たとえば、アプリケーションのオプション設定を有効にすると、アクセス制御のバイパスや安全でないプロトコルの使用が許可される場合があります。
- ネットワークの脅威:コンテナ化されたアプリケーションには、ネットワークを介して他のシステムと通信する機能があります。 これらのネットワーク通信が安全に構成されていない場合、コンテナ化されたアプリケーションが盗聴されたり悪用されたりする可能性があります。
- アクセス制御の問題:他のアプリケーションやシステムと同様、コンテナ化されたアプリケーションには、アプリケーションや機密機能やデータへのアクセスを管理するためのアクセス制御が必要です。 アクセス制御が過度に寛容だと、データ侵害、マルウェア感染、その他の脅威が発生する可能性があります。
コンテナスキャンによる脆弱性の検出
大まかに言えば、コンテナー セキュリティ スキャナーは他の脆弱性スキャナーと同様に機能します。 テスト対象のシステム (この場合はコンテナ化されたアプリケーション) に既知の脆弱性がないか検査します。
多くの場合、これには、システムにインストールされているソフトウェアを列挙し、それを CVE データベースまたは National 脆弱性データベース (NVD) と比較して、既知の脆弱性のあるソフトウェアがコンテナに含まれているかどうかを判断することが含まれます。 さらに、スキャナーは、過度に寛容なアクセス制御設定などの潜在的な構成上の欠陥がないかコンテナーとそのアプリケーションを検査する場合があります。
ただし、コンテナの性質は、セキュリティスキャナーの動作に影響を与えます。 コンテナーは、開発者が他のユーザーの作業に基づいて構築できるように設計されています。 通常、コンテナーは基本イメージから始まり、開発者はそこにレイヤーを追加して目的のランタイム環境を実装します。
この階層型アーキテクチャは、コンテナのセキュリティスキャンの実行方法に影響を与えます。 コンテナスキャナーには、各レイヤーを個別に検査し、それぞれの既知の問題を探す機能があります。
たとえば、コンテナ化されたアプリケーションは、その基盤としてサードパーティの基本イメージを使用する場合があります。 このイメージは高品質で安全ですが、既知の脆弱性やマルウェアが含まれている可能性もあります。 コンテナー スキャナーはこれらの問題を特定し、開発者のニーズを満たす、より安全な代替イメージを推奨できる場合があります。
どのような種類のコンテナの脆弱性が検出できますか?
コンテナスキャンでは、コンテナの潜在的な問題を幅広く特定できます。 一般的な例としては、次のようなものがあります。
- 画像の脆弱性:コンテナ画像の脆弱性とは、コンテナ内に埋め込まれた画像の脆弱性です。 たとえば、コンテナー イメージには、基本イメージで使用される安全でないライブラリまたは依存関係が含まれている場合があります。
- 悪質な画像: コンテナは、多くの場合、サードパーティのイメージに基づいて構築されます。 信頼できないソースからのイメージには、それを使用して構築されたコンテナが攻撃に対して脆弱になるように設計されたマルウェアまたはセキュリティ構成ミスが含まれている可能性があります。
- アクセス制御: コンテナーには、コンテナー自体へのユーザーのアクセスを制限するためのアクセス制御が組み込まれています。 これらのアクセス制御が正しく構成されていないか、脆弱である場合、攻撃者は権限を昇格させてコンテナを乗っ取ることができる可能性があります。
- アプリケーションの脆弱性:コンテナ内にインストールされたアプリケーションには、攻撃に対して脆弱になる脆弱性が含まれる可能性があります。
チェック・ポイントによるコンテナセキュリティ
コンテナ化がより広く使用されるようになるにつれて、コンテナのセキュリティ スキャンは DevSecOps プロセスの重要なコンポーネントとなっています。 コンテナーの独自の構造により、新たな脅威が導入される可能性があり、それらを保護するプロセスが他の非コンテナー化アプリケーションとは異なります。
Check Point Workload Protection offers container security capabilities, including the ability to scan containers for potential vulnerabilities. To learn more about Check Point Workload Protection’s capabilities and find out how it can improve the security of your organization’s containerized applications, feel free to sign up for a free demo today.
