22、Raven2

难度 中

目标 root权限 + 4个flag

使用Virtualbox启动

kali 192.168.86.105 靶机 192.168.86.106

信息收集

看到111端口有一个rpc相关的东西,去网上查看了一下是什么服务

通过在网上搜索发现这是一个信息泄露的漏洞,上面的这个端口其实就是泄露的端口和服务,但是这里明显没有看出来有什么重要的服务,那个36623也并没有什么重要的信息。

因为不确定36623端口的服务所以先看看80端口

看着是一个安全团队的公司主页,发现有个注册登录结果是假的

最下面有个邮件发送的输入框,尝试发送也没有反应,抓包看是发向一个域名猜测可以需要做域名解析。

然后点击blog是wordpress的登录页面,但是页面资源都没有加载出来

抓包发现访问 raven.local 域名失败,于是编辑一下/etc/hosts文件修改一下域名解析然后再访问就正常了

点击contact有几个输入功能点,点击后发现mail.php都没有。。。假的功能点

在没有过多信息下先扫一扫目录,用ip和域名都扫一下

看到有泄露DS_Store,使用工具ds_store_exp-master可以将泄露的内容下载

但是下载后没有下载到有用的源码文件,不过倒是发现了这个Security - Doc目录,这个应该是一个安装手册

然后使用域名又扫了一遍扫出了vendor

发现了目录遍历

点了第二个PATH发现了一个flag。。。

然后里面的全都翻了一番,大概是一个email的开源的项目,在github上面有的,其中发现了还有个列出了此项目存在的CVE漏洞。全都是英文人要看晕了。。。

同时这个页面还告诉了我们版本号

突破边界

刚好小于5.2.18,说不定存在CVE-2016-10033,或者直接在漏洞库中搜索一下这个PHPMailer项目有没有什么漏洞

在kali里面看一下

上面这几个都是CVE-2016-10033漏洞的利用,三个试了都没直接成功。然后去网上找了一下使用方法发现需要修改内容

使用的是40874.py这个脚本

这里目标是contact.php,是这个页面触发的漏洞(这个地方指定了漏洞出现的页面是contact.php页面我一开始也不理解,然后我拿到shell之后进去看发现有个contact.zip能下载contact.php。里面有提示,同时可以参考 PHPMailer 命令执行漏洞(CVE-2016-10033)复现 - Fram3 - 博客园 可以看到漏洞出现的地方是有一个发送邮件的输入框和contact符合特征。)

修改之后还是无法正常的上传文件,然后又执行看了一下wp发现应该是编码的问题

在代码前面添加这些东西

#!/usr/bin/python3

# -*- coding: utf-8 -*-

然后执行的使用直接./40974.py

这里我换了个后门的名字为666.php

访问一下

成功的反弹了shell,而且是python反弹的比较好的shell

提取

查看一下passwd发现steven和michael连两个用户可以登录,并且都有自己的目录。先去两个家目录看了一下发现没啥东西,先上信息收集脚步收集一下信息

收集到wp_config中的一些数据库的账号密码

库名 wordpress

登录名 root

密码 R@v3nSecurity

以及发现版本可以使用脏牛提权

同是发现了var目录下面的flag2

但是使用脏牛提权失败了,不知道为什么两个exp都使用了执行结果都说成功的创建了新的账号密码实际并没有。。。

那么还有数据库没有查看,我是挺怀疑数据库中存在flag的所以需要去看一看

先查看了一下数据库是否开启,没想到数据库是以root权限启动的,说不定可以用来提权

简单看了一下没有flag,那么开始尝试使用mysql进行提权

使用UDF提权

首先查看版本 MySQL / MariaDB 版本 4.X 和 5.X 。

查看一下路径的写入权限

show variables like "%secure_file_priv%"; 

没啥问题,这里使用msf中自带的文件

复制一下文件

c文件给出了编译使用的方法

在kali本地生成so文件

然后再次进入mysql进行操作,这里注意一下插件的路径,这里一开始没注意然后后面链接过去发现没写对,可以先使用

 show variables like "%plugin%";

查看一下路径

然后就可以利用这个函数进行命令执行了,可以使用SUID留下后门

 

gcc -g -c raptor_udf2.c
gcc -g -shared -Wl,-soname,raptor_udf2.so -o raptor_udf2.so raptor_udf2.o -lcmysql -u root -p
use mysql;
create table foo(line blob);
insert into foo values(load_file('/tmp/raptor_udf2.so'));
select * from foo into dumpfile '/usr/lib/mysql/plugin/raptor_udf2.so';
create function do_system returns integer soname 'raptor_udf2.so';
select * from mysql.func;
select do_system('chmod u+s /usr/bin/find');
exit

成功提权

find . -exec '/bin/sh' \;

拿到flag4

好像还差一个flag3,用命令找了一圈没找到不知道藏到那个里面去了不找了。

后记:

        第一次在linux使用UDF提权,也算是比较有收获了,完整的完成了整个的提权过程,还好没有遇到什么环境的问题要是在本机编译的so文件放到靶机上用不了就真的寄了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/147987.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【Spring 底层原理】手搓一个Spring框架

文章目录 准备工作Spring 框架到底在干啥?几个概念辨析注解的定义自定义核心注解配置类启动类辅助类 Spring 容器XxxAware 回调机制初始化机制前置、后置处理器完整的容器代码源码下载 最近工作接触到的知识比较底层,因此为了突破瓶颈,彻底搞…

ubuntu+MobaXterm+ssh+运行Qt(成功版)

点击上方"蓝字"关注我们 01、ubuntu连接SSH >>> 通过串口工具连接ubuntu 登录 解决连接不上的问题 检查 SSH 服务:确保目标机器上 SSH 服务已启动。你可以在目标机器上运行以下命令: sudo systemctl status ssh 如果没有运行,可以使用以下命令启动 SSH …

英特尔AI加速器Gaudi 3下周发布,挑战NVIDIA统治地位!

英特尔正稳步推进其2024年计划,备受瞩目的AI加速器Gaudi3预计将于下周震撼登场。这款被誉为英特尔AI英雄的产品,专注于处理大规模训练和推理任务,拥有无与伦比的扩展能力。面对市场对高效能半导体的旺盛需求,英特尔首席执行官帕特…

FX5 CPU模块和以太网模块的以太网通信功能

FX5 CPU模块和以太网模块的以太网通信功能的概要如下所示。 CPU模块的内置以太网端口的通信规格如下所示。 1、与MELSOFT的直接连接 不使用集线器,用1根以太网电缆直接连接以太网搭载模块与工程工具(GX Torks3)。无需设定IP地址,仅连接目标指定即可进行…

无服务器计算构建人工智能管理区块链系统

图片发自简书App 图片发自简书App 本发明属于网络版权管理技术领域,特别涉及一种以交易信息作 为唯一标准发行虚拟币的区块链系统。 背景技术 数字代币如比特币、以太坊等是区块链技术的实现方式之一,目 标是取代法定货币流通,通过“挖矿”的…

前端-js例子:收钱转账

支付宝转账 在这里用到周期定时器setInterval(function,time),设置达到目标钱数时停止定时器。 点击转账按钮时,开始函数显示。 同时要确定输入框里输入的是数字。(有一定容错) window.onloadfunction(){var btn document.que…

什么是慢充优惠话费充值api?如何选择平台

一、话费充值api的定义 话费充值api是一种能够让开发者将话费充值功能集成到自己的平台的接口。通过接入话费充值api接口,就能够实现话费充值平台的搭建,从而为用户提供话费充值服务,这一接口主要适用于对话费充值有长期稳定需求的企业或者商…

K8s容器运行时,移除Dockershim后存在哪些疑惑?

K8s容器运行时,移除Dockershim后存在哪些疑惑? 大家好,我是秋意零。 K8s版本截止目前(24/09)已经发布到了1.31.x版本。早在K8s版本从1.24.x起(22/05),默认的容器运行时就不再是Doc…

排序-----归并排序(递归版)

核心思想:假设数组前后两部分各自有序,然后各定义两个指针,谁小谁放到新开辟的数组里面,最后把新开辟的数组赋值给原数组就完成了。要使前后两部分有序就采用递归的方式,不断往下划分块,最后一层划分为两个…

01 基础request

目录 类 WxRequest 的定义 静态属性 default 构造函数 constructor 方法 request HTTP 方法封装 创建 WxRequest 实例并导出 完整代码: 类 WxRequest 的定义 创建一个 WxRequest 类包含一个静态属性 default 和几个方法,用于处理网络请求。 静态…

【后端开发】JavaEE初阶—Theard类及常见方法—线程的操作(超详解)

前言: 🌟🌟本期讲解多线程的知识哟~~~,希望能帮到屏幕前的你。 🌈上期博客在这里:【后端开发】JavaEE初阶—线程的理解和编程实现-CSDN博客 🌈感兴趣的小伙伴看一看小编主页:GGBondl…

计算机毕业设计之:基于深度学习的路面检测系统(源码+部署文档+讲解)

博主介绍: ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台…

鸿蒙OpenHarmony【轻量系统内核扩展组件(CPU占用率)】子系统开发

基本概念 CPU(中央处理器,Central Processing Unit)占用率分为系统CPU占用率和任务CPU占用率。 系统CPU占用率:是指周期时间内系统的CPU占用率,用于表示系统一段时间内的闲忙程度,也表示CPU的负载情况。系…

INIT与init_array

INIT与init array 1.so执行JNI_OnLoad之前,还会执行俩个构造函数init 和init array 在so加载时候有这个过程: .init -> .init array -> JNI_Onload -> java_com_xxx 在脱壳的过程中会在一些系统级的.so中下断点比如:fopen&#x…

GUI编程19:贪吃蛇小游戏及GUI总结

视频链接:21、贪吃蛇之界面绘制_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1DJ411B75F?p21&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5 1.游戏中用的的图片素材 1.贪吃蛇游戏的主启动类StartGame; package com.yundait.snake;import j…

缓存的思考与总结

缓存的思考与总结 什么是缓存缓存命中率数据一致性旁路模式 Cache aside双写模式直写模式 write through异步写 Write Behind 旁路和双写 案例 新技术或中间的引入,一定是解决了亟待解决的问题或是显著提升了系统性能,并且这种改变所带来的增幅&#xff…

【开源服务框架】Dubbo

🎄欢迎来到边境矢梦的csdn博文🎄 🎄本文主要梳理Java面试中开源服务框架Dubbo会涉及到的知识点 🎄 🌈我是边境矢梦,一个正在为秋招和算法竞赛做准备的学生🌈 🎆喜欢的朋友可以关注一…

GAMES101(15节)

Irradiance辐射度量学 辐射度量学在渲染领域,可以帮助理解基于物理的光照模型 radiant energy辐射能量Q,累计总能量(单位J joule焦耳),就像太阳能板,光照时间越长接收能量越多,收到的能量总和…

jetlinks物联网平台学习2(加盐算法登陆)

加盐算法 加盐算法加密验证密码是否正确 对于传统的MD5加密,比更传统的直接保存账号密码稍微安全一点。 md5加密是一种hash算法 比如对于123456来说,md5算法结果一定是e10adc3949ba59abbe56e057f20f883e 这个结果是固定的。于是有的人准备一张彩虹表 预先…