漏洞靶场实战-Vuluhub DC-1

Posted OceanSec

tags:

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


文章目录

下载安装

Vulnhub 是个提供各种漏洞平台的综合靶场,可供下载多种虚拟机进行下载,本地 VM 打开即可

本次复现靶场下载地址

下载的是一个 ovf 后缀的文件,打开 Vmware,导入

导入完毕后根据需求编辑虚拟机设置,开机即可

这样就是正常的,不需要登录

Kali IP:192.168.179.144

DC-1

利用

1.主机发现

arp-scan -l

因为 IP 地址为 1 是网关,结合 mac 地址判断 145 地址就是靶机地址

使用 nmap 扫描端口,nmap 手册

nmap -A 192.168.179.145 -p 1-65535

确定开放了 22、80、111、50303,考虑以下利用方式

  1. 80 端口 web 服务存在漏洞
  2. 22 ssh 端口存在爆破

访问 80 端口,发现 cms 为 Drupal7

2.Drupal漏洞利用

使用 searchsploit 命令在漏洞库中搜索此版本是否有漏洞可以利用

存在 php 远程命令执行漏洞,发现 MSF 可以直接利用

设置相关参数

根据要求只需要设置RHOSTS即目标靶场的IP,设置完成执行run命令即可进入shell环境

flag1

现在就拿到了一个 msf 的 shell,但是不是一个完整的 shell,可以使用 shell 命令切换

使用 ls 命令发现 flag1.txt

flag2

提示 cms 的配置文件

在 /var/www/sites/default/settings 文件中发现第二个 flag

提示 暴力破解和扫目录不是获取权限的唯一方式,下面的认证信息你怎么使用,很明显这是在提示此配置文件中有一些敏感信息,就是下面的数据库配置信息了

flag3

由于使用的不是交互式 shell 所以不是很方便,使用 python 获取交互式 shell

python -c 'import pty;pty.spawn("/bin/bash")'

直接用密码连接 mysql 数据库

查看 users 表

密码可以发现是加盐 md5 很难破解,可以直接在数据库中使用 update 语句修改密码

1.首先生成自定密码的加盐哈希值,回到根目录使用命令

php scripts/password-hash.sh 密码

2.进入数据库执行 update 语句

update users set pass="$S$Dywh/n6dLMr2Pq1qH4/6gOfHOBbVhoX4OLxRyaLF9rmtlb3UPuR2" where uid = 1;

修改成功回到网页,登录后台,找到 flag

flag4

flag3 提示 特殊权限将有助于查找密码 - 但您需要 -exec 该命令才能确定如何获取 shadow 中的内容

查看 passwd 文件

发现 flag4 的目录

有师傅是这么做的

查看 etc/passwd,发现目标靶机用户 flag4,并且有 /bin/bash,看到这想到了还有端口22,所以 ssh 连接。但是密码不知道所以只能用爆破神器 hydra。
用 kali 自带密码字典,路径为 /usr/share/john/password.lst,kali 自带各种密码默认保存在 /usr/share/
爆破出密码为 orange,直接 ssh 连接,进入家目录查看发现 flag4

flag5

shadow 文件没有查看权限

结合 flag3 和 flag4 的提示,需要获取 root 权限

linux 提权方法:

  1. sudo 提权,通过命令sudo -l查看是否有可提权的命令
  2. suid 提权,通过命令find / -perm -4000 2>/dev/null查看是否具有root权限的命令
  3. 系统版本内核提权
  4. 通过数据库提权

使用以下命令可以查看根目录下所有带有 suid 属性的文件

SUID 是一种特殊的文件属性,它允许用户执行的文件已该文件的拥有者的身份运行,比如一个具有 SUID 属性的文件的拥有者是 root 用户,就可以 root 权限运行

suid 提权

find / -perm -u=s -type f 2>/dev/null
等价 find / -perm -4000 2>/dev/null

发现 find 具有 root 权限,直接使用命令提权

find -exec /bin/sh \\;

流程梳理


参考:
https://blog.csdn.net/weixin_50053818/article/details/116404482

附录

Nmap 常用参数

参 数说 明
-sTTCP connect()扫描,这种方式会在目标主机的日志中记录大批连接请求和错误信息。
-sS半开扫描,很少有系统能把它记入系统日志。不过,需要Root权限。
-sF -sN秘密FIN数据包扫描、Xmas Tree、Null扫描模式
-sPping扫描,Nmap在扫描端口时,默认都会使用ping扫描,只有主机存活,Nmap才会继续扫描。
-sUUDP扫描,但UDP扫描是不可靠的
-sA这项高级的扫描方法通常用来穿过防火墙的规则集
-sV探测端口服务版本
-Pn扫描之前不需要用ping命令,有些防火墙禁止ping命令。可以使用此选项进行扫描
-v显示扫描过程,推荐使用
-h帮助选项,是最清楚的帮助文档
-p指定端口,如“1-65535、1433、135、22、80”等
-O启用远程操作系统检测,存在误报
-A全面系统检测、启用脚本检测、扫描等
-oN/-oX/-oG将报告写入文件,分别是正常、XML、grepable 三种格式
-T4针对TCP端口禁止动态扫描延迟超过10ms
-iL读取主机列表,例如,“-iL C:\\ip.txt”

以上是关于漏洞靶场实战-Vuluhub DC-1的主要内容,如果未能解决你的问题,请参考以下文章

漏洞靶场实战-Vuluhub medium_socnet

漏洞靶场实战-Vuluhub medium_socnet

DC-1靶场搭建及渗透实战详细过程(DC靶场系列)

Vulnhub靶场渗透-DC-1

Me-and-My-girlfriend-1靶机实战-vuluhub系列(完结)

raven靶机实战(linux-udf提权)-vuluhub系列