Kubernetes

ハッカーは、RBAC (役割ベースのアクセス制御) を含む新しい方法を使用して、Kubernetes クラスターに永続的なバックドア アカウントを作成し、Monero 暗号化マイニングのためにリソースをハイジャックします。

RBAC は Kubernetes API アクセス制御システムであり、管理者はどのユーザーまたはサービス アカウントが API リソースおよび操作にアクセスできるかを定義できます。

RBAC を悪用して悪意のあるアクセス制御ポリシーを適用することにより、攻撃者は、最初のアクセスを提供した構成ミスが将来修正されたとしても、侵害されたクラスターに留まることができます。

この新しいタイプの攻撃は、キャンペーンを「RBAC Buster」と名付けたAqua Securityの研究チーム「ノーチラス」によって発見されました。

アナリストの報告によると、この攻撃キャンペーンは、60 の不適切に構成された Kubernetes クラスターを侵害するために積極的に使用されたことが観察されました。

RBACバスター

Aqua Security は、API とアクセス キーを公開するように意図的に設定を誤った Kubernetes ハニーポットの 1 つに攻撃者が侵入した後、攻撃を記録して分析することができました。

ターゲットの Kubernetes クラスターへの最初のアクセスは、特権を持つ匿名ユーザーからの認証されていない要求によって達成されるため、API サーバーを誤って構成する必要があります。

次に、攻撃者は HTTP リクエストを送信してシークレットを一覧表示し、API リクエストを作成して「kube-system」名前空間のエンティティを一覧表示することでクラスターに関する情報を収集します。

この段階で、攻撃者は、「kube-controller」として展開されたキャンペーンによってサーバーがすでに侵害されていないか、または他のサイバー犯罪の競合他社がすでにクラスターを侵害しているかどうかを確認します。他の攻撃者の展開が見つかった場合は、それらを削除して、デバイスのリソースを制御し、悪用します。

次のステップは、攻撃者がほぼ管理者レベルの権限を持つ新しい「ClusterRole」を作成し、「kube-system」名前空間に ServiceAccount「kube-controller」を作成して、クラスターでの永続性を獲得するときです。

最後に、攻撃者は「system:controller:kube-controller」という名前の ClusterRoleBinding を作成し、ClusterRole を ServiceAccount にバインドして、「匿名ユーザー アクセス」が無効になっている場合でもクラスター内に保持します。

「kube-controller」という名前の ClusterRoleBinding は、検出を回避してログに紛れ込ませるために使用されました。この名前は、Kubernetes で使用される正当なデーモンに似ているからです。

管理者のような権限を持つ ClusterRole の作成
管理者のような権限を持つ ClusterRole の作成
(アクアセック)

AquaSec のハニーポットは意図的に AWS アクセス キーを公開していましたが、セキュリティ会社は、攻撃者がそれらを利用して、アクセス可能なクラウド インスタンスから追加情報を収集しようとしたことに気付きました。

攻撃の最後のステップは、1 回の API リクエストですべてのノードに Docker Hub でホストされるコンテナー イメージ (「kuberntesio/kube-controller」) をデプロイする DaemonSet を作成し、追跡が困難な暗号通貨 Monero のマイニングを開始することです。侵害されたサーバー。

Monero をマイニングする DaemonSet の作成
Monero (AquaSec)をマイニングする DaemonSet の作成

タイポスクワッティングによる展開

Aqua Security は、悪意のある「kube-controller」コンテナーが公開 Docker レジストリーから「kuberntesio/kube-controller:1.0.1」としてデプロイされ、そこにあることを発見しました。この名前は、正当な「kubernetesio」アカウントと人気のある「kube-controller-manager」イメージを偽装しています。

後者は、ノード障害の検出と対応を担当する Kubernetes コントロール プレーンの継続的に実行される重要なコンポーネントであるため、管理者が見落としがちです。

AquaSec は、特定のコンテナー イメージが最初にリポジトリにアップロードされてから 5 か月間で、Docker Hub から 14,000 回以上プルされたと報告しており、キャンペーンが広範囲に及んでいることを示しています。

構成ファイルからウォレット アドレスを取得すると、攻撃者はすでに 5 つの XMR をマイニングしており、ワーカー 1 人あたり年間 200 ドル相当を稼ぐ可能性があることが明らかになりました。

Kubernetes クラスターに対する RBAC Buster 攻撃の影響は重大である可能性があり、データへの不正アクセス、機密情報の漏えい、リソースのハイジャック、さらには評判の低下さえも含む可能性があります。

脅威を軽減するには、匿名ユーザーからの認証されていないリクエストを許可しないことで API サーバーを保護し、RBAC を効果的に使用して厳格な API アクセス ポリシーを作成して適用します。

また、管理者は、監査ログを監視し、クラスターでホストされているすべてのシークレットとアカウントの資格情報を暗号化することをお勧めします。