暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Linux sudo 权限提升漏洞,升级呀运维!

wangyanglinux 宝典 2021-02-01
426

1月26日,Sudo 发布安全通告,修复了一个类 Unix 操作系统在命令参数中转义反斜杠时存在基于堆的缓冲区溢出漏洞。当 sudo 通过 -s 或 -i 命令行选项在 shell 模式下运行命令时,它将在命令参数中使用反斜杠转义特殊字符。但使用 -s 或 -i 标志运行 sudoedit 时,实际上并未进行转义,从而可能导致缓冲区溢出。只要存在 sudoers 文件(通常是 /etc/sudoers ),攻击者就可以使用本地普通用户利用 sudo 获得系统 root 权限。请受影响的用户尽快采取措施进行防护。


1


漏洞波及的 sudo 版本


受影响的版本


Sudo 1.8.2 - 1.8.31p2


Sudo 1.9.0 - 1.9.5p1


不受影响的版本


Sudo 1.9.5p2


2


漏洞检测的方式


用户可以使用非root的账户登录系统,运行“ sudoedit -s / ”命令,若返回如图以“ sudoedit:”开头的错误,则当前系统可能存在安全风险。不受影响的系统将显示以“ usage:”开头的错误。







3


漏洞防护


3.1 官方升级

目前官方已在sudo新版本1.9.5p2中修复了该漏洞,请受影响的用户尽快升级版本进行防护,官方下载链接:https://www.sudo.ws/download.html


注:建议用户在升级前做好数据备份工作,避免出现意外



3.2 临时防御措施

若 Red Hat 相关用户暂时无法进行升级操作,可使用 systemtap 进行以下临时缓解


3.2.1 安装所需的systemtap软件包和依赖项

systemtap yum-utils kernel-devel-"$(uname -r)"
RHEL 7:使用命令安装 kernel debuginfo:
  debuginfo-install -y kernel-“$(uname -r)”


RHEL 8:使用命令安装 sudo debuginfo:
  debuginfo-install sudo


3.2.2 创建以下systemtap脚本(将文件命名为sudoedit-block.stap)

probe process("/usr/bin/sudo").function("main") {
command = cmdline_args(0,0,"");
         if (strpos(command, "edit") >= 0) {       
                  raise(9);
}
}


3.2.3 使用以下命令安装脚本:(使用 root 权限)

nohup stap -g sudoedit-block.stap &

该脚本将使得易受攻击的 sudoedit 二进制文件停止工作。sudo 命令仍将照常执行。注:上述更改在重启后失效,必须在每次重启后重新应用

3.2.4 一旦安装了补丁程序,就可以通过取消 systemtap 进程来删除 systemtap 脚本。例如,通过使用以下命令( 其中 7590 是 systemtap 进程的 PID ):

kill -s SIGTERM 7590




4


漏洞防护


这里在油管上看到一篇不错的较详细说明此漏洞的博文,进行了转载,大家有兴趣的话可以一看,转载于 JohnHammond 油管博主






END





文章转载自wangyanglinux 宝典,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论