Linux内核的iSCSI子系统近日曝出三个漏洞,可能使拥有基本用户权限的本地攻击者可以在未打有补丁的Linux系统上获得root权限。
这些安全漏洞只能在本地被人利用,这意味着潜在的攻击者将不得不利用另一个漏洞或使用另外的攻击途径,访问易受攻击的设备。
15年前的Linux内核漏洞
这几个漏洞是2006年在 iSCSI内核子系统的初 始 开发阶段 被 引入 的, GRIMM的研究人员 事隔 15年 之后 发现了这些漏洞。
据GRIMM 的 安全研究 人 员Adam Nichols 声称 ,这些 漏洞 影响所有Linux发行版, 不过幸好, 易受攻击的scsi_transport_iscsi内核模块默认情况下不会 被 加载。
然而 , 该模块可以被人 加载 并被利用以提升权限,具体要看 攻击者 觊觎的 Linux发行版。
Nichols说 : “ Linux内核加载模块 要么是由于 检测到新硬件, 要么是由于 内核功能检测到缺少 某个 模块。 ”
“ 后一种隐式自动加载情况 更有 可能被滥用, 因而很容易被攻击者 触发,从而使 攻击者 能够 扩大 内核的攻击面。 ”
影响流程图(图片来源:GRIMM)
Nichols补充道:“在CentOS 8、RHEL 8和Fedora系统上,如果安装了rdma-core软件包,未拥有特权的用户可以自动加载所需的模块。”
“在Debian和Ubuntu系统上,只有RDMA硬件可用,rdma-core软件包才会自动加载两个所需的内核模块。正因为如此,这个漏洞的范围大大受到了限制。”
通过绕过KASLR获得root权限
攻击者可以滥用这些漏洞,绕过阻止漏洞的安全功能,比如内核地址空间布局随机化(KASLR)、管理模式执行保护(SMEP)、管理模式访问保护(SMAP)和内核页表隔离(KPTI)。
这三个漏洞可能导致本地权限提升、信息泄漏和服务拒绝:
CVE-2021-27365:堆缓冲区溢出(本地权限升级、信息泄漏和拒绝服务)
CVE-2021-27363:内核指针泄漏(信息泄漏)
CVE-2021-27364:越界读取(信息泄漏和拒绝服务)
这三个漏洞已在下列内核版本中得到了修复:5.11.4、5.10.21、5.4.103、4.19.179、4.14.224、4.9.260和4.4.260,3月7日的主线Linux内核中提供了补丁。没有针对不受支持的报废(EOL)内核版本(比如3.x和2.6.23)发布任何补丁。
如果您已经安装了其中一个Linux内核版本,您的设备并不会在利用这些漏洞的攻击中受到损坏。
如果您还未给系统打上补丁,可以使用上面那张图,看看设备是否容易受到漏洞的攻击。