安全漏洞和解决方法

Rancher 致力于向社区披露我们产品的安全问题。Rancher 将对修复的问题通过发布 CVEs(通用漏洞披露,Common Vulnerabilities and Exposures)通知社区。

CVE ID 编号问题描述解决日期解决方式
CVE-2018-20321项目中可以访问default命名空间的任意成员都可以在 Pod 中安装 netes-defaultservice account,然后通过这个 Pod 执行管理员才有权限执行的命令。2019.1.29从 v2.1.6+ 回滚到 v2.1.0-v2.1.5 或 v2.0.0-v2.0.10 之间的任何版本,或从从 v2.0.11+ 回滚到 v2.0.0-v2.0.10 之间的任何版本,请参考 回滚必读-回滚到特定版本.
CVE-2019-6287如果项目成员同时拥有访问多个项目的权限,在移除该成员对于某一个项目的权限后,该成员仍然可以访问这个项目,实际上并没有取消成员的权限。2019.1.29Rancher v2.1.6Rancher v2.0.11已修复该问题。
CVE-2019-11202初次启动 Rancher 时,Rancher 会创建一个配备了简易密码的默认的管理员用户。配置好了参数后,Rancher 管理员可以删除这个默认的管理员用户。但是重启 Rancher 后,Rancher 会重新创建一个默认的管理员用户。攻击者可以利用这一个漏洞,使用管理员账号和简单的密码登录 Rancher。解决这个问题的方式是:创建了新的管理员账户后,不要删除默认管理员账户,而是停用该账户。重启 Rancher 后,系统检查默认管理员账户依然存在,就不会重新创建默认管理员账户。2019.4.16Rancher v2.2.2Rancher v2.1.9Rancher v2.0.14已修复该问题。
CVE-2019-12274因为节点驱动选项允许用户把数据发送到云端,所以拥有部署节点权限的普通户可以获得管理员权限,访问 Rancher 管理面。用户可以通过此漏洞,将含有敏感信息的文件,如/root/.kube/config/var/lib/rancher/management-state/cred/kubeconfig-system.yaml等文件发送到云端。2019.6.5Rancher v2.2.4Rancher v2.1.10Rancher v2.0.15已修复该问题。
CVE-2019-12303项目所有者可以插入额外的 fluentd 配置参数,从而读取文件或执行随机指令。该漏洞由 Tyler Welton 发现。2019.6.5Rancher v2.2.4Rancher v2.1.10Rancher v2.0.15已修复该问题。
CVE-2019-13209该漏洞被称为WebSocket 跨域劫持漏洞。如果某个用户已经登录了 Rancher,然后被诱骗访问某个社交网站的恶意网页,恶意网页在某元素中植入一个 WebSocket 握手请求申请跟目标应用建立 WebSocket 连接。一旦打开该恶意网页,则自动发起请求。如果服务器端疏于检查 Origin,该请求则会成功握手切换到 WebSocket 协议,恶意网页就可以成功绕过身份认证连接到 WebSocket 服务器,进而窃取到服务器端发来的信息,抑或发送伪造信息到服务器端篡改服务器端数据。该漏洞由 Matt Belisle 和 Alex Stevenson 发现2019.7.15Rancher v2.2.5Rancher v2.1.11Rancher v2.0.16已修复该问题。
CVE-2019-14436这个漏洞允许有编辑项目角色权限的项目成员给自己或他人分配集群层级的角色,该成员可以给自己或他人分配集群管理员的角色,从而获取该集群的信息。这个漏洞由 Michal Lipinski 发现。2019.8.5Rancher v2.2.7Rancher v2.1.12已修复该问题。
CVE-2019-14435这个漏洞允许已经通过认证的用户从 system service 容器提取 Rancher 使用的隐私数据,如云服务提供商的 metadata 元数据。虽然 Rancher 使用了白名单管理这些 system service 的权限,但是依然可以通过精心制造的 HTTP 请求使用这个漏洞。该漏洞由 Matt Belisle 和 Alex Stevenson 发现2019.8.5Rancher v2.2.7Rancher v2.1.12已修复。
最后由 yzeng25更新 于