PT-2026-81851 · Libsoup · Libsoup
CVSS v3.1
5.3
Média
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L |
Nome do Software Vulnerável e Versões Afetadas
libsoup versões contendo a correção do CVE-2025-32907, mas não o merge request !550
Description
Uma falha de complexidade algorítmica existe no processamento de cabeçalhos HTTP Range. O problema ocorre na função
soup message headers get ranges internal() em libsoup/soup-message-headers.c, onde um loop de coalescência utiliza g array remove index() para remover intervalos mesclados. Como o GArray é contíguo, cada remoção dispara uma operação memmove O(N), resultando em um trabalho O(N²) quando um grande número de intervalos idênticos satisfatórios é fornecido. Este caminho é acessível no lado do servidor através da função handle partial get() em libsoup/server/http1/soup-server-message-io-http1.c quando um manipulador SoupServer retorna HTTP 200 com um corpo não vazio. Não é necessária autenticação para acionar este comportamento. Esta falha leva ao esgotamento da CPU e problemas de disponibilidade ao bloquear o loop de eventos do servidor, mas não causa corrupção de memória ou divulgação de informações.Recommendations
Atualize o libsoup para a versão que incorpora o merge request !550.
Como mitigação temporária, restrinja o uso da função
handle partial get() ou limite o tamanho e a quantidade de cabeçalhos Range aceitos pelo servidor.Exploit
Correção
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Libsoup