ペネトレーションテスターは、15分でKubernetesクラスターへのルートアクセスを取得しました。彼らが悪用したものは次のとおりです。 攻撃チェーン: - 公開されたKubernetesダッシュボードが見つかりました(悪い) - ダッシュボードには表示専用のサービスアカウントがありました(これは安全だと考えました) - サービスアカウントは、すべての名前空間のシークレットを一覧表示できます - シークレットで AWS 認証情報が見つかりました - EC2インスタンスプロファイルにアクセスするためにAWS認証情報を使用した - インスタンスプロファイルには、IAM経由の完全なKubernetes管理者がありました - kubectl を使用して特権ポッドを作成 - ノードにエスケープされました - クラスター全体へのルートアクセス 私たちが正しいと思ったこと: - ダッシュボードが読み取り専用でした - シークレットは保存時に暗号化されました - ネットワークポリシーが整備されている - 定期的なセキュリティアップデート 見逃したもの: - ダッシュボードはまったく公開しないでください - サービス アカウントには最小権限の原則が必要です - シークレットには AWS 認証情報を含めることはできません (代わりに IRSA を使用してください) - ポッドセキュリティポリシーが適用されなかった - ノードアクセスが強化されていない 修正には2週間かかりました。 - Kubernetes ダッシュボードを完全に削除しました - すべてのポッドAWSアクセスにIRSAを実装 - 厳格なPSP/ポッドセキュリティ標準を適用...