1 、 apache 解析漏洞
漏洞环境搭建
下载 vulhub
git clone https://github.com/vulhub/vulhub.git
进入对应漏洞目录、
cd vulhub/httpd/apache_parsing_vulnerability
apt-get docker-compose
启动漏洞环境
docker-compose up -d
注:启动容器时,检查 docker-compose.yml , port 参数位,看他是否被占用,如被占用则,修改 ports
参数第一位
① APACHE httpd 多后缀解析漏洞
原理:多后缀情况下如果遇到对应的脚本后缀,如 :php, 就能解释为 php 文件
AddHandler application / x - httpd - php . php
本质上为上述配置不当,
复现:
上传满足当前条件的后缀文件,文件名中包含 .php 即可;
② CVE-2017-15715 Apache 2.4.0--2.4.29
原理:
文件名后增加换行符, %0a
复现
访问文件名 +%0a 即可
③ nginx 解析漏洞
Nginx 1.x 最新版
PHP 7.x 最新版
原理 : 用户配置不当
cgi . fix_pathinfo = 1 php . ini
/aaa.z/aaa.x/aaa.c, 当前文件若不存在,则向上级索取,即 /aaa.z/aaa.x
security_limit_extensions = . php php - fpm . conf
复现 :
正常上传图片文件
图片文件后增加 /.php 文件被解析为 php 脚本