通过Mysql提权的几种姿势

本文记录利用mysql数据库,在拿到shell之后进行提权的两种方法。

一、UDF提权

原理:UDF是mysql的一个拓展接口,UDF(Userdefined function)让用户通过该接口可以自定义mysql函数。UDF 定义需要DLL动态链接库文件支持。

基本步骤:

1、导出udf.dll文件到指定目录(有些webshell集成,直接导 出即可,没有,则需要上传)

2、基于udf.dll创建自定义函数cmdshell

3、利用自定义函数,执行高权限cmd命令

以下按照步骤进行记录

第一步:首先我们上传UDF提权的马到服务器,然后输入对应用户名密码,表名选用mysql,

通过Mysql提权的几种姿势

第二步:导出udf

通过Mysql提权的几种姿势

这里已经导出成功。

需要注意,针对mysql不同的版本,导出的路径也不相同:

通过Mysql提权的几种姿势

这里在lib下需要创建对应的目录,即可导出成功。

第三步:创建cmdshell:

通过Mysql提权的几种姿势

第四步:通过创建的cmdshell来进行创建用户并且添加到管理员组的操作:

通过Mysql提权的几种姿势

再通过马集成的命令可以查看用户已经添加:

通过Mysql提权的几种姿势

二、mof文件提权

mof提权原理就是把一个mof文件上传到c:/windows/system32/wbem/mof/下,然后系统会特定的时间就去执行一次,进而创建用户。

Mof文件源码:

通过Mysql提权的几种姿势

创建账户

通过Mysql提权的几种姿势

添加到管理员组。

注意这是分成两个mof文件执行了

第一步:借助webshell把mof文件上传到服务器上

通过Mysql提权的几种姿势

第二步:通过SQL语句把文件改名放到指定目录下

select load_file('C:/PhpStudy/PHPTutorial/WWW/pikachu/test创建账号.mof') into dumpfile 'c:/windows/system32/wbem/mof/nullevt.mof'

通过Mysql提权的几种姿势

通过Mysql提权的几种姿势

第三步:等待一会,用户就会创建

通过Mysql提权的几种姿势

第四步:用相同的操作把第二个mof文件也就是加到管理员组上传上去就可以

三、利用远程管理工具

上一篇:动态WebService方法


下一篇:PHP 格中方法