你真的会udf提权???数据库权限到系统权限 内网学习 mysql的udf提权操作 ??msf你会用了吗???

我们在已经取得了数据库的账号密码过后,我们要进一步进行提取的操作,我们mysql有4钟提权的操作。

udf提权(最常用的)mof提权
启动项提权反弹shell提权操作

怎么获取密码操作:

怎么获取密码,通过sql注入获取这个大家都应该知道了,还有一点就是通过翻阅文件获取比如说mysql数据库

我们可以翻阅下面的这些文件来看账号密码,这些文件都是mysql存储账号密码的文件。

这个是密码找到成功率最高的。

我们来说说mysql提权的前提:

如果这些前提都没有满足的话,你就可以放弃提权操作了。

第一:数据库最高权限的账号密码

第二:secure-file-priv=空

这个第二点是最重要的,这个是导出的dll'文件在进行限制 空就说明是可以进行导出的

不能导出就不能进行提权的操作,secure-file-priv=NULL这样就不能 

或者它会给你限制导出的路径进行操作,这样你也没有办法

show global variables like "secure%";

使用这个来进行查看的操作,看看secure-file-priv=空

然后我们在进行下一步,MySQL数据库默认是不支持外联的。

那就我们就要来说说什么是外联,外联就是外部连接。那我们该怎么进行连接的操作,我们要使用下面的命令来开启外联的功能

如果没有开启外联的操作我们的msf工具都不能进行使用

GRANT ALL PRIVILEGES ON *.*TO'帐@'%'IDENTIFIED BY'密码'WITH GRANT OPTION;填写你得到的账号密码

配置文件怎么改解决问题secure-file-priv=NULL 

 怎么来解决secure-file-priv=NULL的情况,因为我的是本地的操作,所以我可以直接更改配置文件,但是在更改配置文件的时候,要注意,我们会在c盘看见2个mysql数据库的文件,一个是本身的,还要一个phpstudy的,只有phpstudy才是真的,这点要特别的进行注意操作。

这个才是真的我们要更改的配置文件,不要像我一样改半天假的配置文件,还问怎么不可以就是改不对secure-file-priv=NULL这个的操作。

在实际我们怎么办????

我们在实际的时候可以上传大马来手工进行更改配置文件my.ini然后在用命令把服务进行重启的操作。在webshell后台进行命令执行,重启服务的操作。

然后有人说了不支持外部联,我怎么执行这个命令???这点说得好,我们是取得了web权限的,我们使用的后门连接程序,比如说哥斯拉,蚁剑,这些,本身程序就在它的服务器上面,所以是可以进行连接操作的。

然后我们就可以连接我们的第三方软件比如说navicat来进行操作。

账号密码也就是你在取得web权限过后翻阅文件找到的,或者你通过其他的途径来找到的。

连接上了我们还要来判断mysql版本的问题。也可以在本地判断。

为什么要判断mysql版本

在MySQL 5.1版本及以后的环境下,udf提权时需要将udf.dll导出到mysql安装目录\lib\plugin\目录下。

在小于5.1的版本我们就在c:/windows或者system32来进行导出操作

如果目录没有的时候,我们要进行创建这个目录该怎么进行操作 ntfs的数据流进行操作

在文件上传的时候使用过 ::$data

我们在创建的时候是如果没有权限手工创建的时候,在使用下面的这个命令进行创建的操作 

select'xxx'into dumpfile 'C:\MySQL\lib\plugin::$INDEX_ALLOCATION';

我们要根据实际的情况来进行更改路径的操作

然后我们在来使用命令来看看这个目录创建好没有

show variables like 'plugin%';

 

这里看见好了,但是可能是表面现象,我们在要我们的webshell后台看见有这个目录了才是真的好了,我就在这里被折磨了半天的操作。

然后我们把文件目录弄好了过后,我们可以直接上工具。msf来进行提取的操作。

msf工具的使用:

使用模块:use exploit/multi/mysql/mysql_udf_payload

这个模块是直接使用的不用像以前监听让它上线然后在进行操作。

设置payload

RHOSTS 攻击mysql主机

LHOST 0.0.0.0 全部都可以进行访问

执行:set username 数据库用户名

    set password 数据库密码

    set rhosts 目标主机地址

 然后我们在进行run(开始攻击)

攻击完成,我们在看看我们生成的dll文件

使用的命令是 

select * from mysql.func;

我来说说直接生成的这个是不能进行使用的。

我们要自己在来生成一个来与这个dll文件进行绑定从而进行命令的输出。

下面来看看命令是:

create function sys_eval returns string soname "SSYOuXFD.dll";进行绑定的操作

 

然后我们就可以使用这个用户名来进行命令执行的操作了:

 总结: 

 我们的udf提权和反弹shell提权是类似的,反弹shell就是直接执行命令来建立这些操作,命令是写好了的通过编码进行操作的,也是创建dll文件。与udf提权是类似的。

在实际的提权操作还有很多妨碍我们的,我们会遇见很多的,导致提权不成功的操作。

mysql的udf提权前提:

1:要有数据库密码和账号

2:secure-file-priv=空或者写入的路径各个好是我们要写的地方

后面还会把sqlsever和orcal已经redis,postgre和利用第三方应用提权操作一起在写一个文章。

现在埋下伏笔:

postgre数据库提权就是利用18年和19年的2个漏洞

其实也不能说是提权吧自己感觉,只是利用了漏洞进行了任意命令执行操作。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python-数据分析组合可视化实例图【附完整源码】

数据分析组合可视化实例图 开篇:应女朋友的要求,于是写下了这篇详细的数据可视化代码及完整注释 一:柱状图、折线图横向组合网格布局 本段代码使用了pyecharts库来创建一个包含多个图表(柱状图、折线图)和网格布局的…

第一周:李宏毅机器学习笔记

第一周学习周报 摘要一、机器学习基础理论1. 什么是机器学习?2. 机器学习“寻找”的函数有哪些类型?3. 机器学习中机器如何“寻找”函数?三步走3.1 第一步:设定函数的未知量(Function with Unknown Parameters&#xf…

Vue3 按钮根据屏幕宽度展示折叠按钮

文章目录 一、组件封装二、使用三、最终效果(参考)四、参考 一、组件封装 ButtonFold.vue 1、获取父组件的元素,根据元素创建动态插槽 2、插槽中插入父元素标签。默认效果和初始状态相同。 3、当屏幕宽度缩小时,部分按钮通过 dropdown 的方式展示出来&a…

springboot使用测试类报空指针异常

检查了Service注解,还有Autowired注解,还有其他注解,后面放心没能解决问题,最后使用RunWith(SpringRunner.class)解决了问题!! 真的是✓8了,烦死了这个✓8报错!

C语言 | Leetcode C语言题解之第200题岛屿数量

题目: 题解: void cleanLand(char** grid, int gridSize, int ColSize,int row,int column) {if(grid[row][column] 1){//不等于1则清零grid[row][column] 0;}else{//不等于1则返回return ;}int newRow;int newColumn;//上if(row ! 0) //还能上{ne…

每天五分钟计算机视觉:人体姿势识别

本文重点 人体姿势识别是计算机视觉领域的一个重要研究方向,旨在通过图像或视频数据自动检测并识别出人体的各种姿势和动作。随着深度学习技术的快速发展,基于神经网络的方法在这一领域取得了显著进展。神经网络,特别是卷积神经网络(CNN)和循环神经网络(RNN),因其强大…

基于YOLOv9的PCB板缺陷检测

数据集 PCB缺陷检测,我们直接采用北京大学智能机器人开放实验室数据提供的数据集, 共六类缺陷 漏孔、鼠咬、开路、短路、杂散、杂铜 已经对数据进行了数据增强处理,同时按照YOLO格式配置好,数据内容如下 模型训练 ​ 采用YOLO…

idea乱码问题解决

乱码问题产生的根本原因 数据的编码和解码使用的不是同一个字符集 使用了不支持某个语言文字的字符集 Tomcat控制台乱码 在tomcat10.1.7这个版本中,修改 tomcat/conf/logging.properties中,所有的UTF-8为GBK即可 sout乱码问题,设置JVM加载.class文件时使用UTF-8字符集 设置虚…

RedisAtomicInteger并发案例

🍰 个人主页:__Aurora__ 🍞文章有不合理的地方请各位大佬指正。 🍉文章不定期持续更新,如果我的文章对你有帮助➡️ 关注🙏🏻 点赞👍 收藏⭐️ RedisAtomicInteger 提供了对整数的原子性操作&a…

【SkiaSharp绘图12】SKCanvas方法详解(一)清空、裁切区域设置、连接矩阵、注释、弧与扇形、图集、九宫格绘图、圆

文章目录 SKCanvas 方法Clear 清空ClipPath/ClipRect/ClipRegion/ClipRoundRect 设置裁切区域Concat 连接矩阵DrawAnnotation绘制注释DrawArc绘制椭圆弧、扇形DrawAtlas绘制图集(一个图像、多个区域、多个缩放、一次绘制)DrawBitmap绘制图像DrawBitmapNinePatch九宫…

深度学习评价指标:Precision, Recall, F1-score, mIOU, 和 mDice

在深度学习和机器学习中,评价模型性能是至关重要的一环。本文将详细讲解一些常见的评价指标,包括精确率(Precision)、召回率(Recall)、F1-score、平均交并比(mIOU)和平均Dice系数&am…

5.6 0-1背包问题

#include<iostream> #include<string> #include<stdlib.h> #include<bits/stdc.h> using namespace std;int c;//背包容纳的重量 int n;//物品数量 int cw;//当前重量 int cv;//当前价值 int bestv;//当前最优价值 int x[100]; int bestx[100]; struct…

Linux 交叉编译工具链格式 sqlite3编译示例

1、交叉编译工具链 1.1 定义 交叉编译工具链是一个由编译器、连接器和解释器组成的综合开发工具集&#xff0c;它允许开发者在一个平台上&#xff08;例如高性能的PC或服务器&#xff09;编译生成另一个平台&#xff08;例如嵌入式系统或不同的操作系统和硬件架构&#xff09…

pyqt 文件浏览列表视图和图标视图

pyqt 文件浏览列表视图和图标视图 目的效果代码 目的 使用pyqt实现文件浏览列表视图和图标视图&#xff0c;像电脑文件浏览一样。如下图所示。 效果 代码 import sys from PyQt5.QtWidgets import QApplication, QMainWindow, QVBoxLayout, QWidget, QToolBar, QAction, Q…

03-权限绕过漏洞

一、基础知识 水平越权 水平越权是指用户在系统中拥有超出其权限范围的访问权限。这可能导致安全漏洞和潜在的风险&#xff0c;因为用户可以访问他们不应该有权访问的敏感信息或执行他们不应该执行的操作。 垂直越权 垂直越权是指用户或攻击者利用系统中的漏洞或错误配置&a…

Orangepi Zero2使用外设驱动库wiringOP配合定时器驱动SG90舵机

目录 一、舵机的基本认知和硬件接线 1.1 舵机的基本认知&#xff1a; 1.2 硬件接线&#xff1a; 1.3 怎么控制舵机旋转不同的角度&#xff1a; 二、Linux定时器 2.1 定时器setitimer()函数原型和头文件&#xff1a; 2.2 信号处理函数signal()原型和头文件&#xff1a; 2…

<电力行业> - 《第10课:变电》

1 变电 变电环节&#xff0c;顾名思义就是改变电压的环节&#xff0c;主要是在变电站和变电所完成的。变电站和变电所主要区别在于&#xff1a;变电站比变电所更大。 发电厂的变压器和配电变压器也属于“变电”&#xff0c;但我们在说电网环节时&#xff0c;变电特指电网公司…

【STM32嵌入式系统设计与开发---传感器拓展】——1_4_标准库FreeRTOS移植实验

目录 雅俗理解源码下载链接知识拓展步骤1&#xff1a;stm32f103vet6移植freeRTOS步骤:&#xff08;1&#xff09;准备开发环境&#xff08;2&#xff09;添加FreeRTOS移植 致谢 雅俗理解 雅&#xff1a;FreeRTOS是一个开源的实时操作系统&#xff08;RTOS&#xff09;&#xf…

RabbitMQ-交换机的类型以及流程图练习-01

自己的飞书文档:‌‍‬‍‬‍​‍‬​⁠‍​​​‌⁠​​‬‍​​​‬‬‌​‌‌​​&#xfeff;​​​​&#xfeff;‍​‍​‌&#xfeff;⁠‬&#xfeff;&#xfeff;&#xfeff;​RabbitMQ的流程图和作业 - 飞书云文档 (feishu.cn) 作业 图片一张 画rabbit-mq 消息发…

测试开发工程师需要掌握什么技能?

测试开发工程师是软件开发中至关重要的角色之一。他们负责编写、维护和执行自动化测试脚本、开发测试工具和框架&#xff0c;以确保软件的质量和稳定性。为了成为一名优秀的测试开发工程师&#xff0c;你需要掌握以下技能&#xff1a; 1. 编程技能&#xff1a; 作为测试开发工…