Vulnhub系列之DC1靶场详解

文章目录

  • 环境
  • drupal 7.x漏洞拿flag1
  • 在目录中找配置文件拿flag2
  • 改密码进网站拿flag2
  • ssh爆破拿flag4
  • 提权拿最后的flag

环境

  1. DC-1靶场
  2. VMware虚拟机
  3. kali

drupal 7.x漏洞拿flag1

首先搭建好靶场。这次一次黑盒靶场测试,只能从虚拟机中查看DC1靶场的mac地址,从而查出目标靶机的IP。

Vulnhub系列之DC1靶场详解_第1张图片

Vulnhub系列之DC1靶场详解_第2张图片

所以目标IP地址为192.168.31.184,直接上nmap进行目标全面扫描。

Vulnhub系列之DC1靶场详解_第3张图片

由nmap扫描可以知道,目标靶机开放了22,80,111,42875端口,看到端口号22想到ssh远程连接,端口号80想到web网页攻击。后面两个端口暂时想不到有什么用,所以先放在一般后面可能会用到。所以直接访问网页。

Vulnhub系列之DC1靶场详解_第4张图片

由网页可以明显看出本站是由使用PHP语言编写的开源内容管理系统Drupal搭建的,并且由Wappalyzer得知版本为7.X,所以直接使用searchsploit命令在漏洞库中搜索此版本是否有漏洞可以利用。

Vulnhub系列之DC1靶场详解_第5张图片

可以看到由许多可以利用的漏洞,所以我们选择最后一个远程代码执行漏洞,因为这个漏洞可以利用漏洞攻击神奇metasploit进行攻击。

Vulnhub系列之DC1靶场详解_第6张图片

直接使用模块,使用命令info可以查看漏洞的相关信息,也可以查看攻击模块需要设置的参数。根据要求设置参数。

Vulnhub系列之DC1靶场详解_第7张图片

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

Vulnhub系列之DC1靶场详解_第8张图片

由于得到的不是一个完整的shell环境,所以我们所以pyhton中的pty模块反弹一个完整的shell环境,即直接输入

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

直接上命令,可以得到flag1

在目录中找配置文件拿flag2

根据flag1.txt中的"Every good CMS needs a config file - and so do you."(意思差不多:每个好的内容管理系统都需要一个配置文件,所以你应该怎么做)提示,所以直接从实名命令执行得到的目录里面找配置文件。

Vulnhub系列之DC1靶场详解_第9张图片

最终在sites/default/default.setting.php中找到的(不要问我怎么找到的,问就是不知道)(觉得可疑的目录和文件就一个一个试呗)
于是得到了flag2

改密码进网站拿flag2

根据flag2提示(提示内容大概意思是:爆破和目录扫描并不是唯一获得后台的方法(并且你需要访问权限),下面这些认证信息你怎么使用)。
给出的是数据库的相关信息,所以我们直接本地登陆数据库。

Vulnhub系列之DC1靶场详解_第10张图片

查看表users中的内容可以知道用户名和密码。

Vulnhub系列之DC1靶场详解_第11张图片

但是一般加盐的密码是很难破解的,所以选择修改用户密码来解决。首先生成自定密码的加盐哈希值。回到网站的目录下执行php scripts/password-hash.sh 密码命令生成。

在这里插入图片描述

修改密码,并且确认是否修改完成

Vulnhub系列之DC1靶场详解_第12张图片

修改完成回到网页登陆,登陆成功

Vulnhub系列之DC1靶场详解_第13张图片

Vulnhub系列之DC1靶场详解_第14张图片

得到flag3

ssh爆破拿flag4

从flag3中提示发现passwd,shadow所以查看根目录**/etc**下的这两个文件;

Vulnhub系列之DC1靶场详解_第15张图片

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

在这里插入图片描述

Vulnhub系列之DC1靶场详解_第16张图片

爆出结果为’orange’,所以直接ssh连接,进入家目录查看发现flag4.

Vulnhub系列之DC1靶场详解_第17张图片

提权拿最后的flag

根据提示需要得到root权限才能得到falg。

liunx提权一般有四种提权方式:

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

Vulnhub系列之DC1靶场详解_第18张图片

发现find具有root权限。(哪些可以进行提权可以在网上查,提权用法可以临时查)
直接执行命令find -exec /bin/sh \;进行提权

Vulnhub系列之DC1靶场详解_第19张图片

提权完成,拿到最后的thefinalflag.txt.

你可能感兴趣的:(Vulnhub,安全,安全漏洞,网络安全,云安全,mysql)