Linux 曝出漏洞,各大发行版形同虚设:攻击者能获得系统全面的 root 权限

研究人员警告,Polkit的pkexec组件中曝出一个编号为CVE-2021-4034(PwnKit)的漏洞,它存在于所有主要的Linux发行版的默认配置中。攻击者一旦利用了它,就能获得系统全面的root权限。

CVE-2021-4034已被命名为PwnKit,起源可以追溯到12多年前初次提交的pkexec,这意味着所有Polkit版本统统受到影响。

Pkexec是Polkit开源应用程序框架的一部分,该框架负责协商特权进程和非特权进程之间的交互,pkexec允许授权用户以另一个用户的身份执行命令,兼任sudo的替代品。

容易被利用,PoC预计很快发布

Qualys信息安全公司的研究人员发现,本地攻击者可以使用pkexec程序,在默认安装的Ubuntu、Debian、Fedora和CentOS 上将权限提升到root权限。

他们警告,PwnKit很可能也可以在其他Linux操作系统上被利用。

Qualys漏洞和威胁研究总监Bharat Jogi解释道,PwnKit是“Polkit中的一个内存损坏漏洞,它允许任何非特权用户在使用默认polkit配置的易受攻击的系统上获得全面的root权限。”

研究人员特别指出,自2009年5月pkexec inn的第一个版本发布以来,这个问题就一直潜伏着。下面的视频演示了可利用该漏洞的隐患:

研究人员今天警告,Polkit的pkexec组件中曝出一个编号为CVE-2021-4034(PwnKit)的漏洞,它存在于所有主要的Linux发行版的默认配置中。攻击者一旦利用了它,就能获得系统全面的root权限。 

研究人员表示,利用该漏洞非常容易,预计概念验证(PoC)漏洞利用代码会在短短几天后发布。Qualys研究团队不会发布PwnKit的PoC。

在Qualys发布PwnKit的技术细节后不到三个小时,坊间就已经出现了漏洞利用代码。IT安全外媒BleepingComputer编译并测试了可用的漏洞利用代码,证明它很可靠,因为它每次都为我们提供了系统的root权限。

谈到漏洞利用代码,CERT/CC漏洞分析师Will Dormann表示,该漏洞利用代码简单又通用。研究人员在ARM64系统上进一步对其进行了测试,表明它在该架构上同样有效。

Qualys在2021年11月18日负责任地报告了该安全问题,并在发布PwnKit背后的技术细节之前等待补丁出来。

该公司强烈建议管理员优先打上Polkit的开发者几个小时前在其GitLab上发布的补丁。

Linux发行版在今天Qualys 经过协调的披露前几周可以获取补丁了,预计今天开始会发布经过更新的pkexec软件包。

Ubuntu已经发布了PolicyKit的更新,以堵住版本14.04和16.04 ESM(扩展安全维护)以及最新的版本18.04、20.04和21.04中的漏洞。用户只需运行标准系统更新,然后重新启动计算机,更改即可生效。

Red Hat也为Workstation和Enterprise产品上的polkit提供了安全更新。

尚未发布补丁的操作系统的临时缓解措施是,使用以下命令,剥夺pkexec的读/写权限:

如果用户想要寻找PwnKit漏洞被利用的迹象,可以检查日志,查找“The value for the SHELL variable was not found the /etc/shells file”(/etc/shells文件中未找到SHELL变量的值)或“The value for environment variable […] contains suspicious content.”(环境变量的值[...]含有可疑内容)条目。

然而Qualys特别指出,可以在不留痕迹的情况下利用PwnKit。

去年,GitHub安全实验室的研究人员Kevin Backhouse发现了另一个影响Polkit的旧的权限提升漏洞。

自该组件的0.113版本以来,这个漏洞已存在了七年,并影响几大流行的Linux发行版,包括RHEL 8、Fedora 21(或更高版本)、Ubuntu 20.04和Debian(“bullseye”)及其衍生版的不稳定版本。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一. 账号口令 1.1 检查设备密码复杂度策略(高危) 1.2 检查口令最小长度(高危) 1.3 检查是否设置口令更改最小间隔天数(高危) 1.4 检查是否设置口令生存周期(高危) 1.5 检查是否设置口令过期前警告天数(高危) 1.6 检查是否存在空口令账号(高危) 1.7 检查是否设置除root之外UID为0的用户(中危) 二. 认证授权 2.1 检查用户目录缺省访问权限设置(高危) 2.2 检查用户umask设置(中危) 2.3 检查重要文件属性设置(中危) 2.4 检查重要目录或文件权限设置(中危) 2.5 检查是否设置ssh登录前警告Banner(低危) 三. 日志审计 3.1 检查是否对登录进行日志记录(高危) 3.2 检查是否启用cron行为日志功能(低危) 3.3 检查是否配置su命令使用情况记录(低危) 3.4 检查日志文件是否非全局可写(低危) 3.5 检查安全事件日志配置(低危) 3.6 检查是否记录用户对设备的操作(低危) 3.7 检查是否配置远程日志功能(低危) 四. 协议安全 4.1 检查是否禁止root用户远程登录(高危) 4.2 检查是否禁止匿名用户登录FTP(高危) 4.3 检查使用IP协议远程维护的设备是否配置SSH协议,禁用telnet协议(高危) 4.4 检查是否修改snmp默认团体字(中危) 4.5 检查系统openssh安全配置(中危) 4.6 检查是否禁止root用户登录FTP(中危) 五. 其他安全 5.1 检查是否使用PAM认证模块禁止wheel组之外的用户su为root(高危) 5.2 检查是否设置命令行界面超时退出(高危) 5.3 检查是否关闭不必要的服务和端口(高危) 5.4 检查是否关闭系统信任机制(高危) 5.5 检查是否删除了潜在危险文件(高危) 5.6 检查系统core dump设置(中危) 5.7 检查root用户的path环境变量(中危) 5.8 检查系统是否禁用ctrl+alt+del组合键(中危) 5.9 检查密码重复使用次数限制(中危) 5.10 检查是否配置用户所需最小权限(中危) 5.11 检查系统内核参数配置(中危) 5.12 检查FTP用户上传的文件所具有的权限(低危) 5.13 检查/usr/bin/目录下可执行文件的拥有者属性(低危) 5.14 检查是否按用户分配账号(低危) 5.15 检查历史命令设置(低危) 5.16 检查系统磁盘分区使用率(低危) 5.17 检查日志文件权限设置(低危) 5.18 检查是否设置系统引导管理器密码(低危) 5.19 检查是否限制FTP用户登录后能访问的目录(低危) 5.20 检查是否设置ssh成功登录后Banner(低危) 5.21 检查是否使用NTP(网络时间协议)保持时间同步(低危) 5.22 检查是否关闭IP伪装和绑定多IP功能(低危) 5.23 检查是否限制远程登录IP范围(低危) 5.24 检查NFS(网络文件系统)服务配置(低危) 5.25 检查拥有suid和sgid权限的文件(低危) 5.26 检查是否配置定时自动屏幕锁定(适用于具备图形界面的设备)(低危) 5.27 检查是否安装chkrootkit进行系统监测(低危) 5.28 检查是否对系统账号进行登录限制(低危) 5.29 检查是否禁用不必要的系统服务(低危) 5.30 检查别名文件/etc/aliase(或/etc/mail/aliases)配置(低危) 5.31 检查账户认证失败次数限制(低危) 5.32 检查telnet Banner 设置(低危) 5.33 检查FTP Banner设置(低危) 5.34 检查是否关闭数据包转发功能(适用于不做路由功能的系统)(低危) 5.35 检查是否安装OS补丁(低危) 5.36 检查是否按组进行账号管理(低危) 5.37 检查是否删除与设备运行、维护等工作无关的账号(低危)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值