一、原理:

设置了SUID的文件可以让调用者在调用该文件时以文件拥有者的身份运行该文件,所以利用SUID提权的原理就是运行拥有者为root并设置了SUID的文件,那么我们运行该文件的时候就得获得root用户的身份了,如果此时可以输入命令,就可以打开一个用户身份为root的shell。

二、已知可用来提权的linux文件:

nmap
vim/vi
find
bash
more
less
nano
cp

三、提权过程

环境:DC-1靶机,基于Debian7.11,已经拥有一个可以用ssh连接的低权限账户flag4,要提升至root权限。

示例:find提权

1. 查看当前用户权限

通过读取/etc/passwd文件查看当前用户权限

cat /etc/passwd

返回如下
可以看到用户flag4的UID为1001,为普通用户。

2. 查找设置了SUID的文件

find / -perm -u=s -type f 2>/dev/null    #在根目录下查找设置所有设置了SUID的文件

参数解释:
/ :查找路径为根目录
-perm -u=s : 要查找的文件权限设置了SUID
-type f:要查找的东西类型为文件
2>/dev/null :将报错信息全部丢弃

结果中列出所有设置了SUID的文件,可以看到/usr/bin/find

3. 使用/usr/bin/find提权
①先查看一下/usr/bin/find的权限

ls -l /usr/bin/find    #查看find的权限、属主等信息

返回结果中显示/usr/bin/find的拥有者为root,拥有者对该文件的权限为rws,s 表示该文件设置了SUID。满足拥有者为root并设置了suid的条件,可用来提权至root。

②利用find执行命令whoami查看当前身份

find getflag -exec whoami \;   #在当前目录查找getflag,然后执行命令whoami。

参数解释:
getflag是当前目录下存在的文件,如不存在可以先创建一个,也可以find其他文件夹的文件,但find的文件必须存在,否则命令无法执行。

返回结果中显示当前身份为root

PS:这一步为非必须,只是习惯性看看命令能否正常执行

③使用find打开一个shell

find getflag -exec "/bin/sh" \;

然后whoami查看当前shell用户,为root

PS:测试的时候发现如果执行的是/bin/bash,发现用户还是原来的flag4,只有执行/bin/sh,得到的才是root。。。不知为何

参考:
find命令用法大全
Shell中 2>/dev/null解析
Linux下用SUID提权_谢公子的博客

Linux中suid提权相关推荐

  1. Linux下SUID提权方法

    目录 SUID 1. 利用find文件提权 vulnhub靶机DC-1渗透-SUID提权 SUID SUID可以让调用者以文件拥有者的身份运行该文件,所以我们利用SUID提权的思路就是运行root用户 ...

  2. linux系统suid提权

    什么是suid ​suid(set uid)是linux中的一种特殊权限,suid可以让调用者以文件拥有者身份运行该文件,所以利用suid提权的核心就是运行root用户所拥有的suid的文件,那么运行 ...

  3. Linux中的提权操作

    情景使用:当我们使用普通用户登录到Linux服务器中在终端输入一些命令时可能会显示"You need to be root to perform this command",这个时 ...

  4. linux suid提权原理,linux关于suid提权笔记

    suid全称是Set owner User ID up on execution.这是Linux给可执行文件的一个属性,上述情况下,普通用户之所以也可以使用ping命令,原因就在我们给ping这个可执 ...

  5. 《WEB安全渗透测试》(27)Linux系统提权-SUID提权

    1.SUID提权介绍 提权,网络术语,指的是提高自己在服务器中的权限,如从普通用户提高到root用户,当网站被入侵后,攻击者会千方百计的去提高自己的权限,毕竟普通用户能干的事情太有限了. linux中 ...

  6. Linux提权之Suid提权 小部分归纳

    Linux提权之Suid提权 SUID是linux的一种权限机制 具有这种权限的文件会在其执行的时候,使调用者暂时获得该文件拥有者的权限.如果拥有SUID权限,那么就可以利用系统中的二进制文件和工具进 ...

  7. linux suid提权

    SUID是赋予文件的一种权限,它会出现在文件拥有者权限的执行位上,具有这种权限的文件会在其执行 时,使调用者暂时获得该文件拥有者的权限.也就是如果ROOT用户给某个可执行文件加了S权限,那么 该执行程 ...

  8. linux——SUID提权

    一.Linux之特殊权限--SUID Linux的文件操作除了普通的读 (r).写(w).执行(x)权限外,还有一些特殊的权限.但都可以使用chmod和chown命令来设置.他们分别是SUID.SGI ...

  9. suid提权(linux)

    suid提权 suid(设置用户的id)是Linux中的一种特殊权限,当运行具有suid权限的二进制文件的时候,使得调用者暂时获得该文件拥有者的权限(比如a文件拥有者是root,且被赋予了s权限,当我 ...

最新文章

  1. Github热榜:2021年33篇最酷AI论文综述!多位华人作者入选
  2. 中消协上午发布报告 跨境电商假货等仍旧是毛病
  3. 【机器学习基础】数学推导+纯Python实现机器学习算法4:决策树之ID3算法
  4. python 并发执行命令_python: 多线程实现的两种方式及让多条命令并发执行
  5. 信息系统工程监理服务及营销策略
  6. Vscode ssh远程连接失败解决办法
  7. 苹果亮度自动调节怎么关闭_找不到“自动亮度调节”?这两个技巧帮你快速更改设置...
  8. 大三计算机写学术论文,学院大三本科生在高水平国际会议发表学术论文
  9. 红帽子linux转中文后乱码,安装redhat时中文显示乱码(小方框)解决方法
  10. Dadroit JSON Viewer 查看json文件的利器
  11. [Git[ 解决 git branch -M main error: refname refs/heads/master not found
  12. 如何实现电脑远程开机
  13. [转]电子产品将标环保使用期限
  14. lda主题模型的可视化_Gensim LDA主题模型实验
  15. 解决:Godaddy域名解析很慢,网站经常打不开或者解析失败
  16. 【ROS】2.2 信息、类和服务器
  17. [你必须知道的.NET] 开篇有益-------这是一个系列,文章中有后面章节的连接
  18. 3D空间中射线与三角形的交叉检测算法【转】
  19. .net6API使用SignalR+vue3聊天+WPF聊天
  20. Scrapy框架下载一个意大利网站所有植物图片并重命名归科

热门文章

  1. 开源巨献:Google最热门的40款开源项目
  2. 空腹不能吃的东西,可不仅仅是香蕉和柿子
  3. gym:Problem B Bless You Autocorrect!(字典树+最短路)
  4. 《C语言程序设计》(谭浩强第五版) 第2章 算法——程序的灵魂
  5. linux 串口读写 termios说明
  6. 当前不会命中断点还未为文档加载任何符号——问题探究
  7. 电脑广告弹窗怎么解决?
  8. 什么是promise,promise的使用及实现
  9. python isinstance得用法记录
  10. 电信短信网关ISAG-SMS二次开发