大家好,
几天前,sudo 中发现了一个严重的堆缓冲区溢出漏洞,任何本地用户都可以利用它。发现者将其命名为 Baron Samedit。该漏洞可被利用来将权限提升至 root,即使该用户不在 sudoers 文件中也是如此。利用该漏洞无需用户身份验证。它通常被称为 CVE-2021-3156。
你可以在这里看到多位安全研究人员录制的实际演示。
受影响的 Sudo 版本为 1.8.2 到 1.8.31p2,以及 1.9.0 到 1.9.5p1。
请记住: 除非补丁已被向后移植,例如 Ubuntu 18.04 的情况,在这种情况下它可能不需要是 1.9.5p2。
来自 TroyWolf
对于 Ubuntu 用户,已修补的 sudo 版本似乎与您正在运行的操作系统版本有关。Ubuntu 网站显示了该漏洞的以下版本特定信息:
谨慎使用:打开终端并使用 sudo sudo -V 检查您的版本号。请参阅上面的说明了解受影响的版本,并阅读该说明。
运行 sudoedit -s / 来检测您是否易受攻击。
您还可以尝试:
sudoedit -s '\' `perl -e 'print "A" x 65536'`
来自 hackernews 的 bonyt 指出,macOS 没有 sudoedit,但您可以创建一个指向它的符号链接,因为 sudo 实际上是一个多调用二进制文件:
ln -s `which sudo` sudoedit
然后调用它:
./sudoedit
根据响应,可以判断主机是否易受攻击:
如果响应以 sudoedit: 开头的错误,则易受攻击:sudoedit: /: not a regular file 或 segfault
如果响应以 usage: 开头的错误,则不易受攻击或已修补。
Falco 是 CNCF 的开源项目,用于容器和 Kubernetes 的运行时威胁检测。
您可以使用一条规则来检测并阻止用户的尝试。
来自 hackernews 的 pawan328 指出,您可以查看这篇博客文章了解更多详细信息。
sudo apt-get update
sudo apt-get --only-upgrade install sudo
我有一个视频讨论了这一点,并展示了上述所有方法。
内容包括:
00:00 - 介绍 01:29 - 什么是 CVE? 02:22 - 这个漏洞是什么? 05:30 - 实际操作中的利用演示 13:07 - 受影响的 Sudo 版本 13:48 - WSL(适用于 Linux 的 Windows 子系统) 15:11 - 通过 sudo 检测是否易受攻击(WSL) 19:21 - 通过 sudo 检测是否易受攻击(Ubuntu) 20:53 - 通过命令检测是否易受攻击 24:58 - 如果您运行 K8s 或容器该怎么办 27:54 - 检查 Sudo 版本 28:30 - 修补 WSL 30:17 - 修补 Ubuntu 32:09 - 在哪里可以获得 exploit.c? 33:59 - 修补 Ubuntu(第 2 部分) 38:10 - 修补 WSL(第 2 部分) 46:35 - GitHub 搜索结果 47:28 - 修补 WSL(第 3 部分)
我每周三太平洋时间中午 12 点在 Twitch 上直播,周六/周日上午 10 点也有直播,或者您可以通过订阅我的 YouTube 频道观看精简版。
在社交平台上与我保持联系,获取安全和软件开发新闻。