0x01 PhpMyadmin
Phpmyadmin是一款以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,通过提供的mysql数据库用户账号和密码对所管理的数据库实施操作。在渗透过程中,一旦获取其mysql账号和对应的密码,轻者获取其账号所管理数据库,重者可以配合其它漏洞获取webshell权限和系统权限。
0x02 PhpMyadmin各版本漏洞
一、影响版本:3.5.x < 3.5.8.1 and 4.0.0 < 4.0.0-rc3 ANYUN.ORG
概述:PhpMyAdmin存在PREG_REPLACE_EVAL漏洞
利用模块:exploit/multi/http/phpmyadmin_preg_replace
CVE: CVE-2013-3238
二、影响版本:phpMyAdmin v3.5.2.2
概述:PhpMyAdmin存在server_sync.php 后门漏洞
利用模块:exploit/multi/http/phpmyadmin_3522_backdoor
CVE: CVE-2012-5159
三、影响版本: 2.11.x < 2.11.9.5 and 3.x < 3.1.3.1;
概述:PhpMyAdmin配置文件/config/config.inc.php存在命令执行
利用模块:exploit/unix/webapp/phpmyadmin_config
CVE: CVE-2009-1151
四、影响版本:2.11.3 / 2.11.4
利用方法:用户名处写入’localhost’@’@”则登录成功。 (注意全部是英文标点符号,最后一个为英文双引号)
0x03 附上几个php爆绝对路径的办法
1、单引号爆路径
直接在URL后面添加单引号,要求单引号没有被过滤(gpc=off)且服务器默认返回错误信息。12EG:www.xxx.com/news.php?id=149'2、错误参数值爆路径
将要提交的参数值改成错误值,比如-1。单引号被过滤时不妨试试。12EG:www.xxx.com/news.php?id=-13、Google爆路径
结合关键字和site语法搜索出错页面的网页快照,常见关键字有warning和fatal error。注意,如果目标站点是二级域名,site接的是其对应的顶级域名,这样得到的信息要多得多。123EG:site:xxx.com warningsite:xxx.com "fatal error"4、测试文件爆路径
很多网站的根目录下都存在测试文件,脚本代码通常都是phpinfo(),可以先使用御剑等目录扫描工具进行扫描。1234567EG:www.xxx.com/test.phpwww.xxx.com/ceshi.phpwww.xxx.com/info.phpwww.xxx.com/phpinfo.phpwww.xxx.com/php_info.phpwww.xxx.com/1.php5、phpmyadmin爆路径
一旦找到phpmyadmin的管理页面,再访问该目录下的某些特定文件,就很有可能爆出物理路径。12345EG:www.xxx.com/phpMyAdmin/libraries/select_lang.lib.phpwww.xxx.com/phpMyAdmin/darkblue_orange/layout.inc.phpwww.xxx.com/phpMyAdmin/index.php?lang[]=1www.xxx.com/phpmyadmin/themes/darkblue_orange/layout.inc.php
6、配置文件找路径
如果注入点有文件读取权限,就可以手工load_file或工具读取配置文件,再从中寻找路径信息(一般在文件末尾)。12345678910Windows:c:\windows\php.ini php配置文件c:\windows\system32\inetsrv\MetaBase.xml IIS虚拟主机配置文件Linux:/etc/php.ini php配置文件/etc/httpd/conf.d/php.conf/etc/httpd/conf/httpd.conf Apache配置文件/usr/local/apache/conf/httpd.conf/usr/local/apache2/conf/httpd.conf/usr/local/apache/conf/extra/httpd-vhosts.conf 虚拟目录配置文件7、nginx文件类型错误解析爆路径
要求Web服务器是nginx,且存在文件类型解析漏洞。有时在图片地址后加/x.php,该图片不但会被当作php文件执行,还有可能爆出物理路径。12EG:www.xxx.com/top.jpg/x.php8、通过mysql查询
select @@datadir;0X04 获取PhpMyadmin信息
想要利用PhpMyadmin的漏洞,那么首先就要知道那些网站或者URL中存在PhpMyadmin,这个是重中之重,除了谷歌和百度,这里只要介绍两个很重要的搜索引擎Zoomeye和Shodan。
Shodan
Shodan被称为“世界上最可怕的搜索引擎”,Shodan通过来自各种设备的HTTP header以及其它标志性信息进行检索。Shodan可以收集这些设备的信息,并根据其所属国家、操作系统、品牌以及许多其它属性进行分类。而谷歌、百度等搜索引擎通过引用返回的内容进行检索,是网站内容搜索。我们可以注册账号进行搜索,进行免费的使用,Shodan搜索方法比较简单,大家可以自行尝试。
- 1.1 关键字搜索
搜索方法比较简单,直接在搜索框输入“phpmyadmin”,系统就会自动进行搜索。 - 1.2 多关键词搜索
在shodan搜索引擎中默认按照“TOP COUNTRIES”、“TOP SERVICES”、“TOP ORGANIZATIONS”、“TOP OPERATINGSYSTEMS”和“TOP PRODUCTS”五种类型进行显示,免费用户只能搜索前五页结果。不登录的话,只能看到一些简单的结果。
我们可以在搜索关键字中加入国家进行搜索,也可以在左边的地图上进行点选。例如以下关键字:phpMyAdmin country:”CN” product:”Apache httpd” 表示搜索关键字“phpMyAdmin”,国家为中国,产品类型为“Apachehttpd”。 - 1.3 搜索结果
搜索结果记录中可以看到每一个记录中都会包含“phpMyAdmin”,然后在下面有一个Details,单击该链接会显示有关该IP端口开放等详细信息,在该信息中默认还会以地图方式显示该IP可能的地理信息。
ZoomEye
Zoomeye是知道创宇开放了他们的海量数据库,对之前沉淀的数据进行了整合、整理,打造了一个名符其实的网络空间搜索引擎,除了联网设备还可搜索网站组件,可以用来对web服务进行细节分析。
- 1.1 普通搜索
直接主页面输入我们想要搜索的内容。 - 1.2 高级搜索
比如discuz的一个古老的漏洞,discuz X1.5版本,存在sql注入,可以利用sql注入上传文件,最终拿下服务器。
经过上面两个搜索引擎,我们可以找到一系列存在phpmyadmin的网站。
0x05 小结
经过上面的几步,我们已经得到了我们的目标,那么就可以进行下面的渗透操作了。