某些环境下绕过php后缀黑名单上传webshell

前言

某期三个白帽,某牛的出的题被秒,他利用过滤黑名单的方式防止上传。做题的人就是直接上传phtml绕过黑名单的,但是我之前还不知道phtml还被能解析成php。

测试

于是我本地测试,却发现我本地的phtml后缀解析不了。我本地的环境phpstudy集成环境。

然后又在我的kali虚拟机里面测试,发现可以解析phtml。当时感觉好奇怪于是我就翻了翻了我kali里面的apache配置文件

kali是debian系的,/etc/apache2的目录下就是apache2的所有配置文件

1

其中apache2.conf是主要的配置文件,*-enabled表示在是用的配置,*-available表示是可用的配置。

我们来看看apache2.conf中的配置。

2

在文件的尾部包含了包含了模块的配置,而php5模块配置就是在mods-enabled里面

3

可看见php5.conf是../mods-available/php5.conf的软连接。看看php5.conf

4

终于找到原因啦,只要符合这个正则的后缀名都可以被当做php文件执行。符合的后缀包括 php、php3、php4、php5、phtml、pht等

后来我还去测试了其他的一些apache+php的环境

windows

phpstudy和wamp两个集成环境

linux

ubuntu、debian和centos用源的方式安装lamp.(apt-get和yum)

结果

phpstudy和wamp以及centos用yum方式安装的lamp环境不能解析phtml和pht

ubuntu和debian利用apt-get方式安装的lamp环境就能解析phtml和pht,原因和上图分析是一样的。

备注

利用这些环境特性和黑名单就能绕过限制,达到上传webshell的目的,在平常渗透测试当中也许会是一个突破点

 

*来源:answer  Mottoin小编整理发布

原创文章,作者:Moto,如若转载,请注明出处:http://www.mottoin.com/article/web/85820.html

发表评论

登录后才能评论

联系我们

021-62666911

在线咨询:点击这里给我发消息

邮件:root@mottoin.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code