• 通过Mysql提权的几种姿势


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

     

    一、UDF提权

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

    基本步骤:

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

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

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

     

    以下按照步骤进行记录

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

     

    第二步:导出udf

    这里已经导出成功。

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

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

     

     

    第三步:创建cmdshell:

     

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

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

     

     

    二、mof文件提权

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

     

    Mof文件源码:

    创建账户

    添加到管理员组。

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

     

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

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

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

     

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

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

     

    三、利用远程管理工具

  • 相关阅读:
    用addOnGlobalLayoutListener获取View的宽高
    用addOnGlobalLayoutListener获取View的宽高
    用addOnGlobalLayoutListener获取View的宽高
    ElasticSearch封装查询、多条件查询、模糊查询工具类
    java操作ElasticSearch(es)进行增删查改操作
    如何构建尽可能小的容器镜像?
    perl 合并日志处理+并发管理器
    NoSQL还是SQL?这一篇讲清楚
    perl 跨行匹配 /s
    perl 改变换行符 合并日志
  • 原文地址:https://www.cnblogs.com/N0r4h/p/12890919.html
Copyright © 2020-2023  润新知