Consultivo recente do Apache DOS - problema ao aplicar a solução alternativa SetEnvIf / RequestHeader

3

então uma das atenuações para este comunicado foi:

1) Use SetEnvIf ou mod_rewrite para detectar um grande número de intervalos e depois    ignore o cabeçalho Range: ou rejeite o pedido.

Opção 1: (Apache 2.0 e 2.2)

      # Drop the Range header when more than 5 ranges.
      # CVE-2011-3192
      SetEnvIf Range (,.*?){5,} bad-range=1
      RequestHeader unset Range env=bad-range

      # optional logging.

      CustomLog logs/range-CVE-2011-3192.log common env=bad-range

Agora, quando adiciono isso ao meu httpd.conf:

<IfModule mod_setenvif.c>
SetEnvIf Range (,.*?){5,} bad-range=1
RequestHeader unset Range env=bad-range

</IfModule>

Eu recebo este erro ao reiniciar o Apache:

"Comando inválido 'RequestHeader', talvez escrito incorretamente ou definido por um módulo não incluído na configuração do servidor"

O módulo SetEvnIf parece estar carregado.

O que há de errado com esse parâmetro?

A versão é Apache / 2.2.14.

O link para o comunicado é: link

também, o Tomcat estaria vulnerável a isso?

tia!

    
por Tom G 25.08.2011 / 03:21

2 respostas

9

RequestHeader exige que você carregue mod_headers

    
por 25.08.2011 / 03:24
1

como resposta de DerfK, você precisa carregar mod_headers - a la

LoadModule headers_module modules/mod_headers.so

no seu arquivo conf antes da chamada para RequestHeader

    
por 25.08.2011 / 21:50