Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-79984 — Reproducteur de preuve de concept exécutable pour CVE-2026-79984, une traversée de chemin dans Apache Camel camel-mina-sftp, avec des fixtures de serveur SFTP malveillant et des builds affectés vs. corrigés. | Kitploit
Outils/GitHubGitHub/oscerd/cve-2026-79984
Outils DéfensifsAnalyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et Éducation
GitHuboscerd/cve-2026-79984

CVE-2026-79984

Reproducteur de preuve de concept exécutable pour CVE-2026-79984, une traversée de chemin dans Apache Camel camel-mina-sftp, avec des fixtures de serveur SFTP malveillant et des builds affectés vs. corrigés.

Voir le dépôt
2il y a 2 joursPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2026-79984 — camel-mina-sftp : le consumer construit le chemin distant à partir du listing du serveur sans confinement

Reproducteur de proof-of-concept exécutable pour la vulnérabilité Apache Camel où le consumer mina-sftp — qui dérive de la même classe de base RemoteFileConsumer que les autres consumers de fichiers distants — construit le chemin distant absolu de chaque fichier interrogé en concaténant le répertoire configuré avec le nom rapporté dans le listing du répertoire du serveur, sans normalisation lexicale ni vérification de confinement. Ce chemin devient ensuite l'opérande de la récupération (toujours), et de la suppression ou du renommage lorsque delete=true, move, preMove, moveFailed ou readLock=rename est configuré.

Un nom d'entrée de répertoire SFTP est une chaîne de protocole brute fournie par le serveur, de sorte qu'un serveur compromis, malveillant ou multi-tenant peut rapporter un nom qui n'est pas un segment de chemin unique.

Ceci est le frère mina-sftp de CVE-2026-79983 (camel-ftp) ; les deux partagent la même cause racine et le même correctif.

RuntimeRépertoireStack
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-mina-sftp 4.22.0 (affecté ; corrigé en 4.22.1)
Camel Quarkuscamel-quarkus/Quarkus 3.39.0 + camel-quarkus-mina-sftp 3.39.0 (Camel 4.22.0, affecté ; contrôle corrigé 3.40.0 / Camel 4.22.1)

camel-mina-sftp a été introduit dans Camel 4.18.0, le composant n'existe donc pas dans le Camel 4.15.0 fourni par la dernière version numérotée de Camel Quarkus ; ce reproducteur utilise Camel Quarkus 3.39.0 (Camel 4.22.0, affecté), avec 3.40.0 (Camel 4.22.1) comme contrôle corrigé. Les deux modules démontrent donc le comportement affecté et le comportement corrigé.

Ce qu'il démontre

L'application embarque un serveur SFTP délibérément malveillant (Apache MINA SSHD). Il sert une véritable arborescence de répertoires temporaire mais réécrit, dans sa réponse SSH_FXP_READDIR, le nom d'un fichier du répertoire interrogé /upload en la chaîne de traversée d/../../outside.txt (via une surcharge de getShortName). Le nom ne commence pas par un point, donc la règle de Camel sur les fichiers cachés ne l'intercepte pas, et /upload + d/../../outside.txt se résout en /outside.txt, un niveau au-dessus du répertoire interrogé. Un consumer mina-sftp simple interroge /upload.

  • Affecté : il récupère à la fois normal.txt et le fichier échappant /outside.txt.
  • Corrigé : il conserve normal.txt et ignore l'entrée échappante, en journalisant Skipping file as it resolves outside the starting directory: upload/d/../../outside.txt.
cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down

Sortie attendue sur le build affecté :

    name=[d/../../outside.txt]  <<< FILE FROM OUTSIDE THE POLLED DIRECTORY
        content: OUTSIDE-SECRET (/outside.txt, a file the consumer should never reach)
    name=[normal.txt]  (inside)

Résumé de la vulnérabilité

PropriétéValeur
Composantcamel-mina-sftp (schéma mina-sftp)
CWECWE-22 (Limitation incorrecte d'un nom de chemin à un répertoire restreint)
GravitéÉLEVÉE
Vecteur d'attaqueUn nom d'entrée READDIR (fourni par le serveur) qui n'est pas un segment de chemin unique
ImpactLecture — et, avec delete/move/readLock=rename, suppression ou renommage — de fichiers en dehors du répertoire interrogé, en utilisant les identifiants du point de terminaison
Versions affectéesÀ partir de 4.18.0 avant 4.18.5, à partir de 4.19.0 avant 4.22.1
Versions corrigées4.18.5, 4.22.1, 4.23.0
JIRACAMEL-24487
CréditDilrevx de NSSL, SJTU

Avis de sécurité : https://camel.apache.org/security/CVE-2026-79984.html

Le correctif

GenericFileConsumer.isWithinStartingDirectory (surchargée par RemoteFileConsumer, dont dérive le consommateur mina-sftp) compacte le chemin résolu et vérifie, sur les limites de segments de chemin, qu'il reste à l'intérieur du répertoire interrogé ; une entrée se résolvant à l'extérieur est ignorée avec un avertissement tandis que les entrées légitimes continuent d'être traitées.

Atténuation si vous ne pouvez pas mettre à jour

Vérifiez la clé d'hôte du serveur, restreignez le consommateur avec filter/antInclude/include pour n'accepter que des noms à segment unique, et évitez delete/move/preMove/moveFailed/readLock=rename contre des serveurs dont les listages ne sont pas entièrement fiables. Lorsque cela est possible, limitez le compte serveur au répertoire interrogé.

Avertissement

Ce dépôt est publié à des fins éducatives et défensives : pour aider les utilisateurs d'Apache Camel à comprendre la vulnérabilité, à vérifier s'ils sont affectés et à confirmer que la mise à jour la résout. Le serveur malveillant et le « secret » sont des fixtures locales inertes. N'utilisez pas ce matériel contre des systèmes que vous ne possédez pas ou n'exploitez pas.

Télécharger l’outil