天呐,经常用的sudo居然有漏洞?
这两天看到一个新闻让我很是震惊,linux上最常用的命令之一, sudo 命令居然被爆出有安全漏洞。作为一个程序员,可以说几乎天天和这个命令打交道,哪能想到这么成熟的命令工具居然隐藏着安全漏洞。
sudo介绍
大部分开发运维对这个命令都非常熟悉,不过考虑到有效读者不了解我还是简单介绍下。
sudo 指“超级用户”。作为一个系统命令,其允许其它非 root 用户以特殊权限来运行程序或命令,而无需切换使用环境。举个例子:
我下面已一个普通用户在 /usr/local/ 目录下新建一个目录,直接运行会报没有权限的错误,
user1@user1:/usr/local$ mkdir test
mkdir: cannot create directory ‘test’: Permission denied
必须要这样才可以,
user1@user1:/usr/local$ sudo mkdir test
user1@user1:/usr/local$ ls
bin etc games include lib man sbin share src test
一个普通用户要想使用sudo,必须有管理员(root)配置 sudoers 文件,对用户的权限进行定义。类似下面这样:
# User privilege specification
user2 ALL=(ALL:ALL) ALL
上述命令中:
- user2 表示用户名
- 第一个 ALL 指示允许从任何终端、机器访问 sudo
- 第二个 (ALL:ALL) 指示 sudo 命令被允许以任何用户身份执行,后面那个ALL是用户所在的群组
- 第三个 ALL 表示所有命令都可以作为 root 执行
如果没有加这个配置,执行的时候会报如下的错误:
user2@pony:/home$ sudo mkdir test2
[sudo] password for user2:
user2 is not in the sudoers file. This incident will be reported.
如何利用漏洞
我根据下面这篇文章,进行问题复现,
https://www.sudo.ws/alerts/minus_1_uid.html
我使用的linux版本是 Ubuntu 18.04.3 LTS 。
首先我配置用户 user2 的权限,
# User privilege specification
user2 ALL=(ALL,!root) /bin/bash
这个配置的意思是,user2用户可以用任何用户(除了root)执行 /bin/bash 命令。
然后我试着执行,
user2@pony:~$ sudo -u#-1 /bin/bash
sudo: unknown user: #-1
sudo: unable to initialize policy plugin
什么鬼,好像没有啥问题啊,直接报错了,并没有切换到 root 用户,再试着执行,
user2@pony:~$ sudo -u#-1 id -u
sudo: unknown user: #-1
sudo: unable to initialize policy plugin
也没有任何问题啊,那这个漏洞究竟该怎么复现呢??
按照上面文章的说法,之所以会产生这个漏洞,是因为将用户 ID 转换为用户名的函数会将 -1(或无效等效的 4294967295)误认为是 0,而这正好是 root 的用户 ID 。
但是,我实际操作发现并复现到这个漏洞。感觉应该是我哪里配置的不对?
总结
我也不知道为啥我复现不了问题。请大神执教!
天呐,经常用的sudo居然有漏洞?相关推荐
- linux sudo权限_Linux Sudo 被曝漏洞,可导致用户以 root 权限运行命令
聚焦源代码安全,网罗国内外最新资讯!编译:奇安信代码卫士团队 Linux 用户要注意了!几乎所有基于 UNIX 和 Linux 的操作系统上安装的核心命令,也是最重要.最强大也最常用的工具 Sudo中 ...
- sudoers 用户权限配置_Linux 用户注意!针对Sudo 被曝漏洞,厂商已发布最新版本...
联系.投稿.爆料,请加有料君微信:clouder007 作为 Linux 中最常使用的重要实用程序之一,Sudo 几乎安装在每一款 UNIX 和 Linux 发行版上,以便用户调用和实施核心命令.然而 ...
- 【笔记】web安全基础
web安全基础 前言: 自己总结的web安全基础知识,部分未写完,以后有时间会完善,希望能帮到需要的人. 渗透测试 一.概念 渗透测试(penetration testing|pentest)是实 ...
- sketchup 255个su常用插件)_SketchUp领域的知乎,有胆来问!
你知道知乎.豆瓣.果壳-- 但你可能不知道[问吧] 这是一个 SketchUp 领域的知乎 (点击文末"阅读原文"可直接进入[问吧]) 你可以找到关于 SketchUp 的任何话题 ...
- 【转】sudo命令情景分析
文章转自:http://www.cnblogs.com/hazir/p/sudo_command.html Linux 下使用 sudo 命令,可以让普通用户也能执行一些或者全部的 root 命令.本 ...
- Centos服务器常用安装指南
Centos服务器常用安装指南,推荐centos7.x系统 1. 新增oper用户(root下操作) useradd oper # 修改密码:根据提示输入两次密码 passwd oper 2. 将op ...
- 总结了一下Ubuntu常用命令
我特意总结了一下Ubuntu常用命令 sudo apt-get install 软件名 安装软件命令 sudo nautilus 打开文件(有root权限) su root 切换到"root ...
- Sudo bug 可导致非权限 Linux 和 MacOS 用户以根身份运行命令
聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 苹果公司的研究员 Joe Vennix 在 sudo 中再次发现了一个重要漏洞,在某种特定配置下可导致低权限用户或恶意程序以管理员(根) ...
- 升级Linux下的sudo
1.sudo 命令情景分析 介绍 Linux 下使用 sudo 命令,可以让普通用户也能执行一些或者全部的 root 命令.本文就对我们常用到 sudo 操作情景进行简单分析,通过一些例子来了解 su ...
最新文章
- Oracle-ORA-01722 invalid number错误
- 50兆 svg 文件超过_用svg+css3实现支付宝App波浪功能
- 学学python(4):面向对象及类,模块
- python 线型_CCF 202006-1 线性分类器 python
- python-面向对向-实例方法的继承
- java.util.zip.zipexception_Java 压缩zip异常,java.util.zip.ZipException: duplicate entry: 问题...
- ssh进入docker容器_如何通过SSH进入正在运行的容器
- ITK在vs2010下安装、搭建
- Android ViewModel组件详解
- 手把手教你玩转YOLOX--Windows(上)
- 为什么会有 Ajax?
- 手机5g什么时候普及_5g什么时候普及民用
- BSides Noida CTF 2021 web题wowooofreepoint writeup(两道反序列化)
- spring boot 整合 云之讯 demo
- 7-29 删除字符串中的子串
- MP4/MOV/3GP文件的“ftyp”(转)
- 美图android手机刷机教程视频,美图M6刷机教程 美图M6线刷救砖教程
- 加餐2 | 银行与券商
- 数据结构(C语言版第2版)课后习题答案
- 腾讯迁移至阿里云播放器