Retourner au contenu associé (journal : Apache n'apprécie pas le HTTP Range)
Posté par Spack le 25 août 2011 à 12:37. En réponse au journal Apache n'apprécie pas le HTTP Range. Évalué à 10.
Il y à plusieurs solutions proposées. Elles concernent toutes une façons de limiter les requêtes contenant des rangées.
Range
Pour Apache 2, on définit une variable d'environnement si on détecte plus de 5 rangées dans la requête et on retire le champ Range.
SetEnvIf Range (,.*?){5,} bad-range=1 RequestHeader unset Range env=bad-range
Il est aussi possible de ne pas s'embêter et de carrément le retirer dès qu'il est présent.
RequestHeader unset Range
Pour Apache 1.3 même chose mais en utilisant mod_rewrite.
mod_rewrite
RewriteEngine on RewriteCond %{HTTP:range} !(^bytes=[^,]+(,[^,]+){0,4}$|^$) RewriteRule .* - [F]
Deuxième solution, limiter la taille des champs de l'en-tête.
LimitRequestFieldSize 200
Inconvénient, cela peut casser certaines communications et le champ Range est toujours présent.
Le module mod_rangecnt dont les binaires sont disponibles permet de compter les rangées et de rejeter la requête.
La dernière solution est de suivre l'évolution de la résolution du problème et d'appliquer les patchs proposés.
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
[^] # Re: Debian Security
Posté par Spack . En réponse au journal Apache n'apprécie pas le HTTP Range. Évalué à 10.
Il y à plusieurs solutions proposées. Elles concernent toutes une façons de limiter les requêtes contenant des rangées.
Rejeter
RangeApache 2
Pour Apache 2, on définit une variable d'environnement si on détecte plus de 5 rangées dans la requête et on retire le champ
Range.Il est aussi possible de ne pas s'embêter et de carrément le retirer dès qu'il est présent.
Apache 1.3
Pour Apache 1.3 même chose mais en utilisant
mod_rewrite.Limiter la taille des champs
Deuxième solution, limiter la taille des champs de l'en-tête.
Inconvénient, cela peut casser certaines communications et le champ
Rangeest toujours présent.Utiliser un compteur
Le module mod_rangecnt dont les binaires sont disponibles permet de compter les rangées et de rejeter la requête.
Suivre l'évolution
La dernière solution est de suivre l'évolution de la résolution du problème et d'appliquer les patchs proposés.