47文件上传篇—Apache漏洞原理

Posted 世纪顶点科技有限公司

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了47文件上传篇—Apache漏洞原理相关的知识,希望对你有一定的参考价值。

Apache解析漏洞


在Apache1.x与Apache2.x中存在解析漏洞,不管文件的后缀是什么,只要是.php.*结尾,就会被Apache服务器解析成PHP文件,问题是Apache如果在mime.types文件里面没有定义的扩展名比如x1.x2.x3的情况下,最后一个x3的没有定义,那么就会将其解析成倒数第二个的x2的定义的扩展名类型。所以xxx.php.rar或者xxx.php.111这些默认没有在mime.types文件定义的都会解析成PHP的。


如果上传的文件名使我们可以定义的,那么我们可以完全上传一个xxx.php.abc这样名字的webshell,Apache仍然会当做PHP来解析。


防御方法


在Apache配置文件(httpd.conf),禁止.php.这样的文件执行,配置文件里面加入

<Files~ "\.(php.|php3.)">

Order Allow,Deny

Denyfrom all

</Files>


上面的代码太骚了,耗用资源太大,所以另外在附上一个HostKer的某大牛写的…

<FilesMatch"\.php\.[^*]{1,}$">

Order Allow,Deny

Denyfrom all

</FilesMatch>


当然,如果你不好意思(虚拟机用户)去修改httpd.conf文件,也可以添加到.htaccess文件中,效果是一样的


转载至hyddd

https://blog.csdn.net/Fly_hps/article/details/79657864


以上是关于47文件上传篇—Apache漏洞原理的主要内容,如果未能解决你的问题,请参考以下文章

漏洞复现——Apache HTTPD多后缀解析漏洞

文件上传漏洞部分知识点

Apache SSI 远程命令执行漏洞

文件上传漏洞原理是啥?

漏洞复现之apache解析漏洞

漏洞复现之apache解析漏洞