某师傅造的仿真环境,从GetShell到提权root

admin 2025年4月8日00:05:46评论0 views字数 2019阅读6分43秒阅读模式
原文首发自:先知社区 消失的猪猪
https://xz.aliyun.com/news/17567
0x000 剧情(此章节与原文无关)

    那是一个周五,可爱的小学妹发来了一条信息。她跟我说发现了一个靶场,靶场是一个什么叫州弟学安全的搞的。但是她进了后台不会了,让我帮帮她,然后写一个WP,说给我看黑丝,事成还有别的看:

某师傅造的仿真环境,从GetShell到提权root
某师傅造的仿真环境,从GetShell到提权root
某师傅造的仿真环境,从GetShell到提权root
某师傅造的仿真环境,从GetShell到提权root
0x00 文章背景

    这是一个周五,正好没啥事干,发现群里有条消息,咦,是个靶场来的,看他的介绍来看似乎有点意思。

为了防止涌入太多人我还是码一下,后面大家看到的没打码地址,是我在本地改了host,懒得一直打码了:

某师傅造的仿真环境,从GetShell到提权root

那么那么那么,话不多说直接开干。

某师傅造的仿真环境,从GetShell到提权root
0x01 信息收集

既然是个仿真靶机,而且还会重置,那么八成是个Docker环境,一般扫端口没什么意义的。所以我们直接先扫目录,看是否能获取到一些敏感文件。打开页面如下,有个登录功能:

某师傅造的仿真环境,从GetShell到提权root

不管他,直接先扫描目录。扫描后得到这些内容,我们逐个访问下:

某师傅造的仿真环境,从GetShell到提权root

settings.php与uoload.php在访问后,均跳转至登录页。没有直接报404,那么推测需要登录后台才能访问:

某师傅造的仿真环境,从GetShell到提权root

database.sql可以直接下载,里面有两个用户的密文,密码是用的php的password_hash()函数进行的加密,这个加密是不可逆的,只能进行碰撞:

某师傅造的仿真环境,从GetShell到提权root
某师傅造的仿真环境,从GetShell到提权root
0x02 爆破密文

用cmd5查了一下这串密文,我焯,是有记录的:

某师傅造的仿真环境,从GetShell到提权root

但是……嘻嘻,我没有会员,我只能用hashcat爆破了。这里咱们最好是可以获取到密文类型,这样用hashcat指定密文类型爆破,速度会更快:

https://www.tunnelsup.com/hash-analyzer/
某师傅造的仿真环境,从GetShell到提权root

啊?居然没识别到,不应该啊,毕竟下面都有:

某师傅造的仿真环境,从GetShell到提权root

无所谓哈,其实我知道这是什么类型,在hashcat wiki搜一下:

https://hashcat.net/wiki/doku.php?id=example%20hashes
某师傅造的仿真环境,从GetShell到提权root

那么编号是3200,将密文保存到txt,这是我用的字典:

https://github.com/brannondorsey/naive-hashcat/releases/download/data/rockyou.txt

hashcat指定密文类型、密文文件以及字典文件,开爆:

某师傅造的仿真环境,从GetShell到提权root

大概,爆了几分钟的样子,已经出来了:

某师傅造的仿真环境,从GetShell到提权root
某师傅造的仿真环境,从GetShell到提权root
0x03 垂直越权

通过爆破出来的密文,成功登录后台,但是没什么功能:

某师傅造的仿真环境,从GetShell到提权root

这个发布文章也是,没有利用点,目前通篇无SQL注入:

某师傅造的仿真环境,从GetShell到提权root

还记得我们之前扫描到的upload与settings吗?尝试访问一下:

某师傅造的仿真环境,从GetShell到提权root

还是一样的,重定向到登录页。那说明需要越权,看下Cookie里面有没有东西,没有的话,我们就只能抓包再看看参数有没有点可以尝试了:

某师傅造的仿真环境,从GetShell到提权root

Auth里面有一串base64编码后的内容,解码一下看看:

某师傅造的仿真环境,从GetShell到提权root

我好像已经知道了,我们把它改成admin重新base64编码然后替换Auth的值:

某师傅造的仿真环境,从GetShell到提权root
某师傅造的仿真环境,从GetShell到提权root

重新访问upload.php,直接舒服了捏:

某师傅造的仿真环境,从GetShell到提权root
某师傅造的仿真环境,从GetShell到提权root
0x04 上传绕过

我们尝试上传一个包含php代码的png文件,然后bp拦截数据包,重新改回php后缀,看看能不能直接上去:

某师傅造的仿真环境,从GetShell到提权root

啊?图片文件不能包含PHP代码:

某师傅造的仿真环境,从GetShell到提权root

这个应该不难,一般情况下,php的常见写法是这样的:

某师傅造的仿真环境,从GetShell到提权root

其实php有好几种写法,这里应该是检测了php常规写法的格式:

某师傅造的仿真环境,从GetShell到提权root

我这里用的长标签来尝试,直接传:

某师傅造的仿真环境,从GetShell到提权root
某师傅造的仿真环境,从GetShell到提权root

OK上去了,舒服呀:

某师傅造的仿真环境,从GetShell到提权root

没有直接返回路径,查看源代码,发现了提示:

某师傅造的仿真环境,从GetShell到提权root
某师傅造的仿真环境,从GetShell到提权root
0x05 获取路径

    根据他这个提示,我原本以为格式应该是这样的:

某师傅造的仿真环境,从GetShell到提权root

这里我弄了大半个小时没出来,我终于忍不住了:

某师傅造的仿真环境,从GetShell到提权root

你自己看看这是一个意思吗?那么应该是这样的:

某师傅造的仿真环境,从GetShell到提权root

我现在要传的文件,是61字节:

某师傅造的仿真环境,从GetShell到提权root

不说了,直接上传,然后基于路径提示进行md5加密:

某师傅造的仿真环境,从GetShell到提权root
某师傅造的仿真环境,从GetShell到提权root

取密文前10位,然后拼接到日期后面进行访问:

某师傅造的仿真环境,从GetShell到提权root

接下来,把代码内容换成一句话木马再次上传:

某师傅造的仿真环境,从GetShell到提权root

连接马子,成功成功,没毛病:

某师傅造的仿真环境,从GetShell到提权root
某师傅造的仿真环境,从GetShell到提权root
0x06 权限提升

    马子已经连上了,不过是www权限:

某师傅造的仿真环境,从GetShell到提权root

通过搜索发现了flag,但是没权限读取:

某师傅造的仿真环境,从GetShell到提权root

那就是要提权了,可以看看内核版本,搜一下有没有漏洞。我搜了,内核是没有洞的,那么我们可以搜索一下,看看有没有特权模式的文件,用特权文件来提权:

find / -perm -4000 -type f -exec ls -l {} ;
某师傅造的仿真环境,从GetShell到提权root

上面这些带S的文件,都具有SUID特权,且文件所有者为root用户,那么大概率可以用来提权到root权限:

某师傅造的仿真环境,从GetShell到提权root

这里有一个注意点,执行/bin/bash并返回结果,需要用交互式shell才能执行。

而目前我们使用的哥斯拉提供的命令执行,只是一个单命令执行的模式,就是你执行一次命令,他返回一次结果,所以目前在哥斯拉中是执行不了/bin/bash的:

某师傅造的仿真环境,从GetShell到提权root
某师傅造的仿真环境,从GetShell到提权root

但是,可以利用哥斯拉的RealCmd开启伪交互式Shell:

某师傅造的仿真环境,从GetShell到提权root

然后,在本机使用netccat连接,即可获取伪交互式shell:

某师傅造的仿真环境,从GetShell到提权root

至此,下机!感谢师傅的这个环境,还算是比较贴近真是系统的,因为这些漏洞,我基本都遇见过。

某师傅造的仿真环境,从GetShell到提权root

 

原文始发于微信公众号(犀利猪安全):某师傅造的仿真环境,从GetShell到提权root

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年4月8日00:05:46
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   某师傅造的仿真环境,从GetShell到提权roothttps://cn-sec.com/archives/3912011.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息