文章总结: 本文详细介绍了ApacheWeb服务器的默认配置与安全设置,重点分析了多后缀解析、换行解析CVE-2017-15715、路径穿越CVE-2021-41773及目录遍历等漏洞原理。针对每种漏洞提供了利用场景及具体的修复方案,如配置正则限制文件解析、更新版本和严格控制AllowOverride权限,帮助运维人员加固Apache服务器安全。 综合评分: 86 文章分类: WEB安全,漏洞分析,渗透测试

修复方式
1、使用SetHandler,写好正则,只允许以.php后缀的文件解析<FileMatch ".+\.php$">SetHandler application/x-httpd-php</FileMatch>2、禁止.php这样的文件执行<FileMatch ".+\.ph(p[3457]?|t|tml)\.">Require all denied</FileMatch>
Apache换行解析漏洞复现(CVE-2017- 15715)
原理
在Apache 2.4.0-2.4.29当中存在,在上述版本当中,Apache开启了正则表达式的多行属性,在匹配.php$文件时除了会匹配到的.php结尾的文件还会匹配到.php\0a结尾的文件,在业务环境中.php结尾的文件会交由PHP解释器执行,所以黑客可以上传.php\0a结尾对的文件来绕过上传限制,并且让文件中的内容按照PHP代码来执行
通过在后缀结尾添加换行符来绕过黑名单的检测
CVE-2021-41773 漏洞复现
原理
Apache httpd Server 2.4.49 版本引入了一个新的函数,在对路径参数进行规范化时处理不当,当检测到路径中存在%字符时,如果紧跟的2个字符是十六进制字符,就会进行url解码,将其转换成标准字符,如%2e->.,转换完成后会判断是否存在../。如果路径中 存在%2e./形式,就会检测到,但是出现.%2e/这种形式时,就不会检测到,原因是在遍历到第一个.字符 时,此时检测到后面的两个字符是%2而不是./,就不会把它当作路径穿越符处理,因此可以使用.%2e/或 者%2e%2e绕过对路径穿越符的检测。
/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd
在修复该漏洞后,又出现了一个CVE-2021-42013,通过编码还可以可以绕过。源于对 CVE-2021-41773 的修复不充分。攻击者可通过特殊编码绕过路径规范化机制,读取任意文件或执行系统命令
POC如下:
/icons/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd
修复方案
①更新版本,打补丁
②根权限设置为require all denide
目录遍历
漏洞原理
由于配置错误导致的目录遍历
配置的时候开启了显示目录,如下所示:
上传.htaccess(htaccess可以作用于当前目录以及子目录)
.htaccess是Apache的又一特色。一般来说,配置文件的作用范围都是全局的,但Apache提供了一种很方便的、可作用于当前目录及其子目录的配置文件——.htaccess(分布式配置文件)。
.htaccess生效条件
要想使.htaccess文件生效,需要两个条件,一是在Apache的配置文件中写上:
AllowOverride All
若这样写则.htaccess不会生效:
AllowOverride None
二是Apache要加载mod_Rewrite模块。加载该模块,需要在Apache的配置文件中写上:
LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so
上传.htaccess绕过限制
.htaccess文件可以配置很多事情,如是否开启站点的图片缓存、自定义错误页面、自定义默认文档、设置WWW域名重定向、设置网页重定向、设置图片防盗链和访问权限控制。但我们这里只关心.htaccess文件的一个作用——MIME类型修改。如在.htaccess文件中写入:
AddType application/x-httpd-php xxx
就成功地使该.htaccess文件所在目录及其子目录中的后缀为.xxx的文件被Apache当做php文件。
参考链接
https://cloud.tencent.com/developer/article/2290320
https://blog.csdn.net/qq_66934029/article/details/142634560
#
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:信安路漫漫 信安路漫漫 信安路漫漫《Apache配置以及漏洞》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论