[Vulnhub靶机] DriftingBlues: 2
[Vulnhub靶机] DriftingBlues: 2靶机渗透思路及方法(个人分享)
靶机下载地址:
https://download.vulnhub.com/driftingblues/driftingblues2.ova
靶机地址:192.168.67.21
攻击机地址:192.168.67.3
一、信息收集
1.使用 arp-scan 命令扫描网段内存活的主机,以获取靶机ip地址
arp-scan -I 指定网卡 -l
2.使用nmap工具扫描靶机开放端口、服务版本以及系统版本,得到开放端口21、22、80及其服务ftp、ssh、http
nmap -sV -O 靶机地址
-sV 探测主机服务版本
-O 识别主机操作系统
3.访问网站,和查看网页源代码都没有发现有什么有用的信息,通过Wappalyzer插件查看网站信息,发现该网站的CMS是WordPress
4.访问ftp,利用匿名用户登录(用户名为ftp或anonymous,密码为空),查看后发现一个secret.jpg图片,将图片下载到本地进行查看分析,也没有找到什么有用的信息
5.将思路重新放在网站上,使用dirsearch工具对网站目录进行扫描,获得/blog和/blog/wp-login.php文件,该文件就是WordPress系统中负责用户登录和认证的文件
dirsearch -u 靶机URL
-u 指定目标URL
6.在访问/blog时,点击跳转按钮,多次跳转到driftingblues.box域名下的地址,猜测可能需要使用域名进行访问,更改hosts文件,再次登录/blog/wp-login.php网页,获得登录页面
二、漏洞利用
尝试使用 wpscan 工具对登录使用的用户名和密码进行爆破,获得用户名/密码(albert/scotland1)
wpscan --url http://driftingblues.box/blog --enumerate u
--url 目标URL
--enumerate enumerate参数指定u,枚举站点用户名
wpscan --url http://driftingblues.box/blog/ -P /usr/share/wordlists/rockyou.txt --usernames albert
-P 指定密码字典
--usernames 指定用户名
/usr/share/wordists/rockyou.txt 是kali系统自带的密码文件,默认是个压缩包需要自行解压
三、反弹shell
此时有两种反弹shell的方法:
第一种:将php reverse shell的代码写入替换Theme File Editor中的404.php模版,如果可以update file成功,就可以获取目标主机的shell;
第二种:利用Wordpress的漏洞,使用Metasploit工具中的Metasploit中的exploit/unix/webapp/wp_admin_shell_upload模块获取目标主机的Shell
第一种反弹shell方法
1.使用刚才爆破获得的用户名/密码登录网站,进入管理系统内,到Theme File Editor页面,选择404.php模版进入网页内
2.在攻击机打开nc监听
nc -lvp 监听端口号 靶机地址
-l 开启监听
-v 显示详细输出
-p 指定监听端口
3.将php reverse shell的代码写入到404.php模版中,点击Update File按钮
php reverse shell的代码地址:php-reverse-shell - 菜鸟学院
4.在攻击机中访问靶机网站中一个不存在的页面,成功反弹shell(可惜利用该脚本反弹的shell无法通过python中的pty模块创建交互式shell,大家可以试试其他博主写的脚本 ),且shell权限为www-data
访问不存在的页面:http://driftingblues.box/blog/index.php/xxx/xxx
第二种反弹shell方法
1.打开 msf ,使用命令进入exploit/unix/webapp/wp_admin_shell_upload模块
msfconsole 打开msf命令(在终端输入)
use exploit/unix/webapp/wp_admin_shell_upload 进入模块命令
2.查看需要配置的参数,并对模块参数进行配置,并再次查看配置参数进行检查(要检查好确认配置成功)
show options 查看配置参数
set 属性名 对参数进行配置
3.配置完成,运行命令获取目标靶机的shell,通过命令打开交互式界面
run或exploit 执行漏洞模块命令
shell -t 打开交互式界面(在meterpreter界面执行)
run或exploit命令的区别:
exploit命令用于选择并执行一个特定的漏洞利用模块。当你在Metasploit中找到了一个适合目标系统的漏洞利用模块后,你可以使用exploit命令来执行该模块,尝试利用目标系统上的漏洞。这个命令通常用于实际的攻击过程,以获取对目标系统的访问权限或控制权。
run命令则用于执行当前已选定的模块或脚本。在Metasploit中,可以通过一系列的操作来选择并配置一个模块,然后使用run命令来执行该模块。这个命令通常用于执行各种辅助模块、扫描模块、信息收集模块等,并非直接用于实施攻击。
shell -t命令的作用是创建一个交互式的本地shell。这个命令允许用户在受感染的系统上执行命令,并与目标系统进行交互。
四、提权
1.在对系统文件进行查看分析之后,我们发现在/home目录下有一个freddie用户的家目录文件,并且发现该目录下存在一个.ssh目录,该目录下存在id_rsa(私钥文件),且该文件有可读权限
2.我们查看id_rsa文件内容,将内容复制到本地,并将文件权限改为只有所属可读可写
chmod 600 id_rsa 更改id_rsa文件权限为所属可读可写
3.使用私钥进行ssh远程登录,登录到freddie用户
4.习惯性用find命令查找特殊权限文件,进行尝试发现无法利用。但是其中有sudo命令,我们可以使用命令查看当前用户以超级用户(root)权限执行的命令,我们发现了nmap命令
sudo -l 用于列出当前用户可以以超级用户(root)权限运行的命令
这个命令会检查用户的sudo权限,并显示该用户能够执行的命令列表。通过使用sudo -l,用户可以查看自己被授权使用sudo命令时可以执行的特定命令。
5.利用nmap脚本进行提权,成功提权至root权限
echo "os.execute('/bin/bash')" > shell.nse
sudo nmap --script=shell.nse
--script 指定要加载的脚本
写一个nmap脚本(nmap脚本必须以nse为后缀),其中写入提权命令,利用nmap会以root权限执行命令的漏洞进行提权
在nmap脚本中,os.execute()函数是用于执行操作系统命令的Lua函数之一。通过使用os.execute()函数,可以在Nmap脚本中执行操作系统命令,并获取其输出。它接受一个字符串参数,该字符串包含要执行的命令。
相关文章:

[Vulnhub靶机] DriftingBlues: 2
[Vulnhub靶机] DriftingBlues: 2靶机渗透思路及方法(个人分享) 靶机下载地址: https://download.vulnhub.com/driftingblues/driftingblues2.ova 靶机地址:192.168.67.21 攻击机地址:192.168.67.3 一、信息收集 1.…...
鸿蒙 WiFi 扫描流程(1)
上一篇记录了WiFi 的打开流程,这里我们继续看,WiFi使能后,如何发起扫描?代码还是用的 鸿蒙OpenHarmony4.0基线代码。 foundation/communication/wifi/wifi/services/wifi_standard/wifi_hal/wifi_hal_sta_interface.c WifiError…...

基于YOLOv8的暗光低光环境下(ExDark数据集)检测,加入多种优化方式---DCNv4结合SPPF ,助力自动驾驶(一)
💡💡💡本文主要内容:详细介绍了暗光低光数据集检测整个过程,从数据集到训练模型到结果可视化分析,以及如何优化提升检测性能。 💡💡💡加入 DCNv4结合SPPF mAP0.5由原始的0.682提升至…...

(十三)springboot实战——springboot前后端分离方式项目集成spring securtity安全框架
前言 Spring Security 是一款强大且高度可定制的认证和访问控制框架,它是为了保护基于Spring的应用程序提供安全性支持。Spring Security提供了全面的安全服务,主要针对企业级应用程序的需求。其核心组件主要包含:Authentication(…...

XCTF:3-1[WriteUP]
从题目中获取文件 使用file命令查看文件类型 修改后缀为.rar后进行解压缩 再次使用file命令查询该文件的类型 再次修改后缀为.pcap或者.pcapng 使用wireshark打开,直接搜索flag字样 在多个数据包里发现了flag.rar、flag.txt等文件 尝试使用http导出文件 有一个fl…...

常用ES技巧二
文章目录 一、Object.entries()和Object.fromEntries()1.1、Object.entries()1.2、Object.fromEntries() 二、Symbol类型和Symbol属性三、WeakMap和WeakSet四、Promise.allSettled()五、BigInt六、Array.of和Array.from七、.at和.flat八、总结九、最后 一、Object.entries()和O…...

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Rating组件
鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Rating组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Rating组件 提供在给定范围内选择评分的组件。 子组件 无。 接口 Rating(opt…...

Python进阶--爬取下载人生格言(基于格言网的Python3爬虫)
目录 一、此处需要安装第三方库: 二、抓包分析及Python代码 1、打开人生格言网(人生格言-人生格言大全_格言网)进行抓包分析 2、请求模块的代码 3、抓包分析人生格言界面 4、获取目录页中各种类型的人生格言链接 5、获取下一页的链接 5、获取人生…...
FastAdmin
PHP 推荐链接FastAdmin禁用模板布局后台不需要验证权限的接口配置 推荐链接 链接目录 FastAdmin 禁用模板布局 /** 在application/common/controller/Backend.php里面的 _initialize() 方法里面有// 如果有使用模板布局if ($this->layout) {$this->view->engine-…...

Java设计模式大全:23种常见的设计模式详解(一)
本系列文章简介: 设计模式是在软件开发过程中,经过实践和总结得到的一套解决特定问题的可复用的模板。它是一种在特定情境中经过验证的经验和技巧的集合,可以帮助开发人员设计出高效、可维护、可扩展和可复用的软件系统。设计模式提供了一种在…...

SaperaCamExpert(相机专家)中文使用指南
参考:SaperaCamExpert中文使用指南.PDF 文章目录 软件介绍安装首次打开资源占用率功能主界面布局菜单栏FileViewPre-Processing:预处理 Tools: 快捷键:新建;打开;保存;帮助Device窗体属性树图像…...
ES鉴权设计以及相关探讨
文章目录 1. es的鉴权设计2. es鉴权应用范围3. es鉴权的常用方法3.1 认证体系3.2 x-pack认证3.2.1 开启并配置 X-Pack 的认证与鉴权3.2.2 默认用户和角色3.2.3 创建用户和角色3.2.4 通过用户名和密码访问es 4. 参考文档 鉴权,分别由鉴和权组成 鉴: 表示…...
为什么SpringBoot胖Jar不好
公平地说,我有时会怀念 JavaEE 流行的日子。 当然,当时的情况很复杂,但整个 JavaEE 平台设计合理,符合企业开发的需要。 我可以很轻松地将当时的 JavaEE 应用服务器与现代 Kubernetes 架构进行比较,后者现在也有同样…...
Java学习笔记2024/2/6
练习三:验证码 需求: 定义方法实现随机产生一个5位的验证码 验证码格式: 长度为5 前四位是大写字母或者小写字母 最后一位是数字 package com.angus.comprehensiveExercise; import java.util.Random; public class test3 {publ…...
2024 高级前端面试题之 前端安全模块 「精选篇」
该内容主要整理关于 前端安全模块 的相关面试题,其他内容面试题请移步至 「最新最全的前端面试题集锦」 查看。 前端安全模块精选篇 1. 代码注入XSS如何攻击如何防御cookie 如何防范 XSS 攻击 2. 跨站请求伪造CSRF3. 浏览器同源策略 SOP4. 跨域资源共享 CORS5. 密码…...

SpringBoot Security安全认证框架初始化流程认证流程之源码分析
SpringBoot Security安全认证框架初始化流程&认证流程之源码分析 以RuoYi-Vue前后端分离版本为例分析SpringBoot Security安全认证框架初始化流程&认证流程的源码分析 目录 SpringBoot Security安全认证框架初始化流程&认证流程之源码分析一、SpringBoot Security安…...

2024美赛预测算法 | 回归预测 | Matlab基于RIME-LSSVM霜冰算法优化最小二乘支持向量机的数据多输入单输出回归预测
2024美赛预测算法 | 回归预测 | Matlab基于RIME-LSSVM霜冰算法优化最小二乘支持向量机的数据多输入单输出回归预测 目录 2024美赛预测算法 | 回归预测 | Matlab基于RIME-LSSVM霜冰算法优化最小二乘支持向量机的数据多输入单输出回归预测预测效果基本介绍程序设计参考资料 预测效…...
test1
1...

远程主机可能不符合 glibc 和 libstdc++ Vs Code 服务器的先决条件
vscode连接远程主机报错,原因官方已经公布过了,需要远程主机 glibc>2.28,所以Ubuntu18及以下版本没法再远程连接了,其他Linux系统执行ldd --version查看glibc版本自行判断。 解决方案建议: 不要再想升级glibc了 问题…...

备战蓝桥杯---数据结构与STL应用(进阶2)
本文将主要围绕有关map的今典应用展开: 下面我用图进行分析: 下面为AC代码: #include<bits/stdc.h> using namespace std; struct Point {int x,y;bool operator < (const Point & r) const {return x < r.x || ( x r.x &a…...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...

UDP(Echoserver)
网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...

多模态大语言模型arxiv论文略读(108)
CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...
IP如何挑?2025年海外专线IP如何购买?
你花了时间和预算买了IP,结果IP质量不佳,项目效率低下不说,还可能带来莫名的网络问题,是不是太闹心了?尤其是在面对海外专线IP时,到底怎么才能买到适合自己的呢?所以,挑IP绝对是个技…...

Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
掌握 HTTP 请求:理解 cURL GET 语法
cURL 是一个强大的命令行工具,用于发送 HTTP 请求和与 Web 服务器交互。在 Web 开发和测试中,cURL 经常用于发送 GET 请求来获取服务器资源。本文将详细介绍 cURL GET 请求的语法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的缩写…...
跨平台商品数据接口的标准化与规范化发展路径:淘宝京东拼多多的最新实践
在电商行业蓬勃发展的当下,多平台运营已成为众多商家的必然选择。然而,不同电商平台在商品数据接口方面存在差异,导致商家在跨平台运营时面临诸多挑战,如数据对接困难、运营效率低下、用户体验不一致等。跨平台商品数据接口的标准…...

Linux入门(十五)安装java安装tomcat安装dotnet安装mysql
安装java yum install java-17-openjdk-devel查找安装地址 update-alternatives --config java设置环境变量 vi /etc/profile #在文档后面追加 JAVA_HOME"通过查找安装地址命令显示的路径" #注意一定要加$PATH不然路径就只剩下新加的路径了,系统很多命…...

[electron]预脚本不显示内联script
script-src self 是 Content Security Policy (CSP) 中的一个指令,它的作用是限制加载和执行 JavaScript 脚本的来源。 具体来说: self 表示 当前源。也就是说,只有来自当前网站或者当前页面所在域名的 JavaScript 脚本才被允许执行。"…...