LOADING

正在加载

CVE-2021-3493:Linux kernel特权提升漏洞复现

壹 漏洞概念

linux kernel一般指Linux内核。Linux是一种开源电脑操作系统内核。它是一个用C语言写成,符合POSIX标准的类Unix操作系统。
Linux 内核中 overlayfs 文件系统是 Ubuntu 的特定问题,由于没有正确的验证文件系统功能在用户名称空间中的应用,从而导致攻击者可以安装一个允许未授权挂载的 overlayfs 修补程序来提升权限。

贰 漏洞原理及利用条件

Linux支持存储在扩展文件属性中的文件功能,它们的工作方式类似于setuid-bit,但粒度更细。

在伪代码中设置文件功能的简化过程,重要的调用是cap_convert_nscap,它检查与名称空间相关的权限。
如果我们从自己的名称空间和挂载上设置文件功能,就不会有问题,而且我们有权限这样做。但当OverlayFS将此操作转发给底层文件系统时,它只调用vfs_setxattr,并跳过cap_convert_nscap中的检查。这允许在外部命名空间/mount中的文件上设置任意功能,并且在执行过程中应用。

Linux 5.11中,对cap_convert_nscap的调用被移到了vfs_setxattr中,攻击很难实现。

叁 适用版本

uname -a

087d5c2a8adb89e0d85425f586b21726.png
范围为在以下版本,可能存在漏洞:

Ubuntu 20.10
Ubuntu 20.04 LTS
Ubuntu 18.04 LTS
Ubuntu 16.04 LTS
Ubuntu 14.04 ESM

说实话这个不好判断!

肆 复现环境说明

使用了阿里云开源镜像站:传送门

伍 复现

# 查看版本
uname -a
# 建议重新编译,可能现成的工具用不了
gcc exploit.c -o exploit
# 添加执行权限
chmod +x exploit
# 运行
./exploit
# 查看权限
whoami

6a271465c3a7181bea97464b7e909afa.png

陆 利用Poc|Exp以及工具

EXP地址:传送门
CVE-2021-3493-main.zip

柒 危害

提权到root权限!

捌 修复建议

更新Linux内核至5.11版本,补丁:链接

玖 参考

avatar
小C&天天

修学储能 先博后渊


今日诗句