漏洞范圍:
Linux kernel >= 2.6.22(2007年發(fā)行历造,到2016年10月18日才修復)
危害:
低權(quán)限用戶利用該漏洞可以在眾多Linux系統(tǒng)上實現(xiàn)本地提權(quán)
簡要分析:
該漏洞具體為采桃,get_user_page內(nèi)核函數(shù)在處理Copy-on-Write(以下使用COW表示)的過程中,可能產(chǎn)出競態(tài)條件造成COW過程被破壞,導致出現(xiàn)寫數(shù)據(jù)到進程地址空間內(nèi)只讀內(nèi)存區(qū)域的機會溃列。修改su或者passwd程序就可以達到root的目的。具體分析請查看官方分析。
測試工具:
官方放出的EXP:鏈接
提權(quán)為root權(quán)限的EXP一:鏈接
提權(quán)為root權(quán)限的EXP二:鏈接
測試過程(EXP一):
本次環(huán)境使用 bee-box虛擬機進行測試笋除。
假設(shè)一開始獲得的是普通用戶bee的權(quán)限。
1.使用uname -a
命令查看linux內(nèi)核信息炸裆,發(fā)現(xiàn)在臟牛漏洞范圍內(nèi)垃它,可以進行測試。
2.將exp一下載到本地烹看,使用gcc -pthread dirty.c -o dirty -lcrypt
命令對dirty.c進行編譯国拇,生成一個dirty的可執(zhí)行文件。
3.執(zhí)行./dirty 密碼
命令听系,即可進行提權(quán)贝奇。
4.此時使用上圖中的賬號密碼即可獲取root權(quán)限。
測試過程(EXP二)
由于bee-box的gcc版本較低靠胜,就不進行具體的測試了掉瞳,具體步驟如下:
1.下載exp到靶機,解壓并進入文件夾浪漠,執(zhí)行make
后會生成一個dcow的可執(zhí)行文件陕习。
2.執(zhí)行./dcow -s
如果成功的話會返回一個root的 shell,失敗則返回fail址愿。
總結(jié):
- 內(nèi)核版本需要在2.6.22以上该镣,并且未打補丁
- gcc版本可能有要求(exp2),需先升級再測
- 成敗取決于環(huán)境