近期Kubernetes社区通过邮件列表发布了与存储CSI相关的漏洞CVE-2019-11255。

具体的安全问题涉及github.com/kubernetes-csi下external-provisioner, external-snapshotter和 external-resizer这三个项目。即在使用Kubernetes中CSI相关的卷快照(snapshot)、克隆(clone)、调整大小(resize)等特性时,这些漏洞会导致未经授权的卷数据访问或卷数据改变请求被允许执行。

漏洞的相关细节Issue:

https://github.com/kubernetes/kubernetes/issues/85233

三个项目的以下相关的版本均受影响:

  • external-provisioner: v0.4.1-0.4.2, v1.0.0-1.0.1, v1.1.0-1.2.1, v1.3.0

  • external-snapshotter: v0.4.0-0.4.1, v1.0.0-1.0.1, v1.1.0-v1.2.1

  • external-resizer: v0.1.0-0.2.0

由于此问题影响范围较广,社区及时针对此问题发布了如下补丁版本:

  • external-provisioner: 

    v0.4.3

    v1.0.2

    v1.2.2

    v1.3.1

    v1.4.0 

 

  • external-snapshotter:

    v0.4.2

    v1.0.2

    v1.2.2

 

  • external-resizer:

    v0.3.0

修复措施

  • 短期紧急规避措施(只需配置变更,无需升级补丁版本):

    请通过特性开关(feature-gate)关闭Kube-apiserver和Kube-controller-manager中的VolumeSnapshotDataSource,ExpandCSIVolumes和VolumePVCDataSource三个特性

    值得注意的是在Kubernetes1.16版本之前,这些特性处于alpha状态,特性默认处于关闭状态。从1.16开始,这些特性演进到了beta状态,特性也被默认开启,因此需要手动关闭。关闭这些特性开关导致创建PersistentVolumeClaims时,将会忽略DataSource与调整大小的请求,也将导致通过快照或克隆方式创建的PVC,将分配空的磁盘。

  • 完整修复方案:

    将external-provisioner, external-snapshotter和 external-resizer三个软件升级到上述最新补丁版本。

 

作者:chenchunqing

联系方式:

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐