Plateforme
python
Composant
weasyprint
Corrigé dans
68.0.1
68.0
Une vulnérabilité de type Server-Side Request Forgery (SSRF) a été découverte dans WeasyPrint, affectant les versions inférieures ou égales à 67.0. Cette faille permet à un attaquant de contourner les mécanismes de protection et d'accéder à des ressources internes, telles que des services sur localhost ou des points d'accès aux métadonnées cloud. La mise à jour vers la version 68.0 corrige cette vulnérabilité.
L'exploitation réussie de cette vulnérabilité SSRF permet à un attaquant de lancer des requêtes vers des services internes qui seraient normalement inaccessibles depuis l'extérieur. Cela peut inclure l'accès à des informations sensibles stockées sur des serveurs internes, l'exécution de commandes sur des systèmes vulnérables, ou même la compromission de l'infrastructure cloud. Le contournement des protections SSRF rend cette vulnérabilité particulièrement dangereuse, car les développeurs peuvent avoir mis en place des mesures de sécurité pour empêcher l'accès direct à ces ressources. Cette faille pourrait être exploitée pour extraire des clés API, des informations d'identification de base de données, ou d'autres données confidentielles, ouvrant la porte à des attaques plus sophistiquées.
Cette vulnérabilité a été rendue publique le 2026-01-20. Il n'y a pas d'indication d'une exploitation active à ce jour, mais la nature de la vulnérabilité SSRF la rend potentiellement exploitable. La probabilité d'exploitation est considérée comme moyenne en raison de la complexité potentielle de la configuration de l'environnement WeasyPrint et de la nécessité de contourner les protections existantes. Il n'est pas listé sur le KEV (Know Exploited Vulnerabilities) de CISA à ce jour.
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
Statut de l'Exploit
EPSS
0.06% (percentile 18%)
CISA SSVC
Vecteur CVSS
La mitigation principale consiste à mettre à jour WeasyPrint vers la version 68.0 ou supérieure, qui corrige cette vulnérabilité. En attendant la mise à jour, il est possible de renforcer la sécurité en limitant les autorisations du compte utilisé par WeasyPrint pour accéder aux ressources externes. Il est également recommandé de désactiver les redirections HTTP automatiques dans la configuration de urllib si cela est possible. Surveillez attentivement les journaux d'accès pour détecter des requêtes suspectes vers des adresses internes. L'implémentation de règles WAF (Web Application Firewall) pour bloquer les requêtes vers des adresses internes non autorisées peut également aider à atténuer le risque.
Mettez à jour WeasyPrint à la version 68.0 ou supérieure. Cela corrige la vulnérabilité SSRF en évitant le contournement de la protection par les redirections HTTP. La mise à jour peut être effectuée à l'aide du gestionnaire de paquets Python, pip, en exécutant la commande `pip install --upgrade weasyprint`.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
CVE-2025-68616 décrit une vulnérabilité SSRF dans WeasyPrint, permettant de contourner les protections et d'accéder à des ressources internes. La version affectée est ≤67.0.
Vous êtes affecté si vous utilisez WeasyPrint dans une version inférieure ou égale à 67.0. Vérifiez votre version avec python -c "import weasyprint; print(weasyprint.version)".
La solution est de mettre à jour WeasyPrint vers la version 68.0 ou supérieure. En attendant, renforcez la sécurité en limitant les autorisations et en surveillant les journaux.
Il n'y a pas d'indication d'une exploitation active à ce jour, mais la nature de la vulnérabilité SSRF la rend potentiellement exploitable.
Consultez la documentation officielle de WeasyPrint et les canaux de communication de la communauté pour obtenir les dernières informations et les conseils de sécurité.
Téléverse ton fichier de dépendances et découvre instantanément si cette CVE et d'autres te touchent.
Téléverse ton fichier requirements.txt et nous te dirons instantanément si tu es affecté.