Sécurité Web · 5 min read · Sep 26, 2025
Vulnérabilité HTTPOXY : Comment protéger et tester votre serveur web
La vulnérabilité HTTPOXY qui a été récemment découverte est une vulnérabilité qui affecte les applications qui s’exécutent dans des environnements cgi ou similaires à cgi. Cela signifie que le problème affecte presque tous les serveurs web, y compris Apache et Nginx, ainsi que la plupart des applications PHP. Même le mode mod_php sur apache est affecté.
Ce tutoriel vous montrera comment protéger votre serveur web contre HTTPOXY. Il contient des sections pour les distributions Linux les plus utilisées : CentOS + RHEL, Debian et Ubuntu. Les étapes peuvent également être appliquées à d’autres distributions Linux, mais les chemins vers les fichiers de configuration peuvent différer.
Une description détaillée de la vulnérabilité HTTPOXY peut être trouvée sur ce site web https://httpoxy.org/.
Les étapes décrites dans ce tutoriel sont compatibles avec les tutoriels de serveur parfait ISPConfig.
1 Comment HTTPOXY affecte-t-il mon serveur ?
HTTPOXY affecte les clients qui respectent la variable HTTP_PROXY et l’utilisent pour leur configuration de proxy, ainsi que les applications côté serveur qui utilisent HTTP_PROXY comme variable réelle ou émulée dans leur environnement. Le résultat d’une attaque peut être un trafic qui est proxifié par l’application web vers un système cible choisi par l’attaquant ou l’application ouvre des connexions sortantes vers d’autres systèmes. La vulnérabilité est facilement exploitable à distance et les serveurs peuvent être scannés pour cela, il est donc fortement recommandé de prendre des mesures pour la fermer sur votre serveur.
1.1 Solution générale
La solution recommandée pour le moment est de désactiver ou de filtrer la variable d’en-tête HTTP_PROXY. Cela se fait dans apache avec le module mod_headers et cette déclaration de configuration :
RequestHeader unset Proxy earlySur Nginx, vous pouvez utiliser cette ligne pour désactiver la variable HTTP_PROXY.
fastcgi_param HTTP_PROXY "";Le chapitre suivant décrit la procédure détaillée pour différentes distributions Linux.
2 Debian
Ce chapitre décrit la configuration pour protéger Apache et Nginx sur les serveurs Debian 8 (Jessie) et Debian 7 (Wheezy) contre HTTPOXY. Les étapes suivantes supposent que vous êtes connecté en tant qu’utilisateur root sur le shell. Si vous êtes connecté sous un autre utilisateur, utilisez la commande su (ou sudo si vous avez configuré sudo) pour devenir l’utilisateur root.
2.2 Debian 8 (Jessie) avec Apache
Activez le module d’en-têtes apache
a2enmod headersAjoutez un fichier de configuration global /etc/apache2/conf-available/httpoxy.conf. Je vais utiliser l’éditeur nano ici :
nano /etc/apache2/conf-available/httpoxy.confet collez le contenu suivant dans ce fichier :
RequestHeader unset Proxy early
Enregistrez le fichier. Ensuite, activez-le dans la configuration avec la commande a2enconf et redémarrez apache.
a2enconf httpoxy
service apache2 restart2.2 Debian 7 (Wheezy) avec Apache
Activez le module d’en-têtes apache :
a2enmod headersAjoutez un fichier de configuration global /etc/apache2/conf.d/httpoxy.conf. Je vais utiliser l’éditeur nano ici :
nano /etc/apache2/conf.d/httpoxy.confet collez le contenu suivant dans ce fichier :
RequestHeader unset Proxy early
Enregistrez le fichier. Ensuite, redémarrez apache.
service apache2 restart2.3 Debian avec Nginx
La commande suivante ajoutera un fastcgi_param qui définit la variable HTTP_PROXY comme une chaîne vide dans le fichier /etc/nginx/fastcgi_params.
echo 'fastcgi_param HTTP_PROXY "";' >> /etc/nginx/fastcgi_paramsEnsuite, redémarrez nginx pour appliquer le changement de configuration.
service nginx restart3 Ubuntu
Ce chapitre décrit la configuration pour protéger Apache et Nginx sur les serveurs Ubuntu 14.04 - 16.04 contre HTTPOXY.
3.1 Ubuntu avec Apache
Activez le module d’en-têtes apache.
sudo a2enmod headersAjoutez un fichier de configuration global /etc/apache2/conf-available/httpoxy.conf. Je vais utiliser l’éditeur nano ici :
sudo nano /etc/apache2/conf-available/httpoxy.confet collez le contenu suivant dans ce fichier :
RequestHeader unset Proxy early
Enregistrez le fichier. Ensuite, activez-le dans la configuration avec la commande a2enconf et redémarrez apache.
sudo a2enconf httpoxy
sudo service apache2 restart3.2 Ubuntu avec Nginx
Les étapes pour protéger Ubuntu contre HTTPOXY sont similaires à celles pour Debian. Nous devons juste nous assurer d’exécuter les commandes avec sudo. Cette commande echo ajoutera une ligne fastcgi_param qui définit la variable HTTP_PROXY comme une chaîne vide. Le fichier /etc/nginx/fastcgi_params est inclus dans les sections par défaut @PHP et cgi-bin des fichiers vhost nginx et également dans les vhosts créés par ISPConfig. Si vous avez ajouté des vhosts personnalisés, vérifiez qu’ils contiennent “include /etc/nginx/fastcgi_params;” dans les sections de configuration pour php et d’autres connecteurs cgi ou fastcgi.
Exécutez la commande suivante pour ajouter la variable HTTP_PROXY vide.
sudo echo 'fastcgi_param HTTP_PROXY "";' >> /etc/nginx/fastcgi_paramsEnsuite, redémarrez Nginx pour appliquer le changement de configuration.
sudo service nginx restart4 CentOS, RHEL et Fedora
Ce chapitre décrit la configuration pour protéger Apache et Nginx sur les serveurs CentOS contre HTTPOXY. Les mêmes étapes devraient fonctionner pour les serveurs Fedora également. Connectez-vous en tant qu’utilisateur root sur le shell avant de procéder avec les commandes ci-dessous.
4.1 Apache
Le fichier de configuration Apache (httpd) sur CentOS est /etc/httpd/conf/httpd.conf. Je vais ajouter la règle d’en-tête apache à la fin du fichier httpd.conf avec cette commande :
echo "RequestHeader unset Proxy early" >> /etc/httpd/conf/httpd.confEnsuite, redémarrez httpd pour appliquer le changement de configuration.
service httpd restart4.2 Nginx
Le serveur web Nginx sur CentOS inclut les fastcgi_params dans la section PHP et CGI du vhost par défaut, donc nous pouvons ajouter la règle pour définir la variable HTTP_PROXY vide là-bas. Exécutez cette commande pour ajouter la variable HTTP_PROXY vide.
echo 'fastcgi_param HTTP_PROXY "";' >> /etc/nginx/fastcgi_paramsEnsuite, redémarrez nginx pour appliquer le changement de configuration.
service nginx restart5 Test
Enfin, vous devriez tester si votre serveur est maintenant sûr. Luke Rehman a développé un joli outil de test en ligne que vous pouvez trouver ici : https://httpoxy.rehmann.co/
Entrez l’URL de votre serveur ou site web dans l’outil et cliquez sur le bouton “test”.

Voici le résultat pour howtoforge.com. Comme vous pouvez le voir, notre site web est sûr.
6 Liens
- Le site web HTTPOXY https://httpoxy.org/
- Merci à Jesse pour la recette Debian 8.
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.