【Vulnhub靶场】DC-2

DC-2 靶场下载地址:https://download.vulnhub.com/dc/DC-2.zip

目标

本机IP:192.168.118.128

靶机IP:192.168.118.0/24

信息收集

常规我使用nmap三扫描,扫存活主机、扫端口、扫服务

第一步探测到存活主机IP为:192.168.118.139

nmap -sP 192.168.118.0/24nmap -p- 192.168.118.139nmap -sV -A 192.168.118.139

发现开放了80端口和7744端口,但扫服务时并没有7744的端口信息,指定端口,再次扫描服务

发现7744端口是一个ssh服务

访问80端口的web页面,无法打开,返回前面查看信息,是要修改hosts

进入hosts,添加 192.168.118.139  dc-2

vim /etc/hosts

 然后重新访问 http://dc-2/

在下方有一个Flag,点击进入,得到 flag1

falg1提示:我们应该使用 cewl 生成密码,爆破账号,登录多个账号之类的

此页面还看到其CMS为 WordPress

暴力破解

cewl 是一个生成密码字典的工具,接下来我们用cewl生成一个密码字典存放在桌面上

cewl http://dc-2/ -w /root/Desktop/pass.txt

使用 wpsan 爆破用户名

wpsan是一款专门用来扫描 WordPress网站漏洞的工具

wpscan --url dc-2 -e u

最后扫出来三个用户名,将这三个用户名整理在一起,下一步就是爆破账号密码了

使用刚生成的账号密码爆破,最后成功爆破出两个账号密码:

wpscan --url http://dc-2/ -U user.txt -P pass.txt

成功拿到 jerry 和 tom 的密码,下一步就是登录了

使用dirserach 遍历目录,找到登录界面

dirsearch -u http://dc-2/

访问http://dc-2/wp-admin/,进入登录页面

在tom里面没有发现有用的信息,在jerry里面成功找到了flag2

flag2提示:如果你不能利用WordPress并采取快捷方式,还有另一种方法,希望你能找到另一个切入点。这是让我们接着干啊

SSH远程登录

想到前面开放的7744端口,尝试使用ssh登录,因为端口被修改,需要指定7744端口

ssh jerry@192.168.118.139 -p 7744		#登录jerry
ssh tom@192.168.118.139 -p 7744		#登录tom

尝试发现只有tom能够登录

在tom的目录下面找到了flag3,不能使用cat、find、vim等指令,发现好多的指令都无法使用,使用compgen -c 可查看当前可使用指令,最后尝试发现vi可以打开 

flag3提示:老tom总是在追jerry,也许他应该为他所造成的所有压力负责

根据提示,应该是jerry的权限比tom的高,现在我们应该提权到jerry

rbash逃逸

查询资料发现rbash为受限制的 bash。其可以用作中转服务器,或者仅使用 ssh 来访问网页等等。它与一般shell的区别在于会限制一些行为,让一些命令无法执行

所以我们设置shell来绕过rbash(设置变量a为一个shell,执行a)

BASH_CMDS[a]=/bin/sh;a 

 

此处shell已经变为了a,但还是切换不到,这是因为我们还没添加环境变量

export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin/

添加完环境变量,重新切换到jerry,成功 

 

成功进入jerry,然后cd到jerry目录,ls查看,发现flag4

flag4提示我们到这一步只剩下最终的flag了, 这是个让我们拿root权限的意思,而且最后一句有提示git,那应该就是git提权

git提权

原理是git存在缓冲区溢出漏洞,在使用sudo git -p help时,不需要输入root密码即可以root权限执行这条命令。

使用sudo -l 查看root身份执行的命令,发现有git

直接输入命令

sudo git help config

然后输入

!/bin/bash

 

然后cd到root目录下,成功发现最终的flag

final-flag

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/57964.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

时序分解 | TTNRBO-VMD改进牛顿-拉夫逊算法优化变分模态分解

时序分解 | TTNRBO-VMD改进牛顿-拉夫逊算法优化变分模态分解 目录 时序分解 | TTNRBO-VMD改进牛顿-拉夫逊算法优化变分模态分解效果一览基本介绍程序设计参考资料 效果一览 基本介绍 (创新独家)TTNRBO-VMD改进牛顿-拉夫逊优化算优化变分模态分解TTNRBO–VMD 优化VMD分解层数K和…

MySQL任意版本安装卸载和数据库原理图绘制

MYSQL任意版本安装和卸载 安装: 1、解压文件 --- 不能出现中文路径 2、在解压目录(安装目录)下: 1>.创建data文件夹 2>.创建配置文件my.txt 然后修改成ini格式 3、修改配置文件 basedirD:\\mysql\\mysql-5.7.28-winx64…

后台进程注册的ContentObserver接收到的回调晚10秒钟

后台进程中的ContentObserver延迟回调晚10秒钟 在Android系统中,后台进程注册的ContentObserver会有一个延迟回调机制,通常延迟10秒左右。这种机制的设计是为了优化系统资源,减少后台进程频繁监听数据变化带来的资源消耗。 背景 当应用处于…

接口自动化-框架搭建(Python+request+pytest+allure)

使用代码如何开展接口自动化测试。 一 选择自动化测试用例 业务流程优先,单接口靠后,功能稳定优先,变更频繁不选。 二 搭建自动化测试环境 (1)安装python编译器3.7版本以上--自行安装 (2)安…

RabbitMQ集群搭建及使用

1. 概述 前提条件:linux服务器下已经安装好了docker服务。 本文档将搭建一个三台RabbitMQ的集群,包括三个RabbitMQ容器安装在同一服务器和三台不同的服务器。 2. 集群搭建 在一台服务器上创建三个RabbitMQ容器。 2.1.1. 创建容器 执行以下命令创建三…

Python实现PSO粒子群优化DBSCAN膨胀聚类模型(DBSCAN算法)项目实战

说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后关注获取。 1.项目背景 随着大数据时代的到来,从海量数据中提取有用信息变得至关重要。聚类分析作为一种无监督…

Chromium HTML Input 类型radio 对应c++

一、单选按钮&#xff08;Radio Buttons&#xff09; <input type"radio"> 标签定义了表单的单选框选项: <form action""> <input type"radio" name"sex" value"male">男<br> <input type&quo…

Telephony中ITelephony的AIDL调用关系

以Android14.0源码讲解 ITelephony来自framework下的com.android.internal.telephony包下 frameworks/base/telephony/java/com/android/internal/telephony/ITelephony.aidl这个接口用于与Phone交互的界面&#xff0c;主要由TelephonyManager类使用&#xff0c;一些地方仍在…

R语言中常用功能汇总

删除特定变量 rm(value,new_col_name2,new_col_name)# 删除特定的变量取数据中前10行的数据 df <- df[1:10,]您可以使用dplyr包中的函数使用以下方法在 R 数据框中选择随机行&#xff1a; 方法 1&#xff1a;选择随机行数 df %>% sample_n( 5 ) 此函数从数据框中随机…

【电机控制】相电流重构——单电阻采样方案

【电机控制】相电流重构——单电阻采样方案 文章目录 [TOC](文章目录) 前言一、基于单电阻采样电流重构技术原理分析1.1 单电阻采样原理图1.2 基本电压矢量与电流采样关系 二、非观测区2.1 扇区过渡区2.2 低压调制区 三、非观测区补偿——移相法四、参考文献总结 前言 使用工具…

C++11实践指北

C11&#xff1a;书、在线工具、库。 书 1. 《现代C语言核心特性解析》 覆盖 C11~C20 特性的讲解。 视频跟读&#xff1a;https://www.bilibili.com/video/BV1nN4y1j7fv 现代CPP随笔_0CCh - 每天5分钟了解现代C新特性 2. 《C Primer》第五版 基于 C11 的 C 入门书。 正在看…

java基础面试题一

目录 1、Java语言概述 1.1一个”.java”源文件中是否可以包括多个类&#xff1f;有什么限制 1.2Java 的优势 1.3常用的几个命令行操作都有哪些&#xff1f;(至少4个) 1.4Java 中是否存在内存溢出、内存泄漏&#xff1f;如何解决&#xff1f;举例说明 1. 内存溢出&#xf…

RocketMQ | 源码分析 | Broker控制器的启动

在分布式消息中间件的领域中&#xff0c;RocketMQ 以其高性能、高可靠性和强大的功能占据着重要的地位。而 Broker 作为 RocketMQ 的核心组件之一&#xff0c;其控制器的启动过程涉及到众多关键环节和复杂的逻辑。理解这个过程对于深入掌握 RocketMQ 的运行机制以及在实际应用中…

从0开始深度学习(22)——从全连接层到卷积

多层感知机在处理图像这种高维数据时&#xff0c;因为模型需要大量的数据来训练这么多参数&#xff0c;会导致巨大的计算成本&#xff0c;还会增加过拟合的风险&#xff0c;所以人们选择使用卷积神经网络 1 不变性 在计算机视觉和深度学习领域&#xff0c;特指模型对输入数据中…

MySQL8.0.40编译安装

近期MySQL发布了8.0.40版本&#xff0c;与之前的版本相比&#xff0c;部分依赖包发生了变化&#xff0c;因此重新编译一版&#xff0c;也便于大家参考。 1. 下载源码 选择对应的版本、选择源码、操作系统 如果没有登录或者没有MySQL官网账号&#xff0c;可以选择只下载 2. 进…

系统性能优化——绑核

简要 绑核正如其名&#xff0c;将线程/进程绑定在一个或多个CPU核心。该技术可以使进程或线程在特定的处理器上运行&#xff0c;而不会被操作系统调度到其他处理器上。这里有两层含义。 如果线程被绑定在指定核心上&#xff0c;则只会在该核心上运行&#xff0c;即使其他核心…

【NodeJS】NodeJS+mongoDB在线版开发简单RestfulAPI (八):API说明(暂时完结,后续考虑将在线版mongoDB变为本地版)

本项目旨在学习如何快速使用 nodejs 开发后端api&#xff0c;并为以后开展其他项目的开启提供简易的后端模版。&#xff08;非后端工程师&#xff09; 由于文档是代码写完之后&#xff0c;为了记录项目中需要注意的技术点&#xff0c;因此文档的叙述方式并非开发顺序&#xff0…

2024年CentOS镜像下载地址,包括CentOS官网、国内镜像下载,超详细也

这里给大家提供了4种镜像下载地址&#xff0c;包括CentOS官方镜像下载、阿里云开源镜像站下载、网易开源镜像下载搜狐开源镜像下载。 1.CentOS官网镜像下载 因为服务器在国外所以打开CentOS官方网站的时候可能会比较慢。大家可以选择后面几种国内镜像下载方式。 1.1进入CentO…

go的web服务器框架

net/http golang内置的网络编程库功能已经很强大&#xff0c;但是没有参数解析和(json)类型封装等功能&#xff0c;不区分方法类型&#xff0c;如get。 type Response struct {Code int json:"code"Data any json:"data"Msg string json:"ms…

【面试经典150】day 8

#1024程序员节 | 征文# 作为一个未来的程序员&#xff0c;现在我要继续刷题了。 力扣时刻。 目录 1.接雨水 2.罗马数字转整数 3.最后一个单词的长度 4.最长公共前缀 5.反转字符串中的单词 1.接雨水 好好好好好好&#xff0c;一开始就接雨水。我记得接了n次了。。。 痛苦战…