Linux 曝出 Sudo 提权漏洞 受限用户亦可运行 root 命令
作为 Linux 中最常使用的重要实用程序之一,Sudo 几乎安装在每一款 UNIX 和 Linux 发行版上,以便用户调用和实施核心命令。然而近期曝出的一个提权漏洞,却直指 sudo 的一个安全策略隐患 —— 即便配置中明确不允许 root 用户访问,该漏洞仍可允许恶意用户或程序,在目标 Linux 系统上以 root 用户身份执行任意命令。
作为 Linux 中最常使用的重要实用程序之一,Sudo 几乎安装在每一款 UNIX 和 Linux 发行版上,以便用户调用和实施核心命令。然而近期曝出的一个提权漏洞,却直指 sudo 的一个安全策略隐患 —— 即便配置中明确不允许 root 用户访问,该漏洞仍可允许恶意用户或程序,在目标 Linux 系统上以 root 用户身份执行任意命令。
据悉,Sudo 特指“超级用户”。作为一个系统命令,其允许用户以特殊权限来运行程序或命令,而无需切换使用环境(通常以 root 用户身份运行命令)。
默认情况下,在大多数 Linux 发行版中(如屏幕快照所示),/ etc / sudoers 的 RunAs 规范文件中的 ALL 关键字,允许 admin 或 sudo 分组中的所有用户,以系统上任何有效用户的身份运行任何命令。
然而由于特权分离是 Linux 中最基本的安全范例之一,因此管理员可以配置 sudoers 文件,来定义哪些用户可以运行哪些命令。
这样一来,基板限制了用户以 root 身份运行特定或任何命令,该漏洞也可允许用户绕过此安全策略,并完全控制系统。
Sudo 开发者称: “只要 Runas 规范明确禁止 root 访问、首先列出 ALL 关键字,具有足够 sudo 权限的用户就可以使用它来以 root 身份运行命令。”
据悉,该漏洞由苹果信息安全部门的 Joe Vennix 追踪发现(CVE-2019-14287)。且想要利用这个 bug,只需 Sudo User ID -1 或 4294967295 。
这是因为将用户 ID 转换为用户名的函数,会将 -1(或无效等效的 4294967295)误认为 0,而这正好是 root 用户 User ID 。
此外,由于通过 -u 选项指定的 User ID 在密码数据库中不存在,因此不会运行任何 PAM 会话模块。
综上所述,该漏洞影响最新版本 1.8.28 之前的所有 Sudo 版本。庆幸的是,几个小时前,各大 Linux 发行版都已经在向用户推送新版本了。
评论18次
好多人都说试了不行,xi望能说明详情的时候注明环境是怎样的
直接成僵尸了。。。
sudo su passwd 无工具提权18式
很难复现。。但是可以作为一种方法。万一遇到了呢。。。
主要是这种漏洞,必须环境一样,但是实战中根本不会有这样的环境啊
还得在配置文件上给予普通用户sudo权限,普通用户没权限改配置文件,也只能当个洞
现在已经复现不成功了,kali 5.2内核是这样
这个感觉影响不是太广泛吧,就是漏洞危害这一块
这种场景感觉会比较少,利用环境受限。
还得在配置文件上给予普通用户sudo权限,普通用户没权限改配置文件,也只能当个洞
这有啥子用啊 就是说sudoer文件里必须要先有那个用户?
先要禁止用户有sudo 所以在sudoers文件里有人写成这样,可以成功。
受到一定的限制,不好用。
前提得存在!root配置,不然没啥用,鸡肋
用是可以用,不过比较鸡肋。可以当一个后门来看
刚刚在vm里试了一下 好像不太行哇
一般用都是sudo切换使用吧,好像真没啥用。
试了下好像没啥用
这有啥子用啊 就是说sudoer文件里必须要先有那个用户?