阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

Linux 用户注意了:Linux Sudo 被曝漏洞

  • 2019-10-16
  • 本文字数:1125 字

    阅读完需:约 4 分钟

Linux用户注意了:Linux Sudo被曝漏洞

作为安装在几乎所有基于 UNIX 和 Linux 操作系统上的核心命令,Sudo 是最重要、最强大且最常用的实用程序之一。



近日,安全专家发现 Sudo 中出现一个新漏洞,该漏洞是 sudo 安全策略绕过问题,可导致恶意用户或程序在目标 Linux 系统上以 root 身份执行任意命令。


Sudo 的全称是“superuserdo”,它是 Linux 系统管理指令,允许用户在不需要切换环境的前提下以其它用户的权限运行应用程序或命令,通常是以 root 用户身份运行命令,以减少 root 用户的登录和管理时间,同时提高安全性。


幸运的是,该漏洞仅在非标准配置中有效,并且大多数 Linux 服务不受影响。


据悉,这个漏洞的编号是 CVE-2019-14287 ,它是由苹果信息安全部门的研究员 Joe Vennix 发现并分析的 。


在获得此漏洞之前,重要的是要掌握一些有关 sudo 命令如何工作以及如何进行配置的背景信息。


Linux操作系统上执行命令时,非特权用户可以使用 sudo(超级用户身份)命令以 root 身份执行命令,只要它们已被授予权限或知道 root 用户的密码即可。



sudo 命令还可以配置为允许用户通过向/etc/sudoers 配置文件添加特殊命令来以其他用户身份运行命令。


例如,以下命令允许用户’test’以 root 身份以外的任何用户身份运行/usr/bin/vim 和 usr/bin/id 命令。


test ALL = (ALL, !root) /usr/bin/vimtest ALL = (ALL, !root) /usr/bin/id
复制代码


为了使’test’用户执行上述命令之一,他们将使用带有-u 参数的 sudo 命令来指定运行用户。例如,以下命令将以 vibleing-test 用户身份启动 vim。


sudo -u bleeping-test vim 
复制代码


在 Linux 中创建用户时,将为每个用户分配一个 UID。如下所示,用户’test’的 UID 为 1001,'bleeping-test’用户的 UID 为 1002。



启动 sudo 命令时,用户可以使用这些 UID 代替用户名。例如,下面的命令将再次以“测试”的形式启动 VIM,但这一次是通过提供用户的 UID 来启动的。


sudo -u#1002 vim
复制代码

Sudo 漏洞

苹果安全研究员 Joe Vennix 发现一个错误,该错误允许用户通过在 sudo 命令中使用-1 或 4294967295 UID 以 root 身份启动允许的 sudo 命令。



例如,即使在/etc/sudoers 文件中明确拒绝了‘test’用户,以下命令也可以利用该错误以 root 身份启动/usr/bin/id 用户。


sudo -u#-1 id
复制代码


下面也说明了如何将这个错误与/usr/bin/id 命令一起使用以获取 root 特权。



尽管该错误功能强大,但重要的是要记住,只有通过 sudoers 配置文件为用户提供了对命令的访问权限,它才能起作用。如果不是这样,并且大多数 Linux 发行版默认情况下都没有,那么此错误将无效。


据悉,CVE-2019-14287 漏洞影响 1.8.28 之前的 Sudo 版本。


强烈建议用户尽快将 sudo 软件包更新为最新版本!


参考文章:


Linux SUDO Bug Lets You Run Commands as Root, Most Installs Unaffected


2019-10-16 10:535071
用户头像
万佳 前InfoQ编辑

发布了 677 篇内容, 共 335.5 次阅读, 收获喜欢 1795 次。

关注

评论

发布
暂无评论
发现更多内容

给行动找个理由

Neco.W

行动派 决策

这也太拧巴了吧?结局意想不到

非著名程序员

程序员 程序人生 提升认知

架构师训练营第2周作业

Season

极客大学架构师训练营

第二次作业

朱月俊

做一个有原则的码农可好?

Dawn

极客大学架构师训练营

架构师训练营二期作业

老姜

为什么坐车会晕车呢

石云升

生活,随想 日常思考 晕车

数据库周刊28│开发者最喜爱的数据库是什么?阿里云脱口秀聊程序员转型;MySQL update误操作;PG流复制踩坑;PG异机归档;MySQL架构选型;Oracle技能表;Oracle文件损坏处理……

墨天轮

数据库

ARTS打卡Week 04

teoking

ios LeetCode ARTS 打卡计划

依赖倒置原则

极客李

哪些框架是遵循依赖倒置原则的?

朱月俊

小师妹学JVM之:GC的垃圾回收算法

程序那些事

JVM 小师妹 JIT GC 签约计划第二季

品软件架构原则模式之美

老姜

架构师训练营-第二章-依赖倒置原则&接口隔离原则

而立

极客大学架构师训练营

0613总结

W_T

架构师训练营第二周

小树林

基本的面向对象原则(Basic OO principles)

旭东(Frank)

编程思维 极客大学架构师训练营

产品视角看推荐算法

峰池

人工智能 算法 产品经理 推荐算法

千万不能让程序员给娃娃取名字

码农神说

程序员

“麻烦”的处理流程

zhoo299

随笔杂谈

618你的系统顶住了么?系统发生重大灾难难道只能“删库跑路”?

punkboy

架构师训练营第二章总结

叮叮董董

什么是依赖倒置原则,为什么有时候依赖倒置原则又被称为好莱坞原则?

朱月俊

第二次作业总结

朱月俊

依赖倒置和案例

王锟

老大吩咐的可重入分布式锁,终于完美的实现了!!!

楼下小黑哥

Java redis 分布式锁

架构师训练营第2周学习总结

Season

极客大学架构师训练营

架构师训练营 - 第二周架构师实现自己架构的主要手段

zcj

极客大学架构师训练营

用接口隔离原则优化 Cache 类的设计

朱月俊

架构师训练营第二章课后作业

叮叮董董

一个包子铺看懂 I/O 模型演变

小眼睛聊技术

Java 程序员 架构 后端 nio

Linux用户注意了:Linux Sudo被曝漏洞_安全_万佳_InfoQ精选文章