php数据库提权,mysql 提权

如何通过mysql提权获得flag值

利用mysql提权的前提就是,服务器安装了mysql,mysql的服务没有降权,(降权也可以提,没降权的话就最好了),是默认安装以系统权限继承的(system权限). 并且获得了root的账号密码

专注于为中小企业提供网站建设、成都做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业宁波免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

先来说说我是咋判断一台windows服务器上的mysql有没有降权的. 0.0如果能运行cmd的话,我会先看看有啥用户先,如果有mysql mssql这样用户名,或者类似的.我就会猜测他的mssql服务或者mysql的已经被降权运行了.但并不代表不能提权,只要能运行cmd..

接着说一下,判断服务器上是否开启了mysql服务. 一般在拿到webshell的时候,都会扫描一下端口,如果开启了3306端口的话,我会telnet 过去看看- -.忘了有无回显~(提权的时候,大多数 3306端口的都是不支持外链的.呃,我遇到的大多数是这样, 有root可以开启外链.) 当然也有一些管理员会把mysql的默认端口改掉.另外一个判断的方法就是网站是否支持php,一般支持php的网站都用mysql数据库的.php+mysql啊,好基友啊好丽友- -~(当然,也有一些网站用其他的一些更专业的数据库).

再说说如何查找mysql root的密码.

MYSQL所有设置默认都保存在“C:\Program Files\MYSQL\MYSQL Server 5.0\data\MYSQL”中,也就是安装程序的data目录下,如图2所示,有关用户一共有三个文件即user.frm、user.MYD和 user.MYI,MYSQL数据库用户密码都保存在user.MYD文件中,包括root用户和其他用户的密码。

User.frm user.myd User.myi

这几个文件.在webshell下,下载下来,解密.用c32asm或者其他的一些文本编辑器user.MYD打开.

A30F80616A023BDFC9

复制到cmd5.com那查一下,或者用cain爆破一下.

打开后使用二进制模式进行查看,如图所示,可以看到在root用户后面是一串字符串,选中这些字符串将其复制到记事本中,这些字符串即为用户加密值,即A30F80616A023BDFC9 。

具体使用cain破解的,我这就不演示了

还有一个查找的方法就是,一些php网站安装的时候用的是root用户,例如dedecms,他数据库安装的信息就是写在data/common.inc.php

php提权能控制整个主机吗,如同从本机登陆远程3389主机

2/4分步阅读

远程连接服务器之前首先需要把基本的准备工作做好,比如首先在服务器创建一个新的网站,并把相应的网站内容上传好。

我这里以wdcp linux服务器为例子,如下图所示创建一个新的网站

2/3

通过flashfxp等软件将网站上传至服务器

3/3

进入phpmyadmin,导入sql文件

连接远程数据库

1/4

选择该数据库,然后点击权限,可以看到如下图所示,然后点击下方添加新用户

2/4

然后输入新用户信息:

1、输入用户名

2、主机:选择任意主机,然后输入 % 

(开启mysql本身的远程连接,简单说,就是在创建mysql用户时的主机名,使用IP,域名,或%号就可以,"%"代表所有,也就是任何人和机器都可以连接,只要有用户密码,也可以针对IP,域名来做限制)

3、生成密码

4、全局权限:全选

5、最后执行

3/4

通过以上步骤就生成了一个可以远程访问的数据库,然后通过更改网站配置文件,php文件配置路径如下图,选择database.php,然后打开文件

webshell提权CMD添加用户无回显、数据库是MYSQL、如果是权限不够、具体该怎么做?求个详细教程。

一般windows中,apache下的php默认才具有system权限,可以直接加用户,jsp马的权限一般也会是system,其他的需要自己提升权限,mysql可以尝试找数据库root密码,进行udf提权(百度udf提权即可找到),还有就是本地溢出,win下的用pr,烤肉,linux下根据版本在网上找相应的exp,祝你好运


名称栏目:php数据库提权,mysql 提权
本文网址:http://myzitong.com/article/hecocd.html