Apache换行解析漏洞(CVE-2017-15715)
Posted C、调
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Apache换行解析漏洞(CVE-2017-15715)相关的知识,希望对你有一定的参考价值。
一丶漏洞原理
Apache可以通过mod_php来运行PHP网页,漏洞的根本原因在于正则表达式符$。$可以匹配字符串结尾的换行符'\\n'或'\\r'
上图默认配置文件里的SetHandler application/x-httpd-php表示将符合FileMatch标签中正则表达式的文件均当做php文件来执行。
如果后缀名是上面这些后缀名以换行符结尾(%0A=\\n),那么也是可以解析。
二丶漏洞影响版本
2.4.0-2.4.29
三丶漏洞环境
1丶进入vulhub/httpd/CVE-2017-15715,修改index.php文件,添加一个上传表格,
2丶docker-compose build(创建镜像)
docker-compose up -d(运行镜像)
3丶运行时竟然还报错,发现是端口占用的问题,使用netstat -anp|grep 8080查看占用pid,发现运行着java服务,
4丶 杀掉对应pid再运行,成功
5丶 启动后访问http://your-ip:8080
四丶漏洞复现
1丶先正常上传.php文件,发送数据包提示bad file
2丶输入的1.php后面插入一个\\x0A(使用16进制),不再拦截
3丶访问刚才上传的/1.php%0a,发现能够成功解析,但这个文件不是php后缀,说明目标存在解析漏洞:
以上是关于Apache换行解析漏洞(CVE-2017-15715)的主要内容,如果未能解决你的问题,请参考以下文章
漏洞复现Apache HTTPD 换行解析漏洞(CVE-2017-15715)