SUID提权

目录

 

一.原理

二.提权步骤

1.信息收集

(1)用户权限收集(whoami&id)

(2)SUID权限文件收集(find / -user root -perm -4000 -exec ls -ldb {} \;)

2.提权

(1)目录切换(cd /tmp)

(2)任意文件创建(touch 文件名)

(3)特定SUID提权(find/nmap/bash等 文件名 -exec whoami \;)

三.总结

一.原理

SUID是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有属主的权限,若是对一些特殊命令设置了SUID,那么将会有被提权的风险,常用的SUID提权命令有nmap、vim、find、bash、more、less、nano和cp等。

当s出现在文件所有者的x权限时,被称为“Set UID”,简称为SUID。SUID对一个文件的限制与功能包括以下几点:

(1)SUID仅对二进制有效

(2)执行者对于该程序需要有x的可执行权限

(3)本权限仅在程序的执行过程中有效

(4)执行者具有该程序所有者(user)的权限SUID按照八进制为4,SGID为2,SBIT为1,在普通权限前一位,比如4777,其实就是rws-rwx-rwx,具有SUID权限的文件所属者X变为S。

SUID提权原理总结:

查看当前具有suid权限的用户,再利用具有suid权限用户的命令去执行我们想要执行的命令。
简而言之就是查找具有特定suid权限的参数,再利用其参数进行提权命令调用。

二.提权步骤

1.信息收集

(1)用户权限收集(whoami&id)

执行whoami、id等命令,确定用户mark为普通用户,其UID为1000(UID大于499小于65535为普通用户)

38be5e3edf4e426ead1219a59a4a884d.png

(2)SUID权限文件收集(find / -user root -perm -4000 -exec ls -ldb {} \;)

查找具有SUID权限的文件。

执行命令find / -user root -perm -4000 -exec ls -ldb {} \;,利用find找到有SUID权限(SUID按8进制为4)的文件并使用ls命令列出

b34f04ccfec34ec1b7fb436e3a942219.png

 命令解析

exec解释

-exec参数后面跟的是command命令,它的终止是以;为结束标志的,所以这句命令后面的分号是不可缺少的,考虑到各个系统中分号会有不同的意义,所以前面加反斜杠。

{}花括号代表前面find查找出来的文件名。使用find时,只要把想要的操作写在一个文件里,就可以用exec来配合find查找,很方便。在有些操作系统中只允许-exec选项执行诸如ls或ls -l这样的命令,如果验证一下find命令,会发现该命令只输出从当前路径起的相对路径及文件名。

2.提权

(1)目录切换(cd /tmp)

find文件所属者和所属组都为root用户,使用find命令可以执行其它的系统命令,因此可以使用find命令运行whoami查看当前用户。
执行命令cd  /tmp,切换目录。

(2)任意文件创建(touch 文件名)

创建任意文件,这里执行命令touch1,创建文件1。

(3)特定SUID提权(find/nmap/bash等 文件名 -exec whoami \;)

执行命令find 1 -exec whoami \;,利用find命令查找名为1的文件,执行whoami命令,如图所示,当前用户为root,从而提升权限成功

807afa44ff6f42499bc31d328eb1f0a6.png

三.总结

1.特定SUID参数利用,工具/手工探测后看参数是否被赋予SUID权限
Nmap,Vim,find,Bash,More,Less,Nano,cp等
2.查找到后,在其tmp目录下用touch创建用户后再用特定suid参数去执行提权命令

 

  • 8
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值