Alibaba Cloudは、Container Service for Kubernetes (ACK) の脆弱性CVE-2018-1002105を修正しました。 このトピックでは、影響と脆弱性の修正方法について説明します。
背景
脆弱性CVE-2018-1002105は、Kubernetesコミュニティによって発見されます。 Kubernetesユーザーは、確立された接続を介してKubernetesクラスターのAPIサーバーにリクエストを送信し、バックエンドサービスにアクセスするための特権エスカレーションを実行できます。 Alibaba Cloud はこの脆弱性を修正しました。 ACKコンソールにログインし、クラスターのKubernetesバージョンをアップグレードできます。
脆弱性CVE-2018-1002105の詳細については、「CVE-2018-1002105」をご参照ください。
影響を受けるバージョン
Kubernetes v1.0.x-1.9.x
Kubernetes v1.10.0-1.10.10 (v1.10.11 で修正済み)
Kubernetes v1.11.0-1.11.4 (v1.11.5 で修正済み)
Kubernetes v1.12.0-1.12.2 (v1.12.3 で修正済み)
影響を受けるクラスター設定
拡張APIサーバーがセットアップされ、拡張APIサーバーがkube-apiserverに直接接続できるACKクラスター。
pod exec/attach/portforwardインターフェイスをユーザーに公開するACKクラスター。 攻撃者はこの脆弱性を悪用して、kebelet APIに対する完全な権限を取得できます。
ACKクラスター設定
デフォルトでは、ロールベースのアクセス制御 (RBAC) はACKクラスターのAPIサーバーに対して有効になっています。 Alibaba Cloudアカウントによって承認されていない匿名ユーザーは、特定のAPIを呼び出すことができません。 また、外部アクセスを制御するために、kubeletの起動パラメーターに
anonymous-auth=falseが追加されています。マルチテナントACKクラスターのRAM (Resource Access Management) ユーザーは、ポッドexec/attach/portforwardインターフェイスを介して不正アクセスを実行できます。 クラスターに管理者アカウントしかない場合は、心配する必要はありません。
デフォルトでは、Alibaba Cloudアカウントによって承認されていないRAMユーザーはAggregation APIにアクセスできません。
修正
ACKコンソールにログインし、クラスターをアップグレードします。 詳細については、「ACKクラスターの更新またはACKクラスター内の制御プレーンまたはノードプールのみの更新」をご参照ください。
クラスターがKubernetes 1.11.2を使用している場合は、Kubernetes 1.11.5にアップグレードします。
クラスターがKubernetes 1.10.4を使用している場合は、Kubernetes 1.10.11または1.11.5にアップグレードします。
クラスターがKubernetes 1.9以前を使用している場合は、Kubernetes 1.10.11または1.11.5にアップグレードします。 Kubernetes 1.9を1.10または1.11にアップグレードする場合、クラスターにクラウドディスクがマウントされている場合は、まずACKクラスターでFlexVolumeをアップグレードする必要があります。
説明ACKコンソールで、FlexVolumeをアップグレードするクラスターを選択します。 ナビゲーションウィンドウで、 を選択します。 [システムコンポーネントのアップグレード] ページで、[flexvolume] を選択し、[アップグレード] をクリックします。
ACKサーバーレスクラスタのセキュリティは、この脆弱性が導入される前に強化されています。 したがって、ACKサーバーレスクラスタは影響を受けません。