标签:系统命令 pass root用户 mamicode passwd 服务 inux 获得 编译
sudo,也就是以超级管理员身份运行(superuser do)的意思。sudo 是 Linux 中最常使用的重要实用程序之一,它功能十分强大,几乎安装在每一款基于 UNIX 或 Linux 的操作系统上,也是这些操作系统的核心命令。作为一个系统命令,普通用户可通过它以特殊权限来运行程序或命令(通常以 root 用户身份运行命令),而无需切换使用环境。
此漏洞可以使受限制的用户运行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
标签:系统命令 pass root用户 mamicode passwd 服务 inux 获得 编译
原文地址:https://www.cnblogs.com/BOHB-yunying/p/11691250.html