DC-2简介

描述

与DC-1一样,DC-2是另一个专门构建的易受攻击的实验室,目的是获得渗透测试领域的经验。

与原始DC-1一样,它在设计时就考虑了初学者。

必须具备Linux技能并熟悉Linux命令行,以及一些基本渗透测试工具的经验。

与DC-1一样,共有五个标志,包括最终flag。

同样,就像DC-1一样,标志对于初学者来说很重要,但对有经验的人则不那么重要。

简而言之,真正重要的唯一标志是最终flag。

对于初学者来说,Google是您的朋友。

技术信息

DC-2是基于Debian 32位构建的VirtualBox VM,因此在大多数PC上运行它应该没有问题。

尽管我尚未在VMware环境中对其进行测试,但它也应该可以工作。

当前已将其配置为桥接网络,但是可以进行更改以满足您的要求。为DHCP配置了网络。

安装很简单-下载它,解压缩,然后将其导入VirtualBox即可。

请注意,您需要将渗透测试设备上的主机文件设置为以下内容:

192.168.0.145 dc-2

显然,将192.168.0.145替换为DC-2的实际IP地址。

它将使生活变得更加简单(如果没有它,某些CMS可能无法工作)。

如果您不确定如何执行此操作,请参见此处的说明。

渗透过程

利用nmap扫描dc-2的地址

namp -sn 192.168.12.0/24

根据扫描结果得到dc-2的ip地址为192.168.12.138

利用nmap扫描nmap的端口信息

namp -A 192.1678.12.138

根据扫描结果发现开放了80端口并且开启了apache服务部署了wordpress

获取flag1

用浏览器打开网站,直接得到flag

生成密码字典并破解用户名密码

  • 使用cewl工具生成密码字典
cewl http://dc-2/ -w pwd.txt

  • 使用wpscan扫描网站
wpscan --url  192.168.12.13-e8

在使用wpscan工具扫描wordpress网站并枚举网站中的可用用户后,我发现其上有三个用户(admin,jerry和tom)

  • 使用wpscan和pwd.txt暴力破解密码
wpscan --url http://dc-2/ --wordlist pwd.txt

成功破解tom和jerry的密码

获取flag2

使用tom和jerry的密码分别登录wordpress后台

最终在使用jerry账户时发现了flag2

使用ssh登录dc-2

在目标机器上使用nmap执行完整端口扫描,我发现还有另一个运行SSH服务的开放端口(7744)

nmap -p- -A 192.168.12.138

ssh tom@192.168.12.138

尝试使用tom的密码登录ssh服务,并且成功登录

查看当前目录文件,发现flag3.txt,但是有限制,打不开,于是进行提权

shell绕过限制

[BASH_CMDS[a]=/bin/sh;a]
[/bin/bash]
[export PATH=$PATH:/bin/]
[export PATH=$PATH:/usr/bin]

获取flag3

绕过限制后,直接获取flag3

获取flag4

切换jerry用户登录dc-2,密码为最初破解的密码,登陆成功,获取flag4

提权并获取最终的flag

根据flag4的提示,利用git进行提权

使用sudo命令我发现这个用户(Jerry)可以以root用户身份运行git命令而无需密码。所以,我用它将我的权限升级为root用户,如下所示:

最后,我获得了root权限,可以读取final-flag.txt文件的内容。

Vulnhub靶场 DC-2 WP的更多相关文章

  1. Vulnhub靶场DC-1 WP

    前言 之前提到过最近在做vlunhub的靶场复现工作,今天开始更新writeup吧.(对着walkthrough一顿乱抄嘻嘻嘻) 关于DC-1(官网翻译来的) 描述 DC-1是一个专门构建的易受攻击的 ...

  2. Vulnhub靶场——DC-1

    记一次Vulnhub靶场练习记录 靶机DC-1下载地址: 官方地址 https://download.vulnhub.com/dc/DC-1.zip 该靶场共有5个flag,下面我们一个一个寻找 打开 ...

  3. Vulnhub靶场题解

    Vulnhub简介 Vulnhub是一个提供各种漏洞环境的靶场平台,供安全爱好者学习渗透使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行 ...

  4. VulnHub靶场学习_HA: ARMOUR

    HA: ARMOUR Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-armour,370/ 背景: Klaw从“复仇者联盟”超级秘密基地偷走了一些盔甲 ...

  5. VulnHub靶场学习_HA: InfinityStones

    HA-InfinityStones Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-infinity-stones,366/ 背景: 灭霸认为,如果他杀 ...

  6. VulnHub靶场学习_HA: Avengers Arsenal

    HA: Avengers Arsenal Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-avengers-arsenal,369/ 背景: 复仇者联盟 ...

  7. VulnHub靶场学习_HA: Chanakya

    HA-Chanakya Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chanakya,395/ 背景: 摧毁王国的策划者又回来了,这次他创造了一个难 ...

  8. VulnHub靶场学习_HA: Pandavas

    HA: Pandavas Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-pandavas,487/ 背景: Pandavas are the warr ...

  9. VulnHub靶场学习_HA: Natraj

    HA: Natraj Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-natraj,489/ 背景: Nataraj is a dancing avat ...

  10. VulnHub靶场学习_HA: Chakravyuh

    HA: Chakravyuh Vulnhub靶场 下载地址:https://www.vulnhub.com/entry/ha-chakravyuh,388/ 背景: Close your eyes a ...

随机推荐

  1. 用artifactory搭建maven2内部服务器

    访问http://www.jfrog.org/sites/jfrog/index.html 下载最新的zip包(内置jetty) 下载和解压artifactory.目录结构如下: 这些目录是: bac ...

  2. <JZOJ5937&luogu3944>斩杀计划&肮脏的牧师

    第一次写桶排相关题.... #include<cstdio> #include<iostream> #define rint register int template < ...

  3. ES6-Set与Map数据结构

    Set 实例的属性和方法 Set类似与数组,但是成员值唯一没有重复! let arr = [3, 5, 2, 2, 5, 5]; let unique = [...new Set(arr)]; // ...

  4. php数据库连接和mysql语句使用

    从简单的登录页开始学习. 前提:已经有一个html+css+js的静态网站 登录: php连接数据库,读取数据. <?php $username = root; $userpass = shao ...

  5. 几种 npm install XXX 的区别

    在使用npm命令安装资源包时,有哪些需要注意的区别 npm install X 会把X包安装到node_modules目录中 不会修改package.json 之后运行npm install命令时,不 ...

  6. 醉酒驾驶VS睡眠不足,哪个更危险

    在全球范围内,睡眠不足驾驶每年导致成千上万起交通事故,醉酒驾驶就更不用说了.毫无疑问,两种情况下都不应该驾车,都有危险.睡眠不足和醉酒驾驶相对来说哪个更危险呢? 如果要问哪一个"好" ...

  7. [PyTorch入门之60分钟入门闪击战]之训练分类器

    训练分类器 目前为止,你已经知道如何定义神经网络.计算损失和更新网络的权重.现在你可能在想,那数据呢? What about data? 通常,当你需要处理图像.文本.音频或者视频数据时,你可以使用标 ...

  8. 手机视频APP将关闭 生态梦成空的三星如何自救?

    生态梦成空的三星如何自救?"> 三星如今的处境,只能用"屋漏偏逢连夜雨"来形容.继营收.利润.智能手机销量等大幅下滑之后,裁员也接踵而来,股价的下跌也自然在情理之中 ...

  9. date成字符串

    //获取当前时间 Date date=new Date(); System.out.println("当前date: "+date); //将时间转化成yyyy-MM-dd格式的字 ...

  10. Rust入坑指南:朝生暮死

    今天想和大家一起把我们之前挖的坑再刨深一些.在Java中,一个对象能存活多久全靠JVM来决定,程序员并不需要去关心对象的生命周期,但是在Rust中就大不相同,一个对象从生到死我们都需要掌握的很清楚. ...