摘自:freebuf.com
由于特定情况下创建文件时的权限检查bug,Ubuntu操作系统曝本地权限提升漏洞,影响Ubuntu 12.04、14.04、14.10、15.04版本。目前Ubuntu官方已经修复了该漏洞。
安全研究员Philip Pettersson发现了此漏洞,并将该漏洞报告给维护Ubuntu官方。如果本地攻击者能够利用这个安全漏洞,那么他就可以获取目标计算机最高权限。此漏洞本身存在于Ubuntu系统中的overlayfs组件,其中overlayfs被设计成一个可写的文件系统,以防潜在的文件系统只有只读属性。
报告中提道:“当在上层文件系统目录中创建新文件时,overlayfs文件系统未能正确检查此文件的权限。而这一缺陷则可以被内核中没有权限的进程所利用,只要满足该进程CONFIG_USER_NS=y及overlayfs所拥有得FS_USERNS_MOUNT标志,即允许挂载非特权挂载空间的overlayfs。而这一条件是Ubuntu 12.04、14.04、14.10和15.04版本中的默认配置,所以这些版本的Ubuntu系统都受此漏洞影响。ovl_copy_up_ *函数未能正确检查用户是否有权限向upperdir目录写入文件。而该函数唯一检查的是被修改文件的拥有者是否拥有向upperdir目录写入文件的权限。此外,当从lowerdir目录复制一个文件时,同时也就复制了文件元数据,而并非文件属性,例如文件拥有者被修改为了触发copy_up_*程序的用户。”
Pettersson已经开发并发布了Ubuntu中此漏洞的一个POC利用代码,它能够为用户提供一个root shell。他介绍道,攻击者还能够列出机器上任何目录的内容,而无需考虑权限问题。