> Tech > 3.5 La suppression ou la modification d’en-têtes

3.5 La suppression ou la modification d’en-têtes

Tech - Par iTPro - Publié le 24 juin 2010
email

Comme nous l'avons vu plus haut, lorsqu'un client effectue une requête à un serveur WEB, il envoie un certain nombre d'informations à ce serveur via les en-têtes HTTP, et il en est de même lorsque le serveur répond au client. Ces en-têtes peuvent contenir des informations sur le type de

3.5 La suppression ou la modification d’en-têtes

navigateur du client, le nom NetBios du proxy par lequel le client est passé, la page par laquelle il est passé avant d’arriver sur cette page, etc. dans le cas d’une requête HTTP, et sur le type de serveur WEB, la dernière date de modification de la page, etc. dans le cas d’une réponse HTTP.

Afin de mieux comprendre, voici un exemple avec quelques en-têtes : Voir tableau 8.

Pour des raisons évidentes de sécurité, on peut souhaiter que ces informations ne soient pas divulguées. Il peut même être intéressant dans certains cas de renvoyer ces en-têtes mais en les modifiant. En effet, il a été prouvé que dans 90% des attaques de serveurs WEB, le pirate tente d’abord d’obtenir le type de serveur ainsi que sa version, ce qui est assez aisé, afin d’exploiter les failles connues de ce serveur, puis laisse tomber. En se servant des fonctions du filtre HTTP, il est parfaitement possible de renvoyer un nom de serveur factice.

Par exemple, si l’on possède un serveur Apache, identifié par la chaine "Apache/1.3.33 (Linux) mod_perl/1.29 mod_ssl/2.8.22 OpenSSL/0.9.7f", on peut parfaitement modifier le champ "SERVER" des en-têtes HTTP et ainsi renvoyer "Microsoft-II/6.0", chaîne qui identifie un serveur IIS. Bien évidemment, cette technique est à utiliser dans le cas d’une publication de serveur. Une fois dans les paramètres du filtre HTTP de cette règle de publication et dans l’onglet En-têtes, il suffit de cliquer sur le bouton Ajouter et de choisir si l’on souhaite modifier les en-têtes dans une requête ou dans une réponse HTTP, puis de spécifier le nom du champ que l’on souhaite modifier ou supprimer. (figure 20)

Trois actions s’offrent alors à nous :

• Envoyer l’en-tête original : cette option présente relativement peu d’intérêt, en effet si l’on souhaite renvoyer l’entête d’origine, autant ne rien faire, cela déchargera le serveur ISA.

• Supprimer l’en-tête de la réponse : cette option être utile si l’on souhaite tout simplement ne pas envoyer un champ des en-têtes HTTP, mais peut être dangereuse car du point de vue d’un éventuel attaquant, cacher des informations de ce genre peut revenir à dire qu’il a des failles importantes derrière, ou du contenu sensible.

• Modifier l’en-tête dans la réponse : cette option est, selon moi, celle qui est la plus intéressante car personne ne pourra se douter que vous avez modifié un champ d’entêtes.

La dernière étape est bien évidemment de saisir la nouvelle valeur que l’on souhaite renvoyer pour ce champ d’en-têtes.

Une autre utilisation intéressante, toujours dans un but de sécurité, pourrait être de modifier le champ "VIA", qui correspond au nom NetBIOS du premier proxy utilisé par le client. En effet, dans le cas d’une organisation, le premier proxy est toujours un proxy du réseau interne de l’entreprise, et le dévoiler est en quelque sorte une brèche dans la sécurité de l’organisation.

Il va de soi que cette modification possède un sens uniquement sur une règle d’accès, en effet son intérêt serait assez limité, pour ne pas dire nul, sur une règle de publication.

Uniquement pour cet en-tête, il possible d’agir sur la valeur qui sera renvoyée sans passer par le menu précédent. En effet, dans la fenêtre permettant de configurer le filtre HTTP, on peut également trouver un encart nommé "Via l’en-tête". C’est ici que l’on pourra modifier la valeur du champ VIA qui sera retournée par le serveur. (figure 21)

On dispose tout d’abord de deux options :
• Envoyer l’en-tête par défaut : de la même manière que précédemment, cette option ne présente aucun intérêt.
• Modifier l’en-tête dans la demande et la réponse : lorsque cette option est choisie, le champ de texte situé en dessous va devenir accessible.

La dernière étape est de saisir le nom NetBIOS que l’on souhaite que le serveur renvoie.

Téléchargez gratuitement cette ressource

Protection des Données : 10 Best Practices

Protection des Données : 10 Best Practices

Le TOP 10 des meilleures pratiques, processus et solutions de sécurité pour mettre en œuvre une protection efficace des données et limiter au maximum les répercutions d’une violation de données.

Tech - Par iTPro - Publié le 24 juin 2010