一.说明

1.CVE-2022-0847属于Linux 内核提权漏洞,别名[Dirty Pipe(脏管道)],与经典的「脏牛(Dirty Cow,CVE-2017-1000407)」类似,但更简单,影响更大,CVSS 7.8评分

2.

(1)影响linux内核5.8~5.16.10    5.15.0~5.15.24    5.10.0~5.10.101

(2) 常见发行版影响Ubuntu 20.04/21.10/22.04(默认内核 5.15.x,未打补丁版本);

CentOS 7/8(内核 5.10.x/4.18.x,CentOS 7 的 4.18.x 内核需单独打补丁);Debian 11(内核 5.10.x);Fedora 34/35(内核 5.14.x/5.15.x)

3.从修改/覆盖只读文件和劫持 SUID 二进制文件说明

二.过程

地址(1)https://github.com/Arinerron/CVE-2022-0847-DirtyPipe-Exploit

  1. 使用uname -r或uname -a产看内核版本,看是否内核漏洞,如果存在可用很快使用exp进行越权或操作,可用看出5.14.0很明显存在这个cve漏洞,那我们去github找找这个exp

注意:(1)执行前将exp拷贝到本地,可以只上传主要文件,或者加上环境文件。(2)基本上都是拷贝的.c文件,需要gcc进行gcc  exploit.c -o exploit

(2)我们按照操作手册实行后,大概率是可以成功的,但是不排除做了防护,比如实时监测或者修改后立马反弹回去,或者加passwd操作无用,需要多shadow操作

(3)这种如果无法显示登录密码,可以反弹shell一下,进入终端操作,反弹的操作和注意方法,之后我会具体分享的

地址(2): https://github.com/AlexisAhmed/CVE-2022-0847-DirtyPipe-Exploits

(1)具体内容,这个是23年发布的,上面一个是22年发布的,这个多一个劫持的方法,修改/覆盖只读文件和劫持 SUID 二进制文件

(2) 修改/覆盖只读文件,这个是上传一个base64编码的.b64因为防止上传的时候被组织,渗透场景中(比如 Web Shell、受限终端、字符编码不兼容的环境),直接传输二进制文件(或带特殊字符的源码)可能失败(比如被拦截、乱码、无法上传)。Base64 会把任意数据转换成由字母 / 数字 / 符号组成的纯文本,可以像普通文本一样轻松传输

(3)劫持 SUID 二进制文件,同样的道理,如果目标没有gcc或者没有权限,可以本地gcc

操作后再上传

CVE 复现博客的核心是技术研究、学习交流,免责申明的关键是:明确仅授权环境测试、禁止非法使用、划分责任边界、遵守法律法规,避免因读者不当操作引发法律 / 安全风险,同时保护作者与平台权益。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐