写点什么

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:535301
用户头像
万佳 前InfoQ编辑

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

关注

评论

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

西安java开发培训学习哪家机构好

小谷哥

前端安全沙箱怎样解决开源的安全问题

Geek_99967b

小程序

9个计算机的“网络层”知识点

华为云开发者联盟

开发 华为云 网络层 企业号十月 PK 榜

交换机:广播风暴产生原因与解决方法、STP生成树协议 ,根桥(根交换机)、备份根桥、非根交换机、根端口、指定端口、非根非指定端口、桥ID

Python-派大星

10月月更

eNSP常用命令 华为模拟器eNSP常用命令

Python-派大星

10月月更

算法 | 使用栈计算表达式

甜点cc

Go 算法 10月月更

开源时代下,怎样强化自己的应用安全

Geek_99967b

小程序

SHAREit X Databend | 跨多云 Data Mesh 大数据平台: Why, What and How

Databend

数十倍的数据量增长,传统 OLAP 还能应对吗?

Kyligence

大数据 金融行业 OLAP技术

一份阿里内部GC面试手册,仅一周Github获赞96.9K

程序知音

Java JVM Java虚拟机 java架构 后端技术

ClickHouse 冷热分离存储在得物的实践

得物技术

数据库 Clickhouse 存储 日志平台 企业号十月 PK 榜

超级App成为Gartner预测的战略技术,软件降本增效是否能进一步提速?

Speedoooo

小程序 Gartner预测 超级app 小程序化 超级应用

盘点 | 主流跨平台软件开发技术方案

Speedoooo

小程序 APP开发 跨端开发 小程序容器 小程序化

欢迎光临2022年的汽车穿梭餐厅

澳鹏Appen

人工智能 语音识别 数据标注 语音标注 语音数据

SENSORO 付刘伟:图分析在城市治理服务的应用与落地

SENSORO

智慧城市 图数据库 图数据 数据服务

武汉前端编程培训的就业前景怎么样

小谷哥

教你如何解决T+0的问题

华为云开发者联盟

大数据 华为云 企业号十月 PK 榜

小间距LED显示屏视频拼接器的技术要求

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

AMD x 稀土掘金 1024码上掘金编程挑战赛来了!

猿始人

1024程序员节

极客时间架构训练营模块三作业

李晨

前端技术培训需要什么条件

小谷哥

Linux---Linux中Ubuntu镜像之下搭建FTP服务

木偶

Linux ubuntu ftp 10月月更

优秀开源云原生工具推荐——系列3

HummerCloud

开源 云原生 开源云工具 10月月更

ClickHouse 和 Elasticsearch 压测对比,谁才是yyds?

程序知音

手把手教你成为荣耀开发者:帐号管理这样做

荣耀开发者服务平台

开发者 手机 安卓 荣耀 honor

用昇腾AI护航“井下安全”

华为云开发者联盟

人工智能 安全 华为云 企业号十月 PK 榜

10分钟完成模型开发!合合信息智能文字识别服务平台亮相1024程序员节

合合技术团队

人工智能 文档 识别 摩尔纹

嵌入式 Linux 入门(五、Shell 脚本编程上:认识 Shell 脚本)

矜辰所致

Linux Shell shell脚本编程 10月月更

VLAN原理和配置,交换机创建vlan的多种方法、三种接口模式的作用和配置方法、Access、Trunk、Hybrid接口的特性以及配置方法和命令

Python-派大星

10月月更

大数据培训机构该怎么来选择?

小谷哥

北京大数据学习培训机构哪个好

小谷哥

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