nginx

Mauvaises configurations de plateforme propres à nginx : la traversée off-by-slash location/alias, le câblage FastCGI/PHP-FPM qui exécute les uploads, la SSRF via proxy_pass variable, et les failles de merge_slashes/normalisation.

1 min de lecturemis à jour le 13 oct. 2026florianamette1 contributeur
Demander à votre assistant (MCP)Modifier sur GitHub

nginx est à la fois un serveur statique, une passerelle FastCGI et un reverse proxy, et ses mauvaises configurations se regroupent autour de chaque rôle. Identifiez-le via Server: nginx, ses pages d'erreur par défaut et le comportement location/proxy, puis déroulez cette checklist. La config nginx est copiée-collée en permanence, donc la même poignée d'erreurs se répète d'une cible à l'autre.

Ce qu'il faut vérifier#

  • Off-by-slash d'alias : un location sans slash final plus un alias avec en concatène les caractères suivants (y compris ..) sur le chemin cible, divulguant le répertoire parent.
  • Câblage FastCGI/PHP-FPM : fastcgi_split_path_info plus cgi.fix_pathinfo exécutant des fichiers qui contiennent simplement .php dans le chemin, et sockets FPM exposés.
  • proxy_pass variable : un amont construit à partir de données de requête ($host, un argument) transforme le proxy en véhicule de SSRF.
  • Slash et normalisation : merge_slashes off, gestion des slashes encodés, et correspondance de préfixe location en désaccord avec le système de fichiers ou un amont.

Pages#

Références#

  • Documentation nginx : location, alias, fastcgi_split_path_info, proxy_pass, merge_slashes
  • Orange Tsai : recherche nginx off-by-slash et parser