Rack is vulnerable to a memory-exhaustion DoS through unbounded URL-encoded body parsing
Servidores Rack podem ser derrubados enviando requisições com dados de formulário muito grandes que consomem toda a memória disponível. Um atacante pode enviar formulários URL-encoded gigantescos, fazendo o servidor ficar sem memória e parar de responder.
Rack::Request#POST nas versões anteriores a 2.2.20, 3.1.18 e 3.2.3 realiza buffer ilimitado de corpos de requisição application/x-www-form-urlencoded via rack.input.read(nil), sem limites de tamanho impostos. Um atacante remoto não autenticado pode enviar uma requisição POST grande com Content-Type: application/x-www-form-urlencoded para esgotar a memória do servidor e causar negação de serviço. A mitigação requer atualização para versões corrigidas e imposição de limites de tamanho de corpo na camada de proxy/servidor web.
Quer saber se a sua infraestrutura está exposta a isto?
Falar com a TrueHacking →