Plateforme
python
Composant
pyload
Corrigé dans
0.5.1
CVE-2026-35187 est une vulnérabilité de type Server-Side Request Forgery (SSRF) affectant pyload-ng. Elle permet à un utilisateur authentifié de récupérer des URLs arbitraires côté serveur, y compris des fichiers locaux. Les versions affectées sont pyload-ng ≤0.5.0b3.dev96. Aucun correctif officiel n'est disponible pour le moment.
La vulnérabilité CVE-2026-35187 dans pyLoad permet à un utilisateur authentifié disposant de la permission ADD d'effectuer des requêtes HTTP/HTTPS vers des ressources du réseau interne et des points de terminaison de métadonnées cloud. Cela est dû à un manque de validation d'URL dans la fonction parseurls située dans src/pyload/core/api/init.py. La fonction geturl(url) (pycurl) récupère des URL arbitrairement côté serveur sans restrictions de protocole ni listes noires d'IP. Un attaquant pourrait lire des fichiers locaux en utilisant le protocole file://, car pycurl lit le fichier côté serveur. L'impact principal est la possible exposition d'informations sensibles, l'accès non autorisé à des ressources internes et, potentiellement, l'exécution de code si combiné à d'autres vulnérabilités.
Cette vulnérabilité est exploitable par des utilisateurs authentifiés disposant de la permission ADD dans pyLoad. Elle ne nécessite pas de privilèges root ni d'accès au réseau externe. L'attaquant doit être capable de manipuler l'entrée d'URL fournie à la fonction parse_urls. L'exploitation est relativement simple, car elle ne nécessite pas de compétences techniques avancées. La gravité de la vulnérabilité est exacerbée par le potentiel d'exposition d'informations sensibles et la possibilité d'escalade de privilèges si elle est combinée à d'autres vulnérabilités dans le système.
Organizations using pyLoad for download management, particularly those with internal networks accessible from the internet, are at risk. Shared hosting environments where multiple users have access to the pyLoad API are especially vulnerable, as a compromised user account could be used to exploit the SSRF vulnerability and access resources belonging to other users.
• python / server:
import requests
import re
def check_pyload_ssrf(url):
try:
response = requests.get(url, timeout=5)
if response.status_code == 200:
if re.search(r'file://', url) or re.search(r'gopher://', url) or re.search(r'dict://', url):
print(f"Potential SSRF vulnerability detected: {url}")
else:
print(f"URL accessed: {url}")
except requests.exceptions.RequestException as e:
print(f"Error accessing {url}: {e}")
# Example usage (replace with actual API endpoint)
api_endpoint = "http://your-pyload-server/api/add"
# Test with potentially malicious URLs
check_pyload_ssrf("file:///etc/passwd")
check_pyload_ssrf("gopher://127.0.0.1/some_internal_service")disclosure
Statut de l'Exploit
EPSS
0.03% (percentile 9%)
CISA SSVC
La solution pour CVE-2026-35187 consiste à mettre à jour pyLoad vers la version 0.5.0b3.dev96 ou ultérieure. Cette version corrige la vulnérabilité en implémentant la validation d'URL et les restrictions de protocole dans la fonction parse_urls. En attendant, comme mesure temporaire, il est recommandé de restreindre l'accès des utilisateurs authentifiés disposant de la permission ADD au réseau interne et aux points de terminaison de métadonnées cloud. Il est également crucial de revoir et d'auditer les permissions des utilisateurs dans pyLoad afin de minimiser le risque d'exploitation. Surveiller les journaux du serveur à la recherche d'activités suspectes liées aux requêtes d'URL peut également aider à détecter et à répondre à d'éventuelles attaques.
Mettez à jour vers la version 0.5.0b3.dev96 ou supérieure pour atténuer la vulnérabilité SSRF (Server-Side Request Forgery). Cette version implémente la validation d'URL et les restrictions de protocole pour prévenir l'accès non autorisé aux ressources internes.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
La permission ADD dans pyLoad est requise.
Non, l'exploitation peut être effectuée à partir du réseau interne.
Informations sensibles stockées dans des fichiers locaux et des ressources du réseau interne.
Restreindre l'accès des utilisateurs disposant de la permission ADD au réseau interne et surveiller les journaux du serveur.
Surveiller les journaux du serveur à la recherche de requêtes d'URL suspectes, en particulier celles qui utilisent le protocole file://.
Vecteur CVSS
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é.