Linux sudo漏洞可能导致未经授权的特权访问

系统 Linux
在 Linux 中利用新发现的 sudo 漏洞可以使某些用户以 root 身份运行命令,尽管对此还有所限制。

 

在 Linux 中利用新发现的 sudo 漏洞可以使某些用户以 root 身份运行命令,尽管对此还有所限制。

sudo 命令中最近发现了一个严重漏洞,如果被利用,普通用户可以 root 身份运行命令,即使在 /etc/sudoers 文件中明确禁止了该用户这样做。

sudo 更新到版本 1.8.28 应该可以解决该问题,因此建议 Linux 管理员尽快这样做。

如何利用此漏洞取决于 /etc/sudoers 中授予的特定权限。例如,一条规则允许用户以除了 root 用户之外的任何用户身份来编辑文件,这实际上将允许该用户也以 root 用户身份来编辑文件。在这种情况下,该漏洞可能会导致非常严重的问题。

用户要能够利用此漏洞,需要在 /etc/sudoers 中为用户分配特权,以使该用户可以以其他用户身份运行命令,并且该漏洞仅限于以这种方式分配的命令特权。

此问题影响 1.8.28 之前的版本。要检查你的 sudo 版本,请使用以下命令:

  1. $ sudo -V
  2. Sudo version 1.8.27 <===
  3. Sudoers policy plugin version 1.8.27
  4. Sudoers file grammar version 46
  5. Sudoers I/O plugin version 1.8.27

该漏洞已在 CVE 数据库中分配了编号 CVE-2019-14287。它的风险是,任何被指定能以任意用户运行某个命令的用户,即使被明确禁止以 root 身份运行,它都能逃脱限制。

下面这些行让 jdoe 能够以除了 root 用户之外的其他身份使用 vi 编辑文件(!root 表示“非 root”),同时 nemo 有权运行以除了 root 身份以外的任何用户使用 id 命令:

  1. # affected entries on host "dragonfly"
  2. jdoe dragonfly = (ALL, !root) /usr/bin/vi
  3. nemo dragonfly = (ALL, !root) /usr/bin/id

但是,由于存在漏洞,这些用户中要么能够绕过限制并以 root 编辑文件,或者以 root 用户身份运行 id 命令。

攻击者可以通过指定用户 ID 为 -14294967295 来以 root 身份运行命令。

  1. sudo -u#-1 id -u

或者

  1. sudo -u#4294967295 id -u

响应为 1 表明该命令以 root 身份运行(显示 root 的用户 ID)。

苹果信息安全团队的 Joe Vennix 找到并分析该问题。

 

责任编辑:庞桂玉 来源: Linux中国
相关推荐

2013-12-23 11:30:45

2016-11-08 19:56:09

GitLab漏洞远程命令

2017-05-08 07:07:50

2009-09-28 09:22:08

配置服务器未经授权的网络访问

2023-11-16 20:33:56

2019-01-10 13:58:02

2020-07-24 10:31:34

未授权访问漏洞

2022-04-21 15:15:24

SSH服务器Linux

2009-04-13 16:13:47

2021-01-28 12:42:44

Sudo漏洞Unix

2010-04-12 11:17:32

2018-01-26 10:49:19

2021-09-17 10:19:56

HP Sudo漏洞root权限

2022-03-07 00:43:11

网络弹性数字资产

2023-07-07 15:44:12

漏洞网络安全

2011-12-22 10:25:52

2011-08-15 13:47:23

Firefox 8

2019-04-19 11:00:05

Linuxsudo命令

2011-12-26 15:51:36

用户访问访问管理

2023-04-21 19:05:39

点赞
收藏

51CTO技术栈公众号