服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - Linux kernel中存在15年的漏洞

Linux kernel中存在15年的漏洞

2021-03-18 23:34嘶吼网ang010ela Linux

​研究人员在Linux kernel中发现3个存在15年的漏洞,利用该漏洞可以进行权限提升。

Linux kernel中存在15年的漏洞

SCSI 定义了并行I/O 总线和数据协议来连接硬盘驱动、打印机、扫描仪、光驱、测试设备、医疗设备等外部设备到本地计算机。近日,GRIMM在Linux kernel SCSI (Small Computer System Interface,小计算机接口)组件中发现了3个安全漏洞,分别是:CVE-2021-27363、CVE-2021-27364、CVE-2021-27365。

第一个漏洞CVE-2021-27365是iSCSI 子系统中的堆缓存溢出漏洞。通过设置iSCSI string 属性为大于1页的值,然后读取该值就可以触发该漏洞。具体来说,本特权用户可以通过drivers/scsi/libiscsi.c中的helper 函数发送netlink 消息到iSCSI 子系统(drivers/scsi/scsi_transport_iscsi.c),该子系统负责设置于iSCSI 连接相关的属性,比如hostname、username等。这些属性值的大小是由netlink 消息的最大长度来限制的。由于堆溢出漏洞不确定性的本质,第一个漏洞可以用作不可靠的本地DoS。在融合了信息泄露漏洞后,该漏洞可以进一步用于本地权限提升,即攻击者利用该漏洞可以从非特权的用户账户提升权限到root。

第二个漏洞CVE-2021-27363 也是一个堆溢出漏洞,研究人员发现kernel 指针泄露可以用来确定iscsi_transport 结构的地址。第二个漏洞的影响稍微小一些,可以用于潜在的信息泄露。

第三个漏洞CVE-2021-27364 是libiscsi 模块(drivers/scsi/libiscsi.c) 中的一个越界kernel读漏洞。与第一个漏洞类似,非特权用户可以通过构造制定缓存大小的netlink 消息来触发受控的越界读操作。其中多个用户控制的值是没有经过验证的,包括前一个header的大小的计算。该漏洞可以引发数据泄露,被利用后可以触发DoS 条件。

这些漏洞自2006年开始就存在于系统中了,攻击者利用该漏洞可以从基本用户权限提升到root权限。此外,攻击者利用这些漏洞可以绕过Kernel Address Space Layout Randomization (KASLR)、Supervisor Mode Execution Protection (SMEP)、Supervisor Mode Access Prevention (SMAP)、Kernel Page-Table Isolation (KPTI)等安全特征。漏洞影响scsi_transport_iscsi kernel模块加载的所有Linux 发行版,但好消息是该模块并不是默认设置。目前,Linux已经发布了漏洞补丁更新。

漏洞PoC代码参见GitHub:https://github.com/grimm-co/NotQuite0DayFriday/tree/trunk/2021.03.12-linux-iscsi

完整技术分析参见:https://blog.grimm-co.com/2021/03/new-old-bugs-in-linux-kernel.html

本文翻译自:https://securityaffairs.co/wordpress/115565/security/linux-kernel-flaws.html如若转载,请注明原文地址。

延伸 · 阅读

精彩推荐
  • Linux手把手教您在 Linux 上使用 GPG 加解密文件

    手把手教您在 Linux 上使用 GPG 加解密文件

    在本教程中,我将告诉你如何用 GPG 加密和解密文件。这是一个简单的教程,你可以在你的 Linux 系统上尝试所有的练习。这将帮助你练习 GPG 命令,并在你...

    Linux中国6962021-12-15
  • LinuxLinux中环境变量配置的步骤详解

    Linux中环境变量配置的步骤详解

    Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的...

    Myths7882022-02-10
  • LinuxLinux上设置用户通过SFTP访问目录的权限的方法

    Linux上设置用户通过SFTP访问目录的权限的方法

    这篇文章主要介绍了Linux上设置用户通过SFTP访问目录的权限的方法,SFTP可以理解为使用SSH协议进行FTP传输的协议,因而同时要对OpenSSH进行相关设置,需要的朋...

    OSChina10022019-06-19
  • Linux详解Linux系统下PXE服务器的部署过程

    详解Linux系统下PXE服务器的部署过程

    这篇文章主要介绍了Linux系统下PXE服务器的部署过程,包括对PXE的API架构作了一个基本的简介,需要的朋友可以参考下...

    运维之道9812019-07-04
  • LinuxLinux常用的日志文件和常用命令

    Linux常用的日志文件和常用命令

    成功地管理任何系统的关键之一,是要知道系统中正在发生什么事。 Linux 中提供了异常日志,并且日志的细节是可配置的。Linux 日志都以明文形式存储,所...

    Linux教程网2632020-04-18
  • Linuxlinux中rmdir命令使用详解(删除空目录)

    linux中rmdir命令使用详解(删除空目录)

    今天学习一下linux中命令: rmdir命令。rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的 ...

    linux命令大全5372019-11-19
  • LinuxLinux lnmp下无法使用mail发邮件的两种解决方法

    Linux lnmp下无法使用mail发邮件的两种解决方法

    在配置了lnmp环境后,出现了mail函数不能发送邮件的问题,其实有两种方法,一是使用sendmail组件,而是使用postfix。下面为大家一一介绍下 ...

    Linux之家4042019-09-17
  • Linux确保Linux系统安全的前提条件 漏洞防护

    确保Linux系统安全的前提条件 漏洞防护

    Linux 作为开放式的操作系统受到很多程序员的喜爱,很多高级程序员都喜欢编写Linux操作系统的相关软件。这使得Linux操作系统有着丰富的软件支持,还有无...

    Linux之家2642020-04-11