1. 程式人生 > 其它 >CVE-2022-0847 Linux Kernel本地提權漏洞

CVE-2022-0847 Linux Kernel本地提權漏洞

0x00 漏洞概述

CVE ID CVE-2022-0847 時 間 2022-03-07
類 型 LPE 等 級 嚴重
遠端利用 影響範圍
攻擊複雜度 使用者互動
PoC/EXP 已公開 在野利用

0x01 漏洞詳情

3月7日,研究人員公開披露了Linux 核心中的一個許可權提升漏洞(CVE-2022-0847,也稱為“Dirty Pipe”),允許非特權使用者注入和覆蓋任意只讀檔案中的資料,導致許可權提升,並最終獲得root許可權。該漏洞影響了 Linux Kernel 5.8 及更高版本,甚至影響了Android裝置。

CVE-2022-0847漏洞類似於 2016 年修復的 Dirty COW 漏洞 (CVE-2016-5195),但它更容易被利用,目前此漏洞的PoC/EXP已經發布。

0x02 影響範圍

Linux Kernel 版本 >= 5.8

Linux Kernel 版本 < 5.16.11 / 5.15.25 /5.10.102

0x03 漏洞復現

在本地Kali提權

1、檢視基本Linux系統資訊

2、先將EXP這個C檔案編譯成二進位制可執行檔案

gcc -o exp dirtypipez.c
chmod +x exp

3、輸入下面這三條命令中的任意一個

find / -user root -perm -4000 -print 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000 -exec ls -ldb {} \;

4、使用剛剛編譯的exp

./exp /usr/bin/chsh

5、成功提權

實戰環境下的提權

1、先獲取webshell,進行資訊收集,發現目標系統版本符合這個漏洞

2、上傳c檔案並且編譯,然後使用find命令提權

可以看到,無效,這時候進行bash反彈shell到攻擊機上

3、再次使用這些命令

4、成功提權

0x04 漏洞原理

暫時沒有特別深入研究,目前只知道和環境劫持提權差不多

環境劫持提權

環境劫持需要的兩個條件 存在帶有suid的檔案 suid檔案存在系統命令

尋找suid檔案

find / -perm -u=s -type f 2>/dev/null

0x04 總結

1、這次的提權,和之前的那個CVE-2021-3034 Linux pkexec提權類似,在實戰過程中要先反彈shell到攻擊機上,然後再使用提權命令

2、這次的提權使用到了find命令,也就是環境劫持提權,有興趣可以繼續研究一下。