Kubernetesのセキュリティ問題:インターネット上にほぼ100万件のインスタンスが露出

サイバーセキュリティ研究者らは、90万件を超えるKubernetesコンソールのインスタンスがインターネット上に露出していることを発見した。Cybleの研究者らは、数十万の組織を危険にさらす可能性がある、設定不備のあるKubernetesインスタンスを検出した。研究者らは、オープンソースのコンテナオーケストレーションプラットフォームにおいて、露出を示す複数の指標を発見した。KubernetesDashboardKubernetes-masterKubernetes Kube K8Favicon:2130463260, -1203021870 脅威ハンティングの調査から、いくつかの […]

執筆者
Julien Maury
Julien Maury
Jun 29, 2022
3 minute read
eSecurity Planet のコンテンツおよび製品のおすすめは、編集上の独立性を保っています。パートナーへのリンクをクリックすると、当社が報酬を得る場合があります。 詳細を見る

サイバーセキュリティ研究者らは、90万件を超えるKubernetesコンソールのインスタンスがインターネット上に露出していることを発見した。

Cybleの研究者らは検出した、数十万の組織を危険にさらす可能性がある、設定不備のKubernetesインスタンスを。研究者らは、オープンソースのコンテナオーケストレーションプラットフォームにおいて、露出を示す複数の指標を発見した。

  • KubernetesDashboard
  • Kubernetes-master
  • Kubernetes Kube K8
  • Favicon:2130463260, -1203021870

脅威ハンティングの調査から、リスクの露出について次のような一般的な知見が得られた。

  • 米国の露出件数が突出して最も多く(65%)、中国(14%)、ドイツ(9%)が続く
  • 使用されている主要なポートは443、10250、6443

こちらも読む:コンテナセキュリティの主要ソリューション

Kubernetesのセキュリティ問題とリスク

Kubernetesは非常に広く利用されているコンテナオーケストレーションシステムだ。その名称は、ギリシャ語で「かじ取り役」を意味する言葉に由来する。この技術を指す言葉として、「K8s」または「K-eights」も使われている。

多くの組織は、「ポッド」と呼ばれる自己完結型の単位を使ってKubernetesでアプリケーションを管理している。ポッドは互いを認識せずに、他の単位と共通のリソースを共有する。例えば、「npm start」や「go run」のプロセスをポッドで管理し、CPUやRAMの一部を共有できる。

K8sは、マイクロサービスとその設定ファイルで構成されることが多いコンテナのデプロイ、管理、スケーリングに役立つ。ワークロードが増減しても、Kubernetesが状況に自動で対応できる。

そのため、Kubernetesにおける重要なセキュリティ要素はアクセス制御だ。設定を誤ると、望ましくない情報開示につながる可能性があり、攻撃者はそれを利用してコンテナから脱出し、権限を昇格させることさえできる。また、KubernetesはAPI、CLIコマンド、ユーザーインターフェースを提供しており、ハッカーにとって魅力的な攻撃対象になり得る。

Cybleは今回のスキャンについて、「露出しているすべてのインスタンスが攻撃に対して脆弱である、あるいは機密データの喪失につながることを必ずしも意味しない」としつつ、「企業を将来、脅威アクター(TA)にとって魅力的な標的にしてしまう可能性がある、一見単純な設定ミスが存在することを浮き彫りにするものだ」と説明した。

Kubernetesを保護する方法

すべてを予測することはできないが、Kubernetesのポッドを安全にするための有効な対策がある。

  • root以外のユーザーのみを許可する
  • 定期的に脆弱性スキャンをコンテナに対して実施する(設定ミスを発見できる)
  • 設定ファイルにハードコードした認証情報を使う代わりにKubernetes Secretsを使用する
  • 匿名ログインを無効にする
  • 認証を強化する。特に、デフォルトで有効になっていない場合は必ず強化する
  • すべてのセキュリティパッチを更新して適用する。
  • 不要、または使用されなくなったコンポーネントを削除する

また、Kubernetes APIが返すエラーコードには特に注意が必要だ。ハッカーは、それらを使って、さらなる攻撃を試みられるかどうかを判断する可能性が高い。例えば、Kubernetesのコントロールプレーンとノード間の通信を処理するKubelet APIが、認証されていないリクエストを受け付けながら403エラーを返す場合、ハッカーはおそらく攻撃をやめるだろう。

しかし、401を返す場合は、別のエクスプロイトを試みる可能性がある。そのようなエラーは、Kubernetesクラスターがその環境で機能していることを示すからだ。

Cybleの結果からは、「ステータスコード200を返すKubernetesインスタンス799件の小規模なサブセットが存在し、これらは外部の攻撃者に完全に露出していることが明らかになった。この場合、脅威アクターはパスワードなしでKubernetes Dashboard上のノードにアクセスし、すべてのSecretsにアクセスしたり、操作を実行したりできる」ことが判明した。

次の記事:コンテナとKubernetesのセキュリティに関するベストプラクティス

Julien Maury

eSecurity Planet contributor Julien Maury writes about penetration testing, code security, open source security and more. He is a backend developer, a mentor and a technical writer who enjoys sharing his knowledge and learning new concepts.

eSecurity Planet Logo

eSecurity Planet is a leading resource for IT professionals at large enterprises who are actively researching cybersecurity vendors and latest trends. eSecurity Planet focuses on providing instruction for how to approach common security challenges, as well as informational deep-dives about advanced cybersecurity topics.

TechnologyAdvice が所有・運営しています。 © 2026 TechnologyAdvice. 無断転載を禁じます

広告主に関する開示:このサイトに掲載されている製品の一部は、TechnologyAdvice が報酬を受け取っている企業のものです。この報酬は、製品がこのサイトのどこにどのように表示されるか(表示される順序など)に影響する場合があります。TechnologyAdvice は、市場で入手可能なすべての企業やすべての種類の製品を掲載しているわけではありません。