CVE-2017-15715 apache换行解析&文件上传漏洞

影响范围

httpd 2.4.0~2.4.29

复现环境

vulhub/httpd/CVE-2017-15715

docker-compose

漏洞原理

在apache2的配置文件:

/etc/apache2/conf-available/docker-php.conf

中,php的文件匹配以正则形式表达

".php$"的正则匹配模式意味着以.php结尾的文件名会被解析为php

但是对于字符串来说"结尾"有可能以换行作为结束
如图所示,.php与.php\n均可匹配上

因此在文件上传时将php后添加\n即可

\n的ascii为10,转换为16进制为0A,构造.php[0A]16即可完成攻击

漏洞复现

在vulhub的CVE-2017-15715下

shell 复制代码
docker-compose build
docker-compose up -d

访问ip:8080即可进入页面

选择php一句话木马进行上传,并使用burp抓包

在文件名后敲一个空格,之后双击空格在右侧的十六进制处填写0A进行应用

访问8080/test.php%0A即可执行payload

修复意见

虽然源码中已经在后端做了检查,但仍应先过滤文件名的一些特殊字符再做检查

相关推荐
是Dream呀3 天前
时序数据库选型指南:Apache IoTDB企业级解决方案深度解析
apache·时序数据库·iotdb
一个天蝎座 白勺 程序猿3 天前
Apache IoTDB(5):深度解析时序数据库 IoTDB 在 AINode 模式单机和集群的部署与实践
数据库·apache·时序数据库·iotdb·ainode
lubiii_4 天前
网络安全渗透测试第一步信息收集
安全·web安全·网络安全
智_永无止境4 天前
Apache Commons Math3 使用指南:强大的Java数学库
apache·math
一只 Lemon4 天前
jquery 文件上传 (CVE-2018-9207)漏洞复现
apache
Suckerbin5 天前
TBBT: FunWithFlags靶场渗透
笔记·安全·web安全·网络安全
jieyu11195 天前
反序列化漏洞详解
网络安全·漏洞原理
Codingwiz_Joy5 天前
Day43 PHP(mysql不同注入类型、mysql不同注入点、mysql传输不同数据类型 )
网络安全·php·安全性测试
独行soc5 天前
2025年渗透测试面试题总结-67(题目+回答)
网络·python·安全·web安全·网络安全·adb·渗透测试
emma羊羊5 天前
【SQL注入】延时盲注
数据库·sql·网络安全