Linux Polkit权限提升缝隙(CVE-2021-3560)

颁布功夫 2021-06-11

0x00 缝隙概述

CVE   ID

CVE-2021-3560

时    间

2021-06-11

类    型

LPE

等    级

高危

远程利用

影响领域


攻击复杂度

可用性

用户交互

所需权限

PoC/EXP

已公开

在野利用


 

0x01 缝隙详情

image.png

Polkit是很多Linux 刊行版上默认装置的系统服务,,,,,,,它被systemd使用,,,,,,,所以任何使用systemd的Linux刊行版城市使用polkit。。。。。。

2021年06月03日,,,,,,,RedHat颁布安全布告,,,,,,,建复了Linux  Polkit中一个存在了7年的权限提升缝隙(CVE-2021-3560),,,,,,,该缝隙的CVSS评分为7.8,,,,,,,成功利用此缝隙的攻击者可能获得系统上的 root 权限。。。。。。目前GitHub的安全钻研员已经公开披露了此缝隙的细节和PoC。。。。。。

 

缝隙细节

该缝隙是由于当要求过程在挪用polkit_system_bus_name_get_creds_sync 之前与 dbus-daemon 断开衔接时,,,,,,,该过程无法获得过程的唯一uid和pid,,,,,,,也无法验证要求过程的权限。。。。。。

能够通过启动dbus-send号令但在 polkit 仍在处置要求的过程中终止它来触发此缝隙,,,,,,,在认证要求中终止dbus-send(一个过程间通讯号令)会导致一个谬误,,,,,,,由于polkit将要求提供一个不再存在的衔接的UID(由于该衔接已被终止)。。。。。。而polkit会以一种谬误的方式处置此问题:它不会回绝这个衔接要求,,,,,,,而是把这个要求视为来自UID为0的过程。。。。。。

钻研人员暗示,,,,,,,该缝隙很容易被利用,,,,,,,只必要使用 bash、kill 和 dbus-send 等尺度终端工具执行几条号令即可。。。。。。

 

影响领域

RHEL 8

Fedora 21及更高版本

Debian testing (“bullseye”)

Ubuntu 20.04

 

 

0x02 措置建议

目前此缝隙已经建复,,,,,,,建议参考Linux各刊行版本的官方公告实时升级更新:

RHEL 8

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


Fedora 21及更高版本:

https://bugzilla.redhat.com/show_bug.cgi?id=1967424


Debian testing (“bullseye”)

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


Ubuntu 20.04

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

 

0x03 参考链接

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

https://github.blog/2021-06-10-privilege-escalation-polkit-root-on-linux-with-bug/

https://www.theregister.com/2021/06/11/linux_polkit_package_patched/

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-3560

 

0x04 功夫线

2021-06-03  RedHat颁布安全布告

2021-06-11  VSRC颁布安全公告

 

0x05 附录

 

CVSS评分尺度官网:http://www.first.org/cvss/

image.png