Vulnhub - Bluemoon

听说练习Vulnhub靶机,可以提升一些提权的小技巧,前来练习。

先使用nmap扫描一下,知道了靶机IP地址,以及开放的端口服务(ftp、ssh、http)

image-20210604221058910

访问http服务看看有没有什么可以GetWebshell的点,但是有点空没啥可以利用的

image-20210605002946390

于是使用dirsearch工具扫描后台目录,发现有一个hidden_text文件是之前没看到的,这个文件名是通过别人的wp才知道的(吐槽一下:Vulnhub总有一些奇奇怪怪的文件名是我找不到的)

image-20210604221011406

访问后发现是一个二维码,使用QR Research扫描工具获取信息

image-20210604221306470

里面是一个sh脚本(如下),此时我们获取的一个可以登陆ftp服务的账号

#!/bin/bash

HOST=ip
USER=userftp
PASSWORD=ftpp@ssword

ftp -inv $HOST user $USER $PASSWORD
bye
EOF

登录ftp服务器,看到两个文件information.txtp_lists.txt,下载下来并查看

image-20210604232528871

information.txt可以知道用户名,而p_lists.txt得到一密码本,用于爆破

image-20210604232817382

这里使用Railgun工具对密码进行爆破,获得一组用户名密码(robin/k4rv3ndh4nh4ck3r)

image-20210604233113476

通过ssh登录到用户,获得了第一个flag文件,接下来就是提权的步骤了

image-20210604233228923

通过命令sudo -l发现robin用户可以以jerry执行project/feedback.sh,关于Sudo相关命令可以查看:https://www.runoob.com/linux/linux-comm-sudo.html

image-20210605002337744

查看脚本,可以看到第二次输入的feedback值,会和接下来的2>/dev/null拼起来,如果feedback赋值/bin/bash将得到一个类似shell窗口

image-20210605004129182

通过命令sudo -u jerry project/feedback.sh执行,获得jerry的shell,并且发现它存在docker

image-20210605002417462

对此可以直接尝试docker提权,命令为docker run -v /:/mnt --rm -it alpine chroot /mnt sh,查看各种提权的网址:https://gtfobins.github.io/

image-20210605002740037

至此,我们拿到了靶机上的所有flag文件

posted @ 2021-06-05 09:05  erR0Ratao  阅读(280)  评论(0编辑  收藏  举报