CVE-2018-15664漏洞分析报告

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 近日来自SUSE的安全专家Aleksa Sarai公布了编号为CVE-2018-15664的docker相关高危安全漏洞,该漏洞的CVSS评分为8.7,影响面涵盖所有docker发行版本,攻击者可利用该漏洞逃逸出容器读取或篡改host或其他任意容器内的文件,当前docker官方已经给出了临时方案以降低攻击面并将于下个release版本发布。

  近日来自SUSE的安全专家Aleksa Sarai公布了编号为CVE-2018-15664的docker相关高危安全漏洞,该漏洞的CVSS评分为8.7,影响面涵盖所有docker发行版本,攻击者可利用该漏洞逃逸出容器读取或篡改host或其他任意容器内的文件,当前docker官方已经给出了临时方案以降低攻击面并将于下个release版本发布。

漏洞描述

  该漏洞的根因是使用FollowSymlinkInScope函数时触发TOCTTOU(time-of-check-to-time-of-use) 文件系统的竞争条件缺陷引起的。这段函数代码在docker源码中使用较多,最为直接的就是docker cp命令。根据Sarai的描述:FollowSymlinkInScope的作用是解析容器中运行进程的文件路径,而攻击者可以利用解析校验完成后和操作执行间的空隙修改cp文件为一个符号链接对应的目标文件,这样理论上该攻击者可能会以root身份访问到host上或其他容器内的任意文件。
  根据官方说明,攻击者首先要拥有docker cp命令的使用权限和目标容器的访问权限,且攻击只可能发生在拷贝过程中解析文件完成到执行copy动作的毫秒级窗口内。攻击具备一定的难度和相当的专业背景,因此docker容器的相关使用者也不必过于惊慌,下面我们介绍此次漏洞的相关修复进展。

修复措施:

  所幸”docker cp”命令是此次漏洞影响范围内唯一暴露的对外接口,docker社区也很快给出了临时性的修复方案,在该方案中,官方建议用户在使用docker cp命令前执行docker pause命令,并在结束cp命令后执行docker unpause。在下个月的release版本中,pause和unpause命令会被自动加入到cp命令的运行过程中,通过冻结容器的方式阻断copy过程中对容器文件数据的篡改。
  同时,Sarai也指出了该漏洞的根本修复方法在于修改chrootarchive中的归档逻辑,需要使用root作为容器的rootfs(而不是父目录,因为其可能已经被攻击者控制)。因为chrootarchive属于docker底层源码,改动会影响如Tar/Untar等多个相关接口,因此至今还没有根本性的修复,不过当前相关修复已经有了pr提交,相信社区也已有了相应的补丁计划。另外Sarai也提出了在内核层面的修改方案,当然这样的底层修改短期内应该不会被应用到docker对该漏洞的修复中去。

短期如何防范:

  此次漏洞的攻击前提是攻击者拥有docker cp命令的使用权限,阿里云容器服务集群默认开启了基于RBAC的访问控制,非法用户是没有cp命令在容器内的访问权限的。对于可能非法获得cp命令访问权限的攻击者,我们给出如下几个建议:

1) 控制docker cp命令的使用
2) 在使用docker cp命令的前后执行docker pause和docker unpause
3) 合理利用如AppArmor等工具限制容器内对host上敏感目录的访问权限并监控相关审计

相关实践学习
巧用云服务器ECS制作节日贺卡
本场景带您体验如何在一台CentOS 7操作系统的ECS实例上,通过搭建web服务器,上传源码到web容器,制作节日贺卡网页。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
4月前
|
安全 关系型数据库 Linux
高危漏洞CVE-2024-38077的修复指南
根据2024年8月9日,国家信息安全漏洞共享平台(CNVD)收录了Windows远程桌面许可服务远程代码执行漏洞(CNVD-2024-34918,对应CVE-2024-38077)。未经身份认证的攻击者可利用漏洞远程执行代码,获取服务器控制权限。目前,该漏洞的部分技术原理和概念验证伪代码已公开,厂商已发布安全更新完成修复。CNVD建议受影响的单位和用户安全即刻升级到最新版本。
|
缓存 安全 网络安全
心脏滴血漏洞复现(CVE-2014-0160)
心脏滴血漏洞复现(CVE-2014-0160)
347 0
|
安全 Java 应用服务中间件
CVE-2023-21839漏洞本地简单复现
CVE-2023-21839漏洞本地简单复现
1085 0
|
安全 Linux 网络安全
【网络安全】复现CVE-2019-14287漏洞
Sudo的全称是"superuserdo”,它是Linux系统管理指令,允许用户在不需要切换环境的前提下,以其它用户的权限运行应用程序或命令,通常是以root用户身份运行命令,以减少root用户的登录和管理时间,同时提高安全性,当在Linux操作系统上执行命令时,只有得到许可或者知道root密码,普通用户才可以使用sudo命令以root身份执行命令. 个人理解:(直白点讲就是,如果你入侵了他人的主机,可以利用该漏洞,进行权限升级,不用切换root,因为切换root的时候需要输入密码,用该漏洞可以跳过该步骤,获得权限)
213 0
【网络安全】复现CVE-2019-14287漏洞
|
安全 网络安全 Android开发
APP安全漏洞检测报告 渗透测试项
2019年第三季度以来,我们SINE安全,APP漏洞检测中心发现许多APP被检测出含有高危漏洞,包括目前漏洞比较严重的SIM卡漏洞以及安卓端、IOS端漏洞,根据上半年的安全检测以及漏洞测试分析发现,目前移动APP软件漏洞的发展速度上涨百分之30,大部分的APP漏洞都已被商业利用以及窃取用户隐私信息,造成APP软件的数据泄露,数据被篡改,等等。
2150 0
APP安全漏洞检测报告 渗透测试项
|
安全 Apache 开发工具
[漏洞复现]CVE-2019-0708(上)
[漏洞复现]CVE-2019-0708
198 0
[漏洞复现]CVE-2019-0708(上)
|
安全 Python
[漏洞复现]CVE-2019-0708(下)
[漏洞复现]CVE-2019-0708
174 0
 [漏洞复现]CVE-2019-0708(下)
|
云安全 安全 JavaScript
威胁快报|CVE漏洞—PHPCMS2008 /type.php代码注入高危漏洞预警(CNVD-C-2018-127157/CVE-2018-19127)
11月4日,阿里云安全首次捕获PHPCMS 2008版本的/type.php远程GetShell 0day利用攻击,攻击者可以利用该漏洞远程植入webshell,导致文件篡改、数据泄漏、服务器被远程控制等一系列严重问题。建议受影响用户尽快升级到最新版本修复。
2156 0
|
安全 测试技术
CVE-2017-8464漏洞复现
版权声明:转载请注明出处:http://blog.csdn.net/dajitui2024 https://blog.csdn.net/dajitui2024/article/details/79396484 感谢学长分享复现的技术文档,十分感谢。
1271 0