linux CVE-2019-14287 Sudo提权漏洞

CVE-2019-14287

sudo介绍

sudo,也就是以超级管理员身份运行(superuser do)的意思。sudo 是 Linux 中最常使用的重要实用程序之一,它功能十分强大,几乎安装在每一款基于 UNIX 或 Linux 的操作系统上,也是这些操作系统的核心命令。作为一个系统命令,普通用户可通过它以特殊权限来运行程序或命令(通常以 root 用户身份运行命令),而无需切换使用环境。

  • § sudo能够限制用户只在某台主机上运行某些命令。
  • § sudo提供了丰富的日志,详细地记录了每个用户干了什么。它能够将日志传到中心主机或者日志服务器。
  • § sudo使用时间戳文件来执行类似的“检票”系统。当用户调用sudo并且输入它的密码时,用户获得了一张存活期为5分钟的票(这个值可以在编译的时候改变)。
  • § sudo的配置文件是sudoers文件,它允许系统管理员集中的管理用户的使用权限和使用的主机。它所存放的位置默认是在/etc/sudoers,属性必须为0440。

漏洞介绍及其利用

此漏洞可以使受限制的用户运行root命令,1.8.28之前的sudo版本均会受到影响,此漏洞的利用需要使用户具有sudo的权限。

漏洞影响版本:1.8.28之前

利用此sudo漏洞的前提是规定安全策略设置如下:

yunying = (ALL, !root) /bin/bash

意思为:规定yunying用户可以以除了root以外的用户身份去执行//bin/bash命令

据悉,该漏洞由苹果信息安全部门的 Joe Vennix 追踪发现(漏洞的 CVE ID 为 CVE-2019-14287 )。如果想要利用这个漏洞,只需按以下的方式运行即可:

sudo -u#-1 id -u

或者

sudo -u#4294967295 id -u

之所以会产生这个漏洞,是因为将用户 ID 转换为用户名的函数会将 -1(或无效等效的 4294967295)误认为是 0,而这正好是 root 用户 User ID 。此外,由于通过 -u 选项指定的 User ID 在密码数据库中不存在,因此不会运行任何 PAM 会话模块。

漏洞复现

靶机:centos7

sudo版本:

创建一个普通用户yunying

useradd yunying   // useradd -d /usr/yunying -m yunying  选项可以创建一个用户目录passwd  yunying

赋予root用户写的权限,编辑/etc/sudoers,增加yunying用户,设置前提权限

正常切换至yunying用户执行bash命令

利用漏洞以root用户执行bash命令

修复建议

升级到 sudo 1.8.28

检索/etc/sudoers 是否存在 ALL 关键词的复合限制逻辑

centos升级命令: yum update sudo

原文地址:https://www.cnblogs.com/BOHB-yunying/p/11691250.html

时间: 2024-11-02 02:22:28

linux CVE-2019-14287 Sudo提权漏洞的相关文章

2019-10-16,sudo提权漏洞(CVE-2019-14287)实现

sudo是linux系统命令,让普通账号以root身份执行某些命令,比如,安装软件,查看某些配置文件,关机,重启等,如果普通用户需要使用sudo需要修改配置文件,/etc/sudoers,将sudo使用权限赋予该用户 sudo提权漏洞,是一个安全策略绕过问题,去执行某些敏感的命令,cve编号是CVE-2019-14287,影响版本是 sudo版本<1.8.28 漏洞复现1,查看sudo版本,命令sudo -V 2,修改配置文件,vim /etc/sudoers, root ALL(ALL:ALL

10.16Maccms后门分析、Sudo提权漏洞(CVE-2019-14287)复现

Maccms后门分析 maccms网站基于php+mysql的系统,易用性.功能良好等优点,用途范围广 打开源码,extend\Qcloud\Sms\Sms.php.extend\upyun\src\Upyun\Api\Format.php是两个后门(Sms.php和Format.php是后门木马 二者代码相同) <?php error_reporting(E_ERROR);//报错 @ini_set('display_errors','Off'); @ini_set('max_executio

sudo 提权漏洞(CVE-2019-14287)复现 (10.16 第二十二天)

sudo是Linux系统命令,让普通账号以root身份去执行某些命令,比,安装软件.查看某些配置文件.关机.重启等操作,如果普通账号需要使用sudo需要修改配置文件/etc/sudoers,将sudo使用权赋予该账号 sudo提权漏洞是一个安全策略绕过问题,去执行某些敏感的命令,CVE编号是CVE-2019-14287,影响的版本是:<1.8.28 漏洞复现过程 1.查看版本:sudo -V 2.修改配置文件:vim/etc/sudoers在root ALL=(ALL:ALL)ALL 下面添加一

[漏洞复现]CVE-2019-14287 sudo提权漏洞

漏洞描述 2019年10月14日,CVE官方发布了CVE-2019-14287的漏洞预警.通过特定payload,用户可提升至root权限. 利用前提 sudo -v < 1.8.28 知道当前用户的密码 当前用户存在于sudo权限列表 漏洞复现 [email protected]:~$ id uid=1000(mark) gid=1000(mark) 组=1000(mark),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),

Sudo提权漏洞复现

Sudo是linux的系统命令,让普通账号以root方式执行命令 正常来说如果普通用户需要用sudo,需要修改配置文件/etc/sudoers,将sudo使用权赋予该用户 而这个漏洞使得普通用户也可以绕过安全策略,执行敏感命令 漏洞影响的版本是<1.8.28 实验环境:kali 漏洞复现过程 1. 查看sudo版本 Sudo –V 2. 修改配置文件:vim/etc/sudoers 在root(ALL:ALL)ALL添加一行 Test ALL=(ALL,!root)ALL 第一个ALL表示用户可

CVE-2019-13272:Linux本地内核提权漏洞复现

0x00 简介 2019年07月20日,Linux正式修复了一个本地内核提权漏洞.通过此漏洞,攻击者可将普通权限用户提升为Root权限. 0x01 漏洞概述 当调用PTRACE_TRACEME时,ptrace_link函数将获得对父进程凭据的RCU引用,然后将该指针指向get_cred函数.但是,对象struct cred的生存周期规则不允许无条件地将RCU引用转换为稳定引用. PTRACE_TRACEME获取父进程的凭证,使其能够像父进程一样执行父进程能够执行的各种操作.如果恶意低权限子进程使

脏牛Linux本地提权漏洞复现(CVE-2016-5195)

学习该漏洞的原因: 总是看到圈子里一位老哥发文章使用这个漏洞来提权,进过测试发现centos比较难提取,而Ubuntu是比较好提权的. 漏洞范围: Linux kernel >= 2.6.22(2007年发行,到2016年10月18日才修复) 危害: 低权限用户利用该漏洞可以在众多Linux系统上实现本地提权 简要分析: 该漏洞具体为,get_user_page内核函数在处理Copy-on-Write(以下使用COW表示)的过程中,可能产出竞态条件造成COW过程被破坏,导致出现写数据到进程地址空

Linux/Ubuntu sudo提权不输入密码

前言 在写自动化打包脚本的过程中,zip打包时需要用到sudo权限,但是每次输入密码太过麻烦,因此这里介绍一下sudo提权不需要输入密码的方法. 修改/etc/sudoers 假设我们当前的用户是"wzy",则需要在/etc/sudoers文件中增加如下语句: # No Password for wzy wzy ALL=(ALL)NOPASSWD:ALL google了一些答案,很多竟然直接是对admin组进行NOPASSWD设定,这样确实太危险了,我认为更应该针对特殊需求的用户单独设

基于RedHat发行的Apache Tomcat本地提权漏洞

描述 Tomcat最近总想搞一些大新闻,一个月都没到,Tomcat又爆出漏洞.2016年10月11日,网上爆出Tomcat本地提权漏洞,漏洞编号为CVE-2016-5425.此次受到影响的主要是基于RedHat发行版Apache Tomcat,包括CentOS,RedHat,OracleLinux,Fedora等等.主要原因是普通Tomcat用户拥有权限来对/usr/lib/tmpfiles.d/tomcat.conf这个配置文件进行读写,那么该用户组成员或者拥有普通Tomcat权限的WebSh