加入收藏 | 设为首页 | 会员中心 | 我要投稿 大连站长网 (https://www.0411zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 安全 > 正文

Web分析:文件解析漏洞

发布时间:2021-06-10 17:47:34 所属栏目:安全 来源:互联网
导读:PHP是用C语言编写的,MySQL则是用C++编写的,而Apache则大部分是使用C语言编写的,少部分是使用C++编写的。所以,文件解析漏洞的本质还是需要我们挖掘C语言、C++的漏洞。 文件解析漏洞是指中间件(IIS、Apache、Nginx等)在解析文件时出现了漏洞,从而攻击者

PHP是用C语言编写的,MySQL则是用C++编写的,而Apache则大部分是使用C语言编写的,少部分是使用C++编写的。所以,文件解析漏洞的本质还是需要我们挖掘C语言、C++的漏洞。

文件解析漏洞是指中间件(IIS、Apache、Nginx等)在解析文件时出现了漏洞,从而攻击者可以利用该漏洞实现非法文件的解析。需要注意的是文件解析漏洞与文件上传漏洞是两码事,文件解析漏洞是基于文件上传之后的。

比如Apache中间件是C语言与C++混合编写成的,当Apache中间件出现了解析漏洞,无论我们PHP代码层面如何安全,都没办法抵挡攻击者的攻击,因为现在的漏洞已经与PHP代码层无关,已经是底层的安全问题了。

文件解析漏洞就是因为Apache中间件的C语言或者C++的编程出现了漏洞,导致攻击者可以利用该漏洞解析非法文件。所以,底层安全比任何安全都要重要,至少我们从现在起,要开始重视底层安全。

接下来,我们介绍Apache解析PHP文件的原理。

当Apache(httpd.exe)运行之后,开始监听Web浏览器发送的请求,拦截请求,简单处理之后再将该请求告知PHP代码解析器(CGI、FAST-CGI或者Apache Module)解析特定的PHP文件。PHP代码解析器解析文件完成之后,返回HTML页面给Apache,Apache再将HTML页面响应到Web浏览器,就这样循环。在Apache解析正常PHP文件的时候,当然是没有大问题的。但是,当出现畸形文件的时候,Apache又该如何处理呢?其实,在httpd.conf文件中,有个设置DefaultType text/plain,这个设置告诉我们Apache在遇到无法识别的文件时,它会做出怎么样的反应。例如DefaultType text/plain,在这样的设置前提下,当Apache遇到无法识别的文件时,就会将这些无法识别的文件通通作为文本文件来解析。在此,无法识别是什么意思呢?原来在Apache的conf目录下面有个mime.types文件(Linux在etc/mime.types),这个文件的内容就是Apache预定义的一些可以正常解析的文件。例如图片的Content-type与其文件的对应关系如下。

Web分析:文件解析漏洞

(编辑:大连站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!