Пример уязвимой конфигурации:
location ~ .php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param script_FILENAME /scripts$fastcgi_script_name; include fastcgi_params; }
Эксплуатация: /image.gif/.php
или при помощи нулл-байта: /image.gif%00.php
Я наклепал на php сканер, который по указанному гугл-дорку проверяет каждый url на наличие уязвимости.
Суть работы такова: Запрашивается robots.txt. Ежели он отсутствует, запрашивается favicon.ico. Затем к этому url прибавляется /.php или %00.php и сравнивается размер содержимого и content-type.
Если размер не изменился, а content-type стал text/html — значит уязвимость присутствует.
Ссылка на сканер: http://wwwroot.org/releases/nginx_scan.php.txt
Использование. Запускаете /nginx_scan.php?from=1&to=10&num=10 — искать в гугле от страницы from до страницы to по num url на страницу.
Дорк измените в коде. Логи пишутся в nginxlogs.txt. Статистику смореть так: /nginx_scan.php?stat=1.