centos升级内核 大漠知秋_Linux内核eBPF权限提升漏洞通告(CVE202027194)

linux内核的bpf模块的verifier.c文件中的scalar32_min_max_or() 函数存在漏洞。由于该函数错误地使用了64位值处理边界跟踪,导致边界检查错误,攻击者可以利用此漏洞进行权限提升。Linux kernel5.7至5.8.14版本受影响。

漏洞名称 : Linux内核eBPF权限提升漏洞(CVE-2020-27194)

威胁等级 : 中危

影响范围 : Linux kernel 5.7-5.8.14

漏洞类型 : 提权

利用难度 : 中等

漏洞分析

Linux Kernel介绍

Linux Kernel是由 Linus Torvalds最初开发的开源的操作系统内核。实现了包括CPU,进程,内存,文件系统等核心模块,被广泛移植到Alpha、arc、arm、ia64、mips、powerpc、sparc、x86-64等许多体系结构上。目前多用于各种服务器和物联网终端等,也可在桌面终端使用Linux。

2 漏洞描述

linux内核的bpf模块的verifier.c文件中的scalar32_min_max_or() 函数存在漏洞。由于该函数错误地使用了64位值处理边界跟踪,导致边界检查错误,攻击者可以利用此漏洞进行权限提升。Linux kernel5.7至5.8.14版本受影响。

3 漏洞分析

该漏洞位于linux的kernel/bpf/verifier.c文件的scalar32_min_max_or() 函数,这个函数实现了ALU32(32位寄存器操作)的或运算的边界跟踪,其函数代码如下:

8128ed50614bea22e6f6b8dba8df641f.png

涉及漏洞的部分代码及其修复如下:

0b3eed792cfc0673604f71feb739a2b8.png

主要的修改是将原来的smin_value,umin_value和umax_value改为了这些数值对应的32位值。原先的赋值将64位无符号值直接赋值给32位有符号变量是错误的,这在umax_value大于2^32时会出现整数截断,导致边界检查绕过。修复的代码进行了正确的32位有符号值比较。

影响范围

影响版本

Linux kernel 5.7-5.8.14

解决方案

1 检测方案

输入以下命令查看本机的内核版本

uname -a

如显示的Linux version大于等于5.7且小于等于5.8.14,则漏洞可能存在。

2 修复建议

升级内核版本,可从以下链接选择5.8.15及其后的版本安装:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git

或使用命令升级:

sudo apt-get install linux-generic-lts-xenial linux-image-generic-lts-xenial (ubuntu,debian等系统使用)

yum -y update kernel (CentOS,RedHat等系统使用)

3 临时修复方案

将kernel.unprivileged_bpf_disabled sysctl设置为1,限制普通用户权限可以临时缓解该漏洞,方法如下:

$sudo sysctl kernel.unprivileged_bpf_disabled=1

$ echo kernel.unprivileged_bpf_disabled=1 | \sudo tee /etc/sysctl.d/CVE-2020-27194.conf(ubuntu,debian等系统使用)

sysctl -w kernel.unprivileged_bpf_disabled=1(CentOS,RedHat等系统使用)

时间轴

2020/10/14  Linux 5.8.15版本发布

2020/10/16 CVE确认收录漏洞

2020/11/4 深信服千里目安全实验室发布漏洞通告

参考链接

1. https://cdn.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.15

2. https://github.com/torvalds/linux/commit/5b9fbeb75b6a98955f628e205ac26689bcb1383e

点击,及时关注并登录深信服智安全平台,可轻松查询漏洞相关解决方案。

edd4b4500e38c1144071387544e248e2.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值