このシリーズを初めて読む場合は、最初から始めることをお勧めします。
コンテナ セキュリティの基礎: 導入
コンテナ セキュリティの基礎: パイプライン
コンテナ セキュリティの基礎: オーケストレーション
ワークロードは比較的新しい用語であり、applicationsを説明するためによく使用されますが、インフラストラクチャ サービスを指すこともできます。 これは重要です。なぜなら、コンテナ クラスターでは、必ずしも開発者から提供されるとは限らないさまざまな「ワークロード」が実行される可能性があるからです。 コンテナ環境内でさまざまな目的で無料のオープンソース サービスが使用されるケースが増えています。 これは実際に IT 運用全体に当てはまります。IT 運用は、過去 1 年間で無料およびオープン ソース ソフトウェアのダウンロード数で第 1 位のカテゴリでした。
したがって、ワークロード セキュリティとは、コンテナ環境にダウンロード、開発、またはデプロイしたソフトウェアすべてを指します。 領事について考えてみましょう。 Kubernetes自体について考えてみましょう。 PrometheusとElasticsearch を考えてみましょう。 NGINXとistio を考えてみましょう。
また、Kubernetes 環境をサポートするためにデプロイした API ゲートウェイ、キャッシュ、イングレス コントローラーもそのリストに追加します。 ここで、徹底した部品表が重要になり、安全な環境を維持するために定期的に在庫を確認することが極めて重要になります。
リストができたら、主要なワークロード セキュリティの問題に対処します。
2. 悪意のあるコンテンツは悪意のあるものである
資格情報を要求し、アクセス制御を適用してドアをロックした後でも、悪意のあるコンテンツについて心配する必要があります。 これは、使用中のapplications、マイクロサービス、運用サービスにも当てはまります。 ユーザー (オペレーターまたは消費者) にインターフェースを提供するすべてのワークロードは、潜在的に危険にさらされています。
攻撃者が OS コンポーネントの脆弱性を悪用できる場合、1 つ以上のワークロードを侵害する可能性があります。 これらの脆弱性は、「ドアをロックする」または「電話をスクリーニングする」ことを怠ったために露呈する可能性があります。 これは、OS レイヤーの runc 脆弱性がインターネットをパニックに陥れたCVE-2019-5736で見られたような、非現実的なシナリオではありません。
ここでの中核となるセキュリティ原則は、SELinux および RedHat コンテナ セキュリティの第一人者である Dan Walsh によって次のように述べられています。 「コンテナには何も入っていません」 。
ノード外部のサービスおよびユーザーとのすべてのネットワーク トラフィックは、ホスト OS を通過する必要があることに注意することが重要です。 ノード上のポッドとコンテナ間のネットワークは、仮想ブリッジを使用した仮想ネットワークと iptables の巧みな使用によって実現されます。 しかし、最終的にはトラフィックはその物理ノードから出る必要があり、それはホスト OS での処理を意味します。 エージェント、プラグイン、その他のデーモンは、セキュリティや可視性の目的でそのトラフィックを監視またはキャプチャしている可能性があります。 これらは、 Pipeline Securityについて読んだ後に収集を開始したインベントリに追加する必要がある潜在的な侵害ポイントです。
コンテナ コンテキストにおけるワークロード セキュリティの多くは、運用環境で実行されている他のapplicationワークロードのセキュリティと同じです。 アクセスを制御し、強力な認証を要求し、悪意のあるコンテンツを監視し、共有レベルおよびプラットフォーム レベルの脆弱性に注意してください。