Ubuntu本地提权(CVE-2017-16995)复现

面向新手,大佬勿喷

漏洞概述

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

该漏洞在老版本中已经得到修复,然而最新版本中任可被利用,官方暂未发布相关补丁,漏洞处于0day状态。据说这个exp十分犀利,秒aws秒阿里。

该exp地址:http://cyseclabs.com/exploits/upstream44.c

深入分析漏洞原理及EXP文章地址:https://xz.aliyun.com/t/2212

 

 

影响范围

Linux Kernel Version 4.14-4.4

 

仅影响Ubuntu/Debian发行版本

 

经i春秋安全研究员测试 Ubuntu 16.04.1~16.04.4 均存在此漏洞

 

实验步骤(此次我们用i春秋的在线实验(/捂脸))

 

第1步 漏洞验证

下载EXP

使用sftp,将EXP文件上传到目标机上(一般情况下提权文件由shell上传,此次不做为重点介绍)

 

命令为  sftp ichunqiu@172.16.12.2 ,密码:ichunqiu,上传命令: put upstream44.c 

 

ichunqiu是一个测试的普通权限用户

接着,我们使用ssh登录目标机器的ichunqiu用户

ssh

这时可以看见我们的用户权限,没有cat /etc/shadow的权限

permission

接下来开始编译该文件,编译命令:

gcc -o upstream44 upstream44.c

 

 

 

得到可执行文件upstream44

最后,执行刚刚编译后的文件,成功提升至root权限

我们再来 cat /etc/shadow 一下,现在可以看见内容了

 

 

第2步 漏洞缓解

官方已经发布了补丁,但是可以通过修改内核参数来限制普通用户使用bpf(2)系统调用的方式以规避风险。

 

echo 1 > /proc/sys/kernel/unprivileged_bpf_disabled

我们运行该命令后,再切换至普通用户执行EXP查看效果

可以看见报错:error: Operation not permitted,操作不被允许

 

 

参考链接:

https://www.cnblogs.com/rebeyond/p/8921307.html

https://www.ichunqiu.com/course/61491?f=1

https://www.freebuf.com/column/165887.html

https://www.freebuf.com/news/165608.html

https://blog.csdn.net/fly_hps/article/details/80085750v

 

转载于:https://www.cnblogs.com/threesoil/p/9895152.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值