Vulnhub-dc5

靶场下载

https://download.vulnhub.com/dc/DC-5.zip

信息收集

# nmap -sn 192.168.1.0/24 -oN live.port
Starting Nmap 7.94 ( https://nmap.org ) at 2024-01-21 20:56 CST
Nmap scan report for 192.168.1.1 (192.168.1.1)
Host is up (0.00057s latency).
MAC Address: 00:50:56:C0:00:08 (VMware)
Nmap scan report for 0bcc61d9e6ea39148e78c7c68571e53 (192.168.1.2)
Host is up (0.00036s latency).
MAC Address: 00:50:56:FE:B1:6F (VMware)
Nmap scan report for 192.168.1.92 (192.168.1.92)
Host is up (0.00028s latency).
MAC Address: 00:0C:29:45:22:BD (VMware)
Nmap scan report for 192.168.1.254 (192.168.1.254)
Host is up (0.00021s latency).
MAC Address: 00:50:56:F3:42:A3 (VMware)
Nmap scan report for 192.168.1.60 (192.168.1.60)
Host is up.
Nmap done: 256 IP addresses (5 hosts up) scanned in 1.98 seconds

判断到存活主机的IP地址为192.168.1.92

# nmap -sT --min-rate 10000 -p- 192.168.1.92 -oN port.nmap 
Starting Nmap 7.94 ( https://nmap.org ) at 2024-01-21 20:56 CST
Nmap scan report for 192.168.1.92 (192.168.1.92)
Host is up (0.0037s latency).
Not shown: 65532 closed tcp ports (conn-refused)
PORT      STATE SERVICE
80/tcp    open  http
111/tcp   open  rpcbind
38242/tcp open  unknown
MAC Address: 00:0C:29:45:22:BD (VMware)

开放端口信息为80 111 38242 其中111端口是远程过程调用 探测一下UDP端口信息:

# nmap -sU --min-rate 10000 -p- 192.168.1.92 -oN UDP.nmap
Starting Nmap 7.94 ( https://nmap.org ) at 2024-01-21 20:58 CST
Warning: 192.168.1.92 giving up on port because retransmission cap hit (10).
Nmap scan report for 192.168.1.92 (192.168.1.92)
Host is up (0.00086s latency).
Not shown: 65455 open|filtered udp ports (no-response), 78 closed udp ports (port-unreach)
PORT      STATE SERVICE
111/udp   open  rpcbind
35126/udp open  unknown
MAC Address: 00:0C:29:45:22:BD (VMware)

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

UDP端口探测,会发现开放了两个端口:分别是111 端口和 35126端口!

# nmap -sT -sC -sV -O -p80,111,38242 192.168.1.92 -oN details.nmap
Starting Nmap 7.94 ( https://nmap.org ) at 2024-01-21 20:58 CST
Nmap scan report for 192.168.1.92 (192.168.1.92)
Host is up (0.00047s latency).

PORT      STATE SERVICE VERSION
80/tcp    open  http    nginx 1.6.2
|_http-title: Welcome
|_http-server-header: nginx/1.6.2
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
|   100024  1          35126/udp   status
|   100024  1          38242/tcp   status
|   100024  1          48330/tcp6  status
|_  100024  1          52887/udp6  status
38242/tcp open  status  1 (RPC #100024)
MAC Address: 00:0C:29:45:22:BD (VMware)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Aggressive OS guesses: Linux 3.2 - 4.9 (98%), Linux 3.10 - 4.11 (94%), Linux 3.13 (94%), OpenWrt Chaos Calmer 15.05 (Linux 3.18) or Designated Driver (Linux 4.1 or 4.4) (94%), Linux 4.10 (94%), Linux 3.2 - 3.16 (94%), Android 5.0 - 6.0.1 (Linux 3.4) (93%), Linux 3.2 - 3.10 (93%), Linux 4.2 (93%), Linux 3.13 - 3.16 (92%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 1 hop

端口详细信息探测,80端口上是nginx 1.6.2 剩下的两个端口便是rpc的相关服务

# nmap -sT --script=vuln -p80,111,35242 192.168.1.92 -oN vuln.nmap 
Starting Nmap 7.94 ( https://nmap.org ) at 2024-01-21 21:00 CST
Pre-scan script results:
| broadcast-avahi-dos: 
|   Discovered hosts:
|     224.0.0.251
|   After NULL UDP avahi packet DoS (CVE-2011-1002).
|_  Hosts are all up (not vulnerable).
Nmap scan report for 192.168.1.92 (192.168.1.92)
Host is up (0.00034s latency).

PORT      STATE  SERVICE
80/tcp    open   http
|_http-stored-xss: Couldn't find any stored XSS vulnerabilities.
| http-csrf: 
| Spidering limited to: maxdepth=3; maxpagecount=20; withinhost=192.168.1.92
|   Found the following possible CSRF vulnerabilities: 
|     
|     Path: http://192.168.1.92:80/contact.php
|     Form id: fname
|_    Form action: thankyou.php
|_http-dombased-xss: Couldn't find any DOM based XSS.
111/tcp   open   rpcbind
35242/tcp closed unknown
MAC Address: 00:0C:29:45:22:BD (VMware)

默认漏洞脚本信息的探测结果没什么价值信息,csrf漏洞在我们渗透测试过程中,难以利用;这里还是先在80端口上寻找突破点!

渗透测试

访问80端口上的服务:

Vulnhub-dc5_第1张图片

发现了存在几个功能点,分别是home solutions about us FAQ Contact!

Vulnhub-dc5_第2张图片

contact页面可以提交相关信息!尝试随便提交数据:

Vulnhub-dc5_第3张图片

上面的URL发生了变化;页面上的内容也不是英语,不知道什么语言~ 做一下例行的目录扫描:

Vulnhub-dc5_第4张图片

目录扫描的结果还是上面的几个文件!多了一个footer文件:

Vulnhub-dc5_第5张图片

这里发现这个文件的内容一直在变化!

Vulnhub-dc5_第6张图片

刷新就会不一样了。前面的页面底部都是存在这个footer的!但是这里我并不知道他是怎么去进行的包含;看了大佬们的wp,也没说明白为什么参数是file,而且前面其他的页面也是存在这个下标的,我其实不理解是怎么一步步测出来的~

他是通过file这个参数去包含footer.php文件的,从而thankyou.php文件中的内容会出现这个footer下标!既然这里包含了footer.php文件,那么就可能存在任意文件包含漏洞!

尝试修改为file=/etc/passwd

Vulnhub-dc5_第7张图片

这里可以看到文件包含成功了!那么我们可以尝试去包含ngnix的日志文件! 尝试包含日志文件/var/log/nginx/access.log的时候,弹窗了;

Vulnhub-dc5_第8张图片

不知道具体原因是什么? 是出错了吗? 再换一个文件包含:

/var/log/nginx/error.log

Vulnhub-dc5_第9张图片

没问题,可以包含成功!可以看到错误日志中 我们的请求是记录在了里面,那么我们就可以写马到错误日志中了!

Vulnhub-dc5_第10张图片

尝试直接将反弹shell写进去!尝试起监听,在访问错误日志进行包含!但是没执行成功:

Vulnhub-dc5_第11张图片

写进去了,但是没执行成功~ 直接扔上一句话木马:

Vulnhub-dc5_第12张图片

还是没能成功执行,修改一下:

Vulnhub-dc5_第13张图片

最终是执行成功了!直接exec反弹shell应该可以了吧:还是不行 好奇怪这里,直接上蚁剑!

Vulnhub-dc5_第14张图片

连接成功了!这里我还是不想动用msf上传木马,还是上传一个php反弹shell的代码上去吧:

Vulnhub-dc5_第15张图片

写好代码之后,尝试上传,但是蚁剑上传失败;于是攻击机起简单的http服务,利用命令行进行下载:

Vulnhub-dc5_第16张图片

但是当前目录下没有权限!cd到tmp目录下,再次尝试:

Vulnhub-dc5_第17张图片

下载下来之后,赋予执行权限!发现执行的时候,并没有成功,回去一看文件居然还是空文件~

Vulnhub-dc5_第18张图片

先看看etc/passwd文件,里面存在几个活跃的用户!

Vulnhub-dc5_第19张图片

发现了存在一个用户是dc!

提权

做提权准备吧;直接生成msf的木马,利用wget上传到靶机上,从而执行!

Vulnhub-dc5_第20张图片

给与执行的权限:

Vulnhub-dc5_第21张图片

启动msf,然后配置好监听!

Vulnhub-dc5_第22张图片

确定目标的靶机就是我们的目标:

Vulnhub-dc5_第23张图片

有python!准备利用python提升shell的交互性!

Vulnhub-dc5_第24张图片

查看计划:

Vulnhub-dc5_第25张图片

没有计划任务,查看一下suid文件:

Vulnhub-dc5_第26张图片

暂时没发现有什么可以利用的,多个文件都没见过,不知能否进行利用~

内核版本比较低,可以尝试内核提权~ searchsploit进行搜索,定位到如下的两个exp,先来尝试一下:

Vulnhub-dc5_第27张图片

但是两个exp全部执行失败了~ 这里上传了linpeas进行提权的信息枚举:

Vulnhub-dc5_第28张图片

尝试一下脏牛吧!上传exp,进行编译https://github.com/FireFart/dirtycow

Vulnhub-dc5_第29张图片

执行:

Vulnhub-dc5_第30张图片

但是我接下来去查看/etc/passwd文件的内容的时候,并没有发现创建用户成功:

Vulnhub-dc5_第31张图片

还是失败了。看了下mysql也不是root起的;于是乎看了wp~ 这里涉及到了一个自己没见过的suid文件提权!回到suid文件上:

Vulnhub-dc5_第32张图片

利用searchsploit进行搜索:

Vulnhub-dc5_第33张图片

存在本地权限提升漏洞!下载下来之后:

Vulnhub-dc5_第34张图片

需要创建两个文件:libhax.c

Vulnhub-dc5_第35张图片

Vulnhub-dc5_第36张图片

然后按照他的要求进行编译,分别生成libhax.so rootshell 再上传到靶机:

Vulnhub-dc5_第37张图片

之后创建启动脚本:

Vulnhub-dc5_第38张图片

将三个文件全部进行上传:

Vulnhub-dc5_第39张图片

这里比较乱了,因为尝试了很多种方式去提权;赋予执行权限!

Vulnhub-dc5_第40张图片

然后执行脚本!但是我这里出现了报错,缺少GLIBC_2.34这个库!我怀疑是我的kali版本过高导致的!因此我们可以直接上传libhax.c 和 rootshell.c两个脚本到靶标!在靶标上执行编译操作!这里是我的想法,不知道对不对~ 或者是降低kali的版本?用和靶机差不多的环境进行编译?

因此这个靶机完成的不到位~ 最终没能实现提权!看了网上的大佬们的提权是这样做的,之前我遇到过这种情况,应该上面的两种解决方法是可行的。

你可能感兴趣的:(Vulnhub,网络安全,web安全,安全,安全威胁分析,学习)