漏洞概述
6月20日,启明星辰VSRC监测到Linux Kernel权限提升漏洞(CVE-2023-1829)的漏洞细节及PoC在互联网上公开,该漏洞的CVSSv3评分为7.8。
Linux 内核流量控制索引过滤器 (tcindex) 中存在释放后使用漏洞,由于tcindex_delete 函数在某些情况下不能正确停用过滤器,同时删除底层结构,可能会导致双重释放结构,本地低权限用户可利用该漏洞将其权限提升为 root。
影响范围
2.6.12-rc2 <= Linux Kernel版本 < 6.3
整改建议
目前该漏洞已经修复,受影响用户可将Linux内核更新到以下版本:
综合评估,升级到kernel-lt-5.4.248,原因如下:
A. 长期支持版本(kernel-lt),更加稳定一些
B. 与当前版本差异小
关于内核种类:
kernel-ml
kernel-ml 中的ml是英文【 mainline stable 】的缩写,elrepo-kernel中罗列出来的是最新的稳定主线版本。
kernel-lt
kernel-lt 中的lt是英文【 long term support 】的缩写,elrepo-kernel中罗列出来的长期支持版本。
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
lt:长期维护版
ml:最新稳定版
yum list available --disablerepo=* --enablerepo=elrepo-kernel
yum install -y kernel-lt-5.4.248-1.el7.elrepo --enablerepo=elrepo-kernel
sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
[root@rccccc sjnh]# sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (5.4.248-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-957.27.2.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-514.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-7455408d9cd4479488e3432aee44b4ce) 7 (Core)
刚刚安装的内核即0 : CentOS Linux (5.4.248-1.el7.elrepo.x86_64) 7 (Core)
把grub2默认设置为0(及默认启动刚安装的内核)
grub2-set-default 0
或者
grub2-set-default "CentOS Linux (5.4.248-1.el7.elrepo.x86_64) 7 (Core)"
或者手动修改
vim /etc/default/grub
将GRUB_DEFAULT设置为0
查看内核启动项
grub2-editenv list
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot
uname -r
rpm -qa | grep kernel
yum remove kernel-版本
https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/
包说明:
如果你需要进行内核模块的开发或构建,你可能需要安装 kernel-lt-headers 和 kernel-lt-devel 包。而如果你只是想安装最新的长期支持内核版本,你可以直接安装 kernel-lt 包。
我这里只下载kernel-lt包
https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-5.4.248-1.el7.elrepo.x86_64.rpm
https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm --import ./RPM-GPG-KEY-elrepo.org
安装内核
rpm -ivh ./kernel-lt-5.4.248-1.el7.elrepo.x86_64.rpm
rpm -qa | grep kernel
sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
grub2-set-default 0
或者
grub2-set-default "CentOS Linux (5.4.248-1.el7.elrepo.x86_64) 7 (Core)"
或者手动修改
vim /etc/default/grub
将GRUB_DEFAULT设置为0
查看内核启动项
grub2-editenv list
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot
uname -r
rpm -qa | grep kernel
yum remove kernel-版本