Plataforma
python
Componente
weasyprint
Corrigido em
68.0.1
68.0
Uma vulnerabilidade de Server-Side Request Forgery (SSRF) de proteção bypass foi descoberta no WeasyPrint, especificamente no defaulturlfetcher. Esta falha permite que atacantes acessem recursos internos da rede, como serviços localhost ou endpoints de metadados de nuvem, mesmo quando um desenvolvedor implementou um url_fetcher personalizado para bloquear tais acessos. A vulnerabilidade afeta versões do WeasyPrint até a 67.0 e foi corrigida na versão 68.0.
O impacto desta vulnerabilidade é significativo, pois permite a um atacante contornar as medidas de segurança implementadas para prevenir SSRF. Um atacante pode explorar essa falha para acessar dados confidenciais armazenados em serviços internos, como bancos de dados, servidores de arquivos ou APIs internas. Além disso, a exploração pode levar ao acesso a metadados de instâncias de nuvem, revelando informações sensíveis sobre a infraestrutura. A ausência de revalidação dos redirecionamentos HTTP pelo urllib é o ponto chave da exploração, permitindo que um atacante redirecione a requisição para um destino não intencional, ignorando as políticas de segurança definidas pelo desenvolvedor. A exploração bem-sucedida pode resultar em roubo de dados, comprometimento da infraestrutura e até mesmo acesso não autorizado a outros sistemas na rede interna.
A vulnerabilidade foi publicada em 2026-01-20. Não há informações disponíveis sobre a adição a KEV ou a existência de um EPSS score. Atualmente, não há public proof-of-concept (PoC) amplamente divulgado, mas a natureza da SSRF torna a exploração relativamente simples uma vez que a vulnerabilidade é compreendida. É importante monitorar a situação e implementar as medidas de mitigação recomendadas para reduzir o risco de exploração.
Organizations using WeasyPrint to generate documents from untrusted sources are particularly at risk. This includes applications that process user-supplied URLs or data that is subsequently used in document generation. Shared hosting environments where multiple applications share the same WeasyPrint instance are also vulnerable, as a compromise in one application could potentially be leveraged to exploit this SSRF vulnerability in others.
• python / server:
import requests
from urllib.parse import urlparse
def check_redirects(url):
try:
response = requests.get(url, allow_redirects=True)
parsed_url = urlparse(response.url)
if parsed_url.netloc != urlparse(url).netloc:
print(f"Potential SSRF bypass detected: URL redirected to {response.url}")
except requests.exceptions.RequestException as e:
print(f"Error checking URL: {e}")
# Example usage (replace with WeasyPrint-related URLs)
check_redirects("http://localhost:8000/internal")• generic web:
curl -I 'http://your-weasyprint-server/some/url' | grep 'Location:'disclosure
Status do Exploit
EPSS
0.06% (percentil 18%)
CISA SSVC
Vetor CVSS
A mitigação primária é atualizar o WeasyPrint para a versão 68.0 ou superior, que corrige a vulnerabilidade. Se a atualização imediata não for possível, considere as seguintes medidas de mitigação: implementar um Web Application Firewall (WAF) ou proxy reverso para filtrar requisições HTTP e bloquear redirecionamentos suspeitos. Configure o url_fetcher personalizado para revalidar o destino final após cada redirecionamento HTTP, garantindo que ele permaneça dentro do escopo permitido. Monitore os logs de acesso e erro em busca de padrões de requisições incomuns ou tentativas de acesso a recursos internos não autorizados. Após a atualização, confirme a correção da vulnerabilidade verificando se os redirecionamentos HTTP são revalidados corretamente e se o acesso a recursos internos está bloqueado.
Atualize WeasyPrint para a versão 68.0 ou superior. Isso corrige a vulnerabilidade SSRF ao evitar o bypass da proteção por meio de redirecionamentos HTTP. A atualização pode ser realizada utilizando o gerenciador de pacotes de Python, pip, executando o comando `pip install --upgrade weasyprint`.
Análise de vulnerabilidades e alertas críticos diretamente no seu e-mail.
CVE-2025-68616 é uma vulnerabilidade de SSRF de proteção bypass no WeasyPrint, permitindo acesso a recursos internos, mesmo com filtros implementados. Afeta versões até 67.0.
Sim, se você estiver utilizando uma versão do WeasyPrint inferior ou igual a 67.0, você está potencialmente afetado por esta vulnerabilidade.
A correção é atualizar o WeasyPrint para a versão 68.0 ou superior. Enquanto isso, implemente WAF/proxy e revalide redirecionamentos HTTP.
Embora não haja confirmação de exploração ativa, a natureza da SSRF torna a exploração relativamente fácil, e é importante implementar as medidas de mitigação.
Verifique o site oficial do WeasyPrint e os canais de comunicação da comunidade para o advisory oficial sobre CVE-2025-68616.
Envie seu arquivo de dependências e descubra na hora se esta e outras CVEs te atingem.
Envie seu arquivo requirements.txt e descubra na hora se você está afetado.