今年以来,Linux内核中出现了多起严重的安全漏洞。我们再次总结,供大家参考、学习和修复。CAP_SYS_ADMIN导致Kubernetes容器逃逸(CVE-2022-0185)(一)漏洞描述在Linux内核中发现一个新的安全漏洞CVE-2022-0185。由于Linux内核的“FileSystemContext”组件存在堆缓冲区溢出漏洞,攻击者可以利用该漏洞实现越界写入、提权、DoS和任意代码执行。使用非特权名称空间或取消共享到具有CAP_SYS_ADMIN权限的名称空间。Dockerseccomp默认拦截unshare命令,所以一般不允许运行该命令。(2)该漏洞影响从5.1-rc1开始的所有Linux内核版本,包括最新的5.4.173、5.10.93、5.15.1。还会影响Ubuntu20/21、Debian11和一些RedHatCentos8软件包。(3)高危级别(CVSS评分7.8)(4)修复缓解建议升级Linux内核至5.16.2版本修复该漏洞。对于这些没有可用补丁的系统,建议用户禁用非特权用户命名空间。在Ubuntu系统上,可以使用以下命令禁用非特权命名空间:sysctl-wkernel.unprivileged_userns_clone=0RedHat用户可以使用以下命令禁用用户命名空间:echo"user.max_user_namespaces=0">/etc/sysctl.d/userns.conf#sysctl-p/etc/sysctl.d/userns.confTIPC远程堆栈溢出(CVE-2022-0435)安全研究人员在Linux内核中发现用于进程间透明网络模块通信(TIPC)协议的本地和远程访问堆栈溢出。该模块存在于大多数主要发行版中,如果加载该模块,则可以利用该模块。此外,对于远程利用,目标需要已经设置TIPC承载,即漏洞扩展为使用TIPC系统。该漏洞很容易被利用,并可能通过内核拒绝服务导致崩溃。在没有或绕过堆栈KASLR的情况下,该漏洞可能导致有效载荷的任意控制流劫持。该模块在Linux4.8版本的监控框架中引入,此后该漏洞一直存在。(1)漏洞描述该漏洞是在初始阶段检查`member_cnt,函数不检查是否低于MAX_MON_DOMAIN定义的`members`数组的最大长度。通过伪装成对等点并在本地或远程建立与目标的链接,可以首先提交包含恶意域的任意有效负载的记录;发送更新域记录将导致先前的恶意记录被memcpy为272字节的本地“structtipc_mon_domain”&dom_bef[6]触发堆栈溢出。这样,首先提交的记录通过覆盖以下堆栈&dom_bef和来自恶意域的任何成员缓冲区的内容;其大小受媒体MTU(Ethernet、UDP、Inifiband)限制,该漏洞已经出现,可直接利用利用方式:(2)影响范围Linux内核版本>=4.8。CentOS8默认内核版本受此漏洞影响。(3)危害等级高(CVSS评分7.1)(4)建议升级最新版本的Linux内核。RedHat官方已经发布了升级补丁,Centos8.4可以使用:yumupdatekernelupgrade。cgroups漏洞容器转义和任意命令漏洞(CVE-2022-0492)漏洞存在于cgroupsv1版本的Linux内核控制组组件中,用于对进程进行分组,执行CPU、内存、磁盘IO、网络等资源限制。现代容器(docker)广泛依赖cgroups的功能实现。(1)漏洞描述CVE-2022-0492主要是由于没有检查release_agent文件的进程是否有管理权限(即CAP_SYS_ADMIN函数)导致的。攻击者可以通过release_agent强制内核调用具有提升权限的二进制文件并接管机器。由于release_agent文件的所有者设置为root,因此利用此漏洞需要具有“root”权限的进程才能写入该文件。因此,该漏洞只允许root进程提升权限。运行AppArmor或SELinux安全系统的容器不受影响。(2)高危级别(CVSS评分7.0)(3)影响范围所有以root权限运行docker容器的主机均受该漏洞影响。包括CentOS8、centOS7和centOS6。(4)建议升级最新版本的Linux内核进行修复和缓解。检查以root权限启动的容器,并以非特权帐户启动它们。启用AppArmor或SELinux。启用秒编译。DirtyPipeLocalPrivilegeEscalationVulnerability(CVE-2022-0847)Linux内核存在的提权漏洞(CVE-2022-0847,简称“脏管”),利用该漏洞一般允许用户注入和覆盖任意只读files升级文件中的数据并获得root权限。该漏洞存在于LinuxKernel5.8及更高版本的内核中。目前该漏洞的PoC/EXP已经发布,可以直接利用。(一)漏洞描述CVE-2022-0847是Linux内核5.8及之后的本地提权漏洞。通过利用此漏洞,攻击者可以覆盖和重写任何可读文件中的数据,从而将具有普通权限的用户提升为特权root。由于其利用原理类似于脏牛漏洞(CVE-2016-5195),但更容易被利用,故此漏洞被命名为“脏管”。(2)高危害等级(CVSS评分7.8)(3)影响范围Linux内核版本>=5.8Linux内核版本<5.16.11/5.15.25/5.10.102CentOS8默认内核版本受此漏洞影响CentOS7及以下不受CentOS8影响,可以使用如下命令查看范围:uname-a查看当前使用的内核版本。如果版本大于5.8,需要更新内核版本到对应的5.16.11/5.15.25/5.10.102。(4)修复建议需要将Linux内核升级到以下安全版本:Linuxkernel>=5.16.11Linuxkernel>=5.15.25Linuxkernel>=5.10.102
