面向新手,大佬勿噴
漏洞概述
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
用戶
這時可以看見我們的用戶權限,沒有cat
/etc/shadow
的權限
接下來開始編譯該文件,編譯命令:
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