首页 AI 资讯 技术前沿 KnowSafe 安全预警:Linux内核create_elf_tables()函数整数溢出漏洞导致本地提权
技术前沿

KnowSafe 安全预警:Linux内核create_elf_tables()函数整数溢出漏洞导致本地提权

KnowSafe 安全预警:KnowSafe 安全团队监测到编号 AVD-2018-14634 的安全漏洞(危害等级:高危)已公开披露,相关用户应尽快排查并完成修复。

漏洞介绍

Linux内核的create_elf_tables函数中存在一个整数溢出缺陷,能访问SUID可执行文件的低权限的本地用户可通过利用此缺陷进行权限提升。内核2.6.x/3.10.x/4.14.x 受影响。 由于利用该漏洞需要大量内存空间,32位的操作系统不受此漏洞影响。小于32GB内存的操作系统几乎不会受到此漏洞影响。 RHEL 5 附带的内核不受此漏洞影响。 缓解措施: -- RHEL系操作系统 1) 将以下代码存为mitigation.stp function clamp_stack_rlim_cur:long () %{ struct rlimit *rlim = current->signal->rlim; unsigned long rlim_cur = READ_ONCE(rlim[RLIMIT_STACK].rlim_cur); unsigned long limit = _STK_LIM / 4 * 3; limit *= 4; // multiply it back up, to the scale used by rlim_cur if (rlim_cur > limit) { WRITE_ONCE(rlim[RLIMIT_STACK].rlim_cur, limit); STAP_RETURN(limit); } else STAP_RETURN(0); %} probe kernel.function("copy_strings").call { l = clamp_stack_rlim_cur() if (l) printf("lowered process %s(%d) STACK rlim_cur to %p\n", execname(), pid(), l) } probe begin { printf("CVE-2018-14634 mitigation loaded\n") } probe end { printf("CVE-2018-14634 mitigation unloaded\n") } 2) 安装systemtap, 使用systemtap运行上述文件 sudo stap -g mitigation.stp

影响范围

系统:amazon_2 kernel(影响面 Up to (excluding) 4.14.15-46.13.amzn2)

系统:amazon_AMI kernel(影响面 Up to (excluding) 4.14.26-46.32.amzn1)

系统:centos_6 kernel(影响面 Up to (excluding) 2.6.32-754.6.3.el6)

系统:centos_7 kernel(影响面 Up to (excluding) 3.10.0-862.14.4.el7)

系统:debian_10 linux(影响面 Up to (excluding) 4.12.6-1)

系统:debian_11 linux(影响面 Up to (excluding) 4.12.6-1)

系统:debian_12 linux(影响面 Up to (excluding) 4.12.6-1)

系统:linux linux_kernel(影响面 Up to (including) 2.6.39.4)

……另有 9 项受影响环境,详见官方公告

解决方案

缓解措施:

-- RHEL系操作系统

1) 将以下代码存为mitigation.stp

function clamp_stack_rlim_cur:long ()

%{

struct rlimit *rlim = current->signal->rlim;

unsigned long rlim_cur = READ_ONCE(rlim[RLIMIT_STACK].rlim_cur);

unsigned long limit = _STK_LIM / 4 * 3;

limit *= 4; // multiply it back up, to the scale used by rlim_cur

if (rlim_cur > limit) {

WRITE_ONCE(rlim[RLIMIT_STACK].rlim_cur, limit);

STAP_RETURN(limit);

} else

STAP_RETURN(0);

%}

probe kernel.function("copy_strings").call

{

l = clamp_stack_rlim_cur()

if (l)

printf("lowered process %s(%d) STACK rlim_cur to %p\n",

execname(), pid(), l)

}

probe begin {

printf("CVE-2018-14634 mitigation loaded\n")

}

probe end {

printf("CVE-2018-14634 mitigation unloaded\n")

}

2) 安装systemtap, 使用systemtap运行上述文件

sudo stap -g mitigation.stp

参考信息

http://www.openwall.com/lists/oss-security/2021/07/20/2

http://www.securityfocus.com/bid/105407

https://access.redhat.com/errata/RHSA-2018:2748

https://access.redhat.com/errata/RHSA-2018:2763

https://access.redhat.com/errata/RHSA-2018:2846

KnowSafe 将持续跟踪该漏洞的利用情况与修复进展,如需漏洞管理与应急响应支持,欢迎联系 KnowSafe 安全团队。