PHPmyadmin后台文件包含漏洞
环境搭建:因为是新手,完全没有经验。。。弄了好长时间。。一开始想在本机搭建环境,于是上网上下载了一个phpmyadmin,然后下载一个phpMyAdmin-4.8.1实验,但是出现语法错误(心态炸了)。。。。
然后只能够下一个版本低的试试,于是下载了一个2016的phpstudy,然后就想放虚拟机(2003)试试,然后又炸了,因为这个版本的phpstudy需要php5.5以上,而php5.5以上不支持2003和xp了。。。。最后只能回到本机测试,幸好成功了。。(不然心态又炸了)。。
下面进入正题:
此漏洞源于phpmyadmin中的index.php,具体大约在50行左右:
漏洞源码:
以上进行一下分析:
1.传入的target不能为空
2.必须是一个字符串
3.不能以index开头
4.不能再数组target_blacklist中
5.且经过checkPageValidit检查后为真
首先前三个都很好理解
我们先看一下第四个
黑名单为:
在index.php中,已经事先定义了target_blacklist的值,即import.php和export.php,只要不等于这两个值就可以。
在看一下定义了checkPageValidit的地方:
通过seay自带的全局搜索发现:
这里简单的说明一下:
首先checkPageValidit里面有两个形参,第一个是我们传入的target,第二个whitelist则有默认形参(也就是空的数组)
1.进入函数看看,首先会判断 w h i t e l i s t 是 否 为 空 , 是 的 话 , 就 将 定 义 的 whitelist是否为空,是的话,就将定义的 whitelist是否为空,是的话,