中间件是一类提供系统软件和应用软件之间连接、便于软件各部件之间的沟通的软件,应用软件可以借助中间件在不同的技术架构之间共享信息与资源。Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。倘若中间件存在漏洞时,则攻击者可以对该漏洞进行利用,从而危害到服务器的安全问题。
在Apache中间件中存在多后缀解析漏洞问题。这个漏洞与用户的配置有密切关系,严格来说属于用户的配置问题。
一、漏洞原理
运维人员在 Apache的配置文件“httpd.conf ”中添加了对.php后缀增加了处理器:“AddHandler application/x-httpd-php .php”。在有多个后缀的情况下,只要一个文件含有.php后缀(.php不需要是最后的后缀)的文件即将被识别成PHP文件。利用这个特性,将会造成一个可以绕过上传白名单的解析漏洞。
二、攻击排查
1、攻击向量特征
URL请求的文件一般为“xxx.动态文件后缀.静态文件后缀”,在流量、日志检测中检测到命名为xxx.php.jpg的资源,且返回码为200。
2、攻击成功判定
(1)根据报警URL找到对应静态文件,通过文本编辑器查看其内容是否具有恶意代码;
(2)查看httpd.conf (或 httpd_vhosts.conf )配置文件,确定是否有可疑“AddHandler”配置。
3、漏洞修复方式
(1)配置apache FileMatch访问控制(httpd.conf或httpd_vhosts.conf)。
(2)检查在Apache的配置文件“httpd.conf ”中添加了对.php后缀增加了处理器,修正该配置。
(3)在 Apache的配置文件“httpd.conf ”中添加了正则:FileMatch,检测文件的后缀。
除上述中间件之Apache多后缀解析事件的排查方法外,如需了解更加全面的Web中间件安全事件排查方法以及更多的网络安全技术,敬请关注ECSC课程。
更多阅读
ECSC课堂 | 应急响应之如何快速定位Webshell文件?
更多内容,持续关注安胜网络~