Kubernetes が Google ですらセットアップを自動化するほど複雑なのであれば、米国の諜報機関大手、国家安全保障局 (NSA) がそれを強化すると指摘している点にも注目する価値がある。
NSAが指摘するように、Kubernetesは「従来のモノリシックなソフトウェアプラットフォームと比較して、多くの柔軟性とセキュリティ上の利点」を提供します。しかし残念なことに、その柔軟性には、サイバーセキュリティに関する独自の考慮事項を伴う、多くの可動部品が伴います。
NSA とサイバーセキュリティおよびインフラストラクチャセキュリティ庁 (CISA) は最近、Kubernetes 強化ガイダンス [PDF] を更新しました。これは政府機関向けに設計されていますが、独立した組織にとっても優れた推奨事項のセットとなっています。
レジは米国政府の内部脅威訓練コースを受講した
続きを読む
この文書では、Kubernetes における侵害の一般的な原因として、取得したインフラストラクチャまたはコンテナ ビルドから生じるサプライ チェーンのリスク、セキュリティ侵害を試みる悪意のある脅威アクター、および能動的および受動的な内部脅威の 3 つを指摘しています。
NSAとCISAは多くの推奨事項(5つのカテゴリーに分類)を提示し、それらを施行するための詳細なドキュメントとポリシーサンプルを提供しています。「Kubernetesクラスターのセキュリティ保護は複雑になる場合があり、誤った設定を悪用したセキュリティ侵害に悪用されるケースが多い」と文書には記されています。
これを、他の人に発見される前にこれらの穴を塞ぐための予防的警告とみなしてください。
Kubernetesポッドの強化
ポッドは、デプロイ可能な最小の Kubernetes ユニットであり、共有リソースと仕様を持つ 1 つ以上のコンテナーで構成されます。
NSA は、「ポッドは、サイバー攻撃者がコンテナを悪用する際の最初の実行環境となることが多い」と述べているため、これらを強化することを優先し、ユーザーに次のようにアドバイスする。
- ルート権限なしでアプリを実行できるコンテナを使用する
- 可能であれば、不変のファイルシステムを使用する
- コンテナイメージの脆弱性や設定ミスをスキャンする
- 特権コンテナの防止、ブレイクアウト攻撃でよく使用される機能の使用拒否、ルートとして実行されるコンテナの拒否、アプリの悪用に対する強化を行うセキュリティ サービスの使用など、最低限のセキュリティ レベルを適用します。
Kubernetesをホストするネットワークの強化
NSAは文書の中で、「Kubernetesのリソースはデフォルトでは分離されておらず、クラスターが侵害された場合、横方向の移動やエスカレーションを防ぐことはできません」と述べています。この点を念頭に置いて、以下の点に注意してください。
- ロールベースのアクセス制御とファイアウォールを使用して、コントロール プレーン ノードへのアクセスをロックダウンします。
- コントロールプレーンコンポーネントとノードを別のネットワークに配置する
- Kubernetes etcdサーバーへのアクセスを制限する
- コントロール プレーン コンポーネントに認証された TLS 証明書の使用を要求する
- etcdを暗号化し、通信には別のTLS証明書を使用する
- リソースを分離するネットワークポリシーを確立する
- 明示的にネットワークポリシーを拒否する
- 認証情報や機密情報は設定ファイルに保存しないでください。代わりにKubernetes Secretsに保存し、必ず暗号化してください。
安全なログインの確保
ここでの推奨事項はいくつかあります。匿名ログインを無効にし、強力な認証を要求し、異なるロールに固有のロールベースのポリシーを作成します。
- GoogleはKubernetesコンテナ技術が非常に複雑であるため、すべてを自動的に実行するAutopilot機能を導入する必要があることを認めています。
- Kubernetes コンテナランタイム CRI-O にルート権限取得の脆弱性
- エンタープライズ向けオープンソースは増加傾向にあり、プロプライエタリソフトウェアは減少傾向にある
- 中国は、すでに漏洩したNSAのサイバー兵器を捕獲したことを喜んだ
- ドイツ、国民にカスペルスキーのウイルス対策ソフトをアンインストールするよう勧告
脅威を適切に記録し検出する
ログ記録は、不審な活動を捕捉し、ログを分析する最適な方法を決定するために不可欠です。NSAは、まずログ記録を有効にすることから始め、以下のことを提案しています。
- ハードウェア障害が発生した場合でも可用性を確保するために、ログが永続的であることを確認する
- API、クラスタ メトリック、Pod seccomp などを含む Kubernetes 環境全体のログ記録を構成する
- Kubernetes クラスターの外部の場所にログを集約する
- ユースケースに適した監視およびアラート システムを見つけて、それを使用します。
適切なパッチ適用
ここで何が来るかは推測する必要はありません。速やかにパッチを適用し、定期的に脆弱性をスキャンして侵入テストを実行し、使用されていないコンポーネントが乗っ取りを待つブラック ボックスにならないように必ずアンインストールまたは削除してください。®