Question

j'essaie de gérer cet exploit possible et je me demande quelle est la meilleure façon de le faire? dois-je utiliser le commun validateur d'apache et créer une liste de symboles autorisés connus et l'utiliser?

Était-ce utile?

La solution

Extrait de l’article sur wikipedia :

  

La solution générique consiste à encoder des chaînes d'URL avant de les inclure dans des en-têtes HTTP tels que Location ou Set-Cookie.

     

Les exemples typiques de désinfection incluent la conversion en entier, ou le remplacement d’expression régulière agressive. Il convient de noter que bien qu’il ne s’agisse pas d’un problème spécifique à PHP, l’interpréteur PHP contient une protection contre cette attaque depuis les versions 4.4.2 et 5.1.2.

Modifier

  

je suis lié à l'utilisation de jsp avec des actions java!

Il ne semble pas exister de protection basée sur JSP pour ce vecteur d'attaque - de nombreuses descriptions sur le Web supposent asp ou php, mais ce lien décrit une manière assez neutre d’approche du problème de la plate-forme (jsp y est utilisé comme exemple fortuit).

Votre première étape consiste essentiellement à identifier les caractères potentiellement dangereux (CR, LF, etc.), puis à les supprimer. Je crains que cette solution ne soit aussi robuste que vous ne pouvez l’espérer!

  

Solution

     

Valider la saisie. Supprimez les CR et les LF (ainsi que tous les autres caractères dangereux) avant d'incorporer des données dans les en-têtes de réponse HTTP, notamment lors de la configuration de cookies et de la redirection. Il est possible d'utiliser des produits tiers pour se défendre contre l'injection de CR / LF et pour vérifier l'existence de telles failles de sécurité avant le déploiement de l'application.

Autres conseils

Utiliser PHP ? ;)

Selon Wikipedia et PHP CHANGELOG, PHP était protégé contre cela en PHP4 depuis 4.4.2 et en PHP5 depuis le 5.1.2.

Seulement écrémé - mais, cela pourrait aider . Ses exemples sont écrits en JSP.

ok, bien transtyper un int n’est pas très utile lors de la lecture de chaînes, mais utiliser regex dans chaque action recevant une entrée du navigateur pourrait être compliqué, je cherche une solution plus robuste

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top