Plateforme
python
Composant
metagpt
Corrigé dans
0.8.1
0.8.2
0.8.3
Une vulnérabilité de type Server-Side Request Forgery (SSRF) a été identifiée dans MetaGPT, affectant les versions jusqu'à 0.8.2. Cette faille, présente dans la fonction decodeimage du fichier metagpt/utils/common.py, permet à un attaquant de manipuler l'argument imgurlorb64 pour effectuer des requêtes non autorisées sur le serveur. L'exploit est public et peut être utilisé pour mener des attaques, soulignant l'urgence d'une correction. À ce jour, aucune réponse officielle n'a été reçue de la part du projet.
Une vulnérabilité de falsification de requêtes côté serveur (SSRF) a été découverte dans MetaGPT FoundationAgents jusqu'à la version 0.8.2. Cette faille réside dans la fonction decodeimage du fichier metagpt/utils/common.py. Un attaquant peut manipuler l’argument imgurlorb64 pour forcer le serveur à effectuer des requêtes vers des ressources non destinées, exposant potentiellement des informations sensibles ou permettant l’accès à des systèmes internes. La sévérité de la vulnérabilité est notée 6.3 selon le CVSS. La disponibilité publique de l’exploit augmente considérablement le risque d’attaques actives. Le manque de réponse de l’équipe du projet aggrave la situation, laissant les utilisateurs sans solution immédiate.
La vulnérabilité SSRF est exploitée en manipulant l’URL de l’image fournie à la fonction decode_image. En injectant une URL malveillante, le serveur MetaGPT effectuera une requête à cette URL au nom de l’attaquant. Cela peut être utilisé pour accéder à des ressources internes protégées par des pare-feu, lire des fichiers sensibles ou même interagir avec d’autres services au sein du réseau. La disponibilité publique de l’exploit facilite son utilisation par des attaquants ayant différents niveaux de compétences techniques. Le manque de réponse du projet signifie que la vulnérabilité reste non corrigée, augmentant le risque d’exploitation.
Organizations deploying MetaGPT FoundationAgents in environments with sensitive internal resources are at significant risk. This includes those using MetaGPT for automated tasks involving image processing or data retrieval from internal systems. Shared hosting environments where multiple users share a single MetaGPT instance are particularly vulnerable.
• python / server:
import requests
from urllib.parse import urlparse
def validate_url(url):
try:
result = urlparse(url)
return all([result.scheme, result.netloc])
except:
return False
# Example usage (replace with actual input)
img_url = input("Enter image URL: ")
if not validate_url(img_url):
print("Invalid URL format")
else:
print("URL is valid")• linux / server:
journalctl -u metagpt -f | grep "img_url_or_b64"• generic web: Use curl or wget to test the endpoint with various URLs, observing the server's response and any internal resource access.
disclosure
poc
Statut de l'Exploit
EPSS
0.05% (percentile 15%)
CISA SSVC
Vecteur CVSS
Étant donné qu’aucune correction officielle n’a été fournie par l’équipe MetaGPT, des mesures préventives immédiates sont recommandées. La solution la plus efficace est de mettre à niveau vers une version corrigée dès qu’elle sera disponible. En attendant, il est conseillé de mettre en œuvre un pare-feu d’applications web (WAF) pour filtrer les requêtes malveillantes et restreindre l’accès aux ressources internes. La validation et la désinfection rigoureuses de toutes les entrées utilisateur, en particulier les URL, sont également essentielles pour éviter l’injection de requêtes non autorisées. Surveiller les journaux du serveur à la recherche de schémas de trafic inhabituels peut aider à détecter et à répondre aux attaques potentielles. Envisagez la segmentation du réseau pour limiter l’impact d’une éventuelle exploitation.
Mettez à jour vers une version corrigée de MetaGPT qui résout la vulnérabilité de falsification de requêtes du côté serveur (SSRF) dans la fonction `decode_image`. Consultez le dépôt du projet pour obtenir des informations sur les mises à jour disponibles et suivez les instructions de mise à jour fournies par les développeurs. En attendant l'application d'une correction, évitez de traiter des URLs d'images non fiables.
Analyses de vulnérabilités et alertes critiques directement dans votre boîte mail.
SSRF (Server-Side Request Forgery) est une vulnérabilité qui permet à un attaquant de forcer le serveur à effectuer des requêtes vers des ressources auxquelles le serveur ne devrait pas avoir accès.
Elle permet à un attaquant d’accéder à des ressources internes ou d’effectuer des actions non autorisées via le serveur MetaGPT.
Actuellement, il n’y a pas de correction officielle fournie par l’équipe MetaGPT. Il est recommandé de surveiller le projet pour des mises à jour.
La mise en œuvre d’un pare-feu d’applications web, la validation des entrées utilisateur et la surveillance des journaux du serveur sont des mesures préventives recommandées.
Vous pouvez trouver plus d’informations sur SSRF sur les sites web de cybersécurité et les bases de données de vulnérabilités comme CVE.
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é.