文档首页/ 云容器引擎 CCE/ 服务公告/ 漏洞公告/ Docker Engine输入验证错误漏洞公告(CVE-2020-13401)
更新时间:2023-08-02 GMT+08:00

Docker Engine输入验证错误漏洞公告(CVE-2020-13401)

漏洞详情

CVE-2020-13401漏洞源于IPv6动态分配除提供了IPv6的DHCP技术外,还支持Router Advertisement技术。路由器会定期向节点通告网络状态,包括路由记录。客户端会通过NDP进行自身网络配置。本文介绍该漏洞的影响。

表1 漏洞信息

漏洞类型

CVE-ID

漏洞级别

披露/发现时间

输入验证错误

CVE-2020-13401

2020-06-01

漏洞影响

对操作系统中启用了IPv6并且容器网络的CNI Plugins小于V0.8.6版本的节点有影响。

恶意攻击者可以篡改主机上其他容器或主机本身的IPv6路由记录,实现中间人攻击。即使现在系统或者服务上没有直接使用IPv6地址进行网络请求通知,但是如果DNS返回了A(IPv4)和AAAA(IPv6)记录,许多HTTP库都会尝试IPv6进行连接,如果再回退到IPv4,这为攻击者提供了响应的机会。该漏洞为中危漏洞,CVSS评分为6.0

Kubernetes本身不受该漏洞影响,但Kubernetes所使用的CNI插件(请参阅https://github.com/containernetworking/plugins/pull/484)会受影响,以下kubelet版本都包含了受影响的CNI插件服务:

  • kubelet v1.18.0~v1.18.3
  • kubelet v1.17.0~v1.17.6
  • kubelet<v1.16.11

漏洞修复方案

  • 修改主机内核参数配置net.ipv6.conf.all.accept_ra值为0,以拒绝接收IPv6路由发布。
  • 业务容器结合使用TLS和适当的证书验证,防止中间人欺骗。
  • 禁止在Pod中设置CAP_NET_RAW能力,防止恶意容器篡改IPv6路由:
    securityContext:
          capabilities:
            drop: ["NET_RAW"]