Sine安全-网络安全背后的巨人,提供服务器安全_服务器维护_网站安全解决方案

phpmyadmin漏洞利用以及提权上传webshell



       phpmyadmin是很多网站用来管理数据库的一个系统,尤其是mysql数据库管理的较多一

些,最近phpmysql爆出漏洞,尤其是弱口令,sql注入漏洞,都会导致mysql的数据账号密码被

泄露,那么如何通过phpmyadmin来上传提权webshell呢?

 
 
首先我们来搭建一下PHP+mysql环境,linux centos系统,PHP的版本是5.3,mysql版本是5.6,

linux系统64位,apache 2.2版本,部署在新开的一台阿里云的按量付费ECS服务器。

 
 
phpmyadmin漏洞利用
 
 
利用mysql数据库select into outfile方式来写入webshell到网站的根目录下,该漏洞的利用前提

是必须知道网站的当前路径是多少,如何知道网站的当前路径,这个要通过爆出网站的错误来进

行查看绝对的路径。使用下面的代码:

 
select load_file('/home/www/safe.php')
 
select '<?php eval($_POST[sine]); ?>' into outfile '/home/www/safe.php';
 
执行这个语句就可以生成一句话的木马后门。
 
也可以使用写数据库日志的方式来进行漏洞的利用,前提是mysql的版本都是5.0以上的,以及日

志开启,如果没有开启日志功能,我们需要在phpmyadmin里进行开启,语句如下:set global

gener al_log = "ON";这个数据库语句就是开启日志的功能。查看当前数据库是否开启,可以使用

语句查看到SHOW VARIABLES LIKE 'general%'就可以看到是否开启日志了,日志开启成功,那

么我们把日志的文件改为php,这样就可以记录日志到php文件当中去了,我们在操作语句的时候

可以把一句话网站后门代码写到日志文件当中去进行执行。

 
 
关于phpmyadmin网站的绝对路径获取,可以使用单引号来进行错误测试,在ID值后门加上单引

号,有些网站就会爆出绝对的网站路径,再一个使用错误的赋值比如ID=1是正常,那么我们可以

使用ID=-1,来进行报错,也可以使用搜索引擎来查看网站的快照,看看是否存在一些错误的快照

收录,很多网站会留下一些测试的代码,比如phpinfo这样的代码,文件地址是text.php 1.php

phpinfo.php等待的文件。


 
以上就是phpmyadmin漏洞利用,以及如何提权拿webshell的一些利用技巧,关于phpmyadmin

漏洞的修复
,建议管理员关闭掉phpmyadmin的对外访问,只允许在服务器里打开phpmyadmin

的界面,外网无法打开
。对网站的根目录部署防篡改安全防护,禁止新增PHP文件。
 
分享: