SUID提权教程

本文介绍了Linux中的SUID权限概念,展示了如何设置SUID以及列举了一些常见的具有SUID权限的二进制文件。着重讲解了如何通过find、nmap、bash等命令进行root提权,并对比了/bin/bash和/bin/sh的区别。
摘要由CSDN通过智能技术生成

一、SUID是什么?

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

二、如何设置SUID权限?

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

三、已知的具有SUID权限的二进制可执行文件

nmap
vim
find
bash
more
less
awk
cp

四、查找具有root权限的SUID的文件

1.find命令提权

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.nmap命令提权

在这里插入图片描述
在这里插入图片描述

3.more命令提权

在这里插入图片描述
在这里插入图片描述

4.less命令提权

在这里插入图片描述
在这里插入图片描述

5.bash命令提权

  • 通过使用"bash -p"命令,您将以特权身份运行Bash解释器,并且可以执行需要特权访问权限的操作。这包括修改系统文件、安装软件包或执行其他可能需要管理员权限的任务。
  • 实际上,“-p"是一个通用的Bash参数,代表开启"privileged mode(特权模式)”,这意味着以root用户或具有管理员权限的用户身份来执行Bash命令

在这里插入图片描述

6.vim命令提权

在这里插入图片描述

  • :!/bin/sh
  • :!/bin/bash 两个都试试
  • 输入vim或者vim.tiny
    在这里插入图片描述

7.awk命令提权

在这里插入图片描述

8.cp命令提权

在这里插入图片描述
在这里插入图片描述

五、/bin/bash和 /bin/sh的区别

在大多数Linux系统中,/bin/bash和 /bin/sh是两个不同的可执行文件,分别表示Bash和Shell。它们之间的区别在于以下几点:


解释器:/bin/bash是Bourne Again Shell(Bash)的路径,而 /bin/sh是系统默认的Shell解释器的路径(可能是Bash,也可能是其他Shell)。

功能和语法:Bash是Shell的一种变体,它扩展了传统的Shell功能,并提供了更多的命令和语法。因此,Bash相对于其他Shell来说更加强大、灵活,并支持更多的功能。

兼容性:由于Bash在功能和语法上更强大,一些脚本可能会使用Bash特定的语法或功能。然而,/bin/sh通常被链接到一个较小,更原始的Shell,以确保脚本的兼容性。

符号链接:在一些Linux系统中,/bin/sh实际上是一个指向 /bin/bash的符号链接。这意味着 /bin/sh实际上是Bash的另一个名称,它们在功能上没有区别。在这种情况下,/bin/sh和 /bin/bash是等价的。
总的来说,/bin/bash是Bash解释器的路径,功能更强大,而 /bin/sh是系统默认的Shell解释器的路径,可能是Bash或其他Shell,并且在功能和语法上可能更有限。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Star abuse

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值