Nginx解析漏洞学习篇

原理

由于配置的问题导致".php"结尾的文件交给了FastCGI处理,但是FastCGI在处理该".php"文件的时候没有找到该文件,就会找上一层目录,例如文件为"xxx.jpg/xx.php"就会找到xxx.jpg对其用php的格式进行解析,所以造成了解析漏洞

演示

首先在图片中插入一句话这里用phpinfo()函数演示
Nginx解析漏洞学习篇_第1张图片把该图片上传到服务器上
Nginx解析漏洞学习篇_第2张图片直接复制该图片的路劲,访问该路径就好了
Nginx解析漏洞学习篇_第3张图片可以看到图片是正常访问的,我们在URL后直接加/xx.php查看效果
Nginx解析漏洞学习篇_第4张图片可以看到是以php的格式解析成功了

防御

1.把php.ini里面的cgi.fix_pathinfo默认为1改为0

在这里插入图片描述

2.php-fpm.conf中的security.limit_extensions后面的值设置为.php

你可能感兴趣的:(笔记)