CVE-2026-6596 : Téléversement de fichier arbitraire dans Langflow
L’analyse indique une vulnérabilité de sécurité critique dans le framework d’orchestration Langflow. Plus précisément, la fonction create_upload_file manque de validation suffisante pour les requêtes de téléversement de fichiers, ce qui peut mener à un téléversement de fichier arbitraire et à une RCE subséquente.
Aperçu de la vulnérabilité
Section intitulée « Aperçu de la vulnérabilité »La faille provient d’une désinfection et d’une validation inadéquates du processus de téléversement de fichier au sein de la fonction create_upload_file. Un attaquant authentifié peut manipuler la requête pour contourner les contraintes prévues, permettant le placement de fichiers malveillants en dehors du répertoire de téléversement désigné.
Analyse technique
Section intitulée « Analyse technique »J’ai observé que l’application n’applique pas de liste blanche pour les extensions de fichiers, et ne désinfecte pas le chemin de destination, créant une vulnérabilité de traversée de répertoire. En élaborant une requête de téléversement spécifique, un attaquant peut placer un fichier avec un contenu arbitraire sur le système de fichiers sous-jacent.
Artefacts Forensic
Section intitulée « Artefacts Forensic »Lors de l’investigation, concentrez-vous sur les artefacts suivants pour identifier une exploitation :
- Système de fichiers : Surveillez la création de fichiers inattendus dans les répertoires
uploadsou temporaires de Langflow. - Journaux Web : Recherchez les requêtes
POSTciblant le point de terminaison*/create_upload_file. - Journaux d’application : Auditez les journaux pour les échecs de traitement de fichiers ou une activité inhabituelle associée aux utilisateurs authentifiés.
Logique de détection
Section intitulée « Logique de détection »Règle Sigma
Section intitulée « Règle Sigma »title: Suspicious File Upload to Langflowstatus: experimentaldescription: Detects unauthorized file uploads via Langflow create_upload_file endpointlogsource: product: web_server category: web_accessdetection: selection: cs-method: 'POST' cs-uri-stem: '*/create_upload_file' condition: selectionpriority: highRequête KQL
Section intitulée « Requête KQL »index=web_logs| search uri_path="*/create_upload_file"| eval file_ext = replace(file_name, ".*\\.", "")| where file_ext IN ("py", "sh", "bat", "php", "js")| table _time, src_ip, uri_query, file_name| sort -_timeAtténuation
Section intitulée « Atténuation »- Mise à jour : Mettez immédiatement à jour vers la dernière version de Langflow contenant le correctif.
- Validation : Implémentez des contrôles rigoureux côté serveur sur le type, la taille et le chemin de destination du fichier.
- Environnement : Appliquez le principe du moindre privilège, en restreignant l’accès en écriture de l’utilisateur de service aux seuls répertoires nécessaires.
- Surveillance : Activez la surveillance de l’intégrité des fichiers en temps réel sur les dossiers critiques de l’application.