23/11/2024

Désactiver l’en-tête « Server » dans les réponses HTTP

Dans ce chapitre, nous allons voir comment désactiver l'en-tête "Server" dans les réponses HTTP de DSM, et nous verrons pourquoi c'est intéressant de le faire du point de vue de la sécurité.

Partons du constat suivant : lorsque l'on interroge un serveur Web, en l'occurrence ici celui qui tourne pour héberger l'interface de DSM, la réponse HTTP envoyée aux clients contient différentes informations dans son en-tête (header). Parmi ces informations, il y a le type de serveur, par exemple "nginx" ou "apache" tout en sachant que c'est Nginx sur Synology. En fait, si l'on se positionne à la place d'un attaquant, c'est une information intéressante, car on sait si l'on cible un serveur Nginx ou Apache. Grâce à cette information, l'attaquant en sait un peu plus sur notre configuration et peut orienter la suite de son attaque.

Afin d'éviter de communiquer cette information, on peut désactiver l'en-tête "Server" ou utiliser une autre valeur (faire croire que c'est un serveur Apache alors que c'est un Nginx, par exemple ;-)).

Dans le but de désactiver l'en-tête "Server", accédez au "Panneau de configuration", cliquez sur "Réseau" puis sur l'onglet "Connectivité". Ensuite, décochez l'option "Activer l'en-tête "Server" dans les réponses HTTP" et sauvegardez ! Dans le cas où vous souhaitez utiliser une autre valeur que "nginx", l'option doit être cochée et vous devez remplacer la valeur par celle que vous souhaitez.

Désactiver en-tête Server sur Synology

Pour vous montrer la différence, j'ai utilisé l'outil Curl pour requêter l'interface de DSM (http://<ip synology>:<port>) avant et après la modification.

curl -I http://<ip synology>:<port>

Avant la modification, nous pouvons voir la présence de la ligne "Server: nginx", tandis qu'après la modification, l'information "Server" n'est plus du tout présente ! Excellente nouvelle !

Pour conclure, je dirais qu'un attaquant qui interroge la page de notre serveur Web ne sera pas en mesure de savoir, au premier abord, s'il s'agit d'un serveur Apache, Nginx, IIS, etc... Puisque l'information n'est pas communiquée : la prise d'empreinte sera plus difficile !

author avatar
Florian BURNEL Co-founder of IT-Connect
Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.