La faille pourrait permettre aux attaquants de contourner le processus de vérification de signature de modèle de Nuclei pour injecter des codes malveillants dans les systèmes hôtes.
Un outil open source très populaire, Nuclei, utilisé pour analyser les vulnérabilités et les faiblesses des sites Web, des applications cloud et des réseaux, présente une faille de haute gravité qui pourrait potentiellement permettre aux attaquants d’exécuter des codes malveillants sur les systèmes locaux.
La faille identifiée comme CVE-2024-43405 se voit attribuer un score CVSS de 7,4 sur 10 et aurait un impact sur toutes les versions de Nuclei ultérieures à la 3.0.0.
Les attaquants pourraient utiliser des modèles malveillants avec des codes arbitraires pouvant permettre l’accès aux données sensibles de l’hôte, selon les chercheurs de la société de sécurité Cloud Wiz, à qui l’on attribue la découverte de CVE-2024-43405. Le POC de contournement a été publié avec la description destinée aux utilisateurs.
Selon une description de ProjectDiscovery, le développeur et mainteneur de Nuclei, la faille est présente dans le processus de vérification de la signature du modèle, en particulier dans le package « signataire ».
« Une vulnérabilité a été identifiée dans le système de vérification de signature de modèle de Nuclei qui pourrait permettre à un attaquant de contourner la vérification de signature et éventuellement d’exécuter du code malveillant via un modèle de code personnalisé », a déclaré ProjectDiscovery dans la description.
La faille a reçu un correctif lors du déploiement Nuclei v3.3.2.
Vérification du modèle de Spoofing Nuclei
Nuclei compte plus de 21 000 étoiles sur GitHub et plus de 2,1 millions de téléchargements. L’outil utilise des « modèles », sous la forme de fichiers YAML, qui définissent des vérifications ou des tests spécifiques pour le processus d’analyse des vulnérabilités. Il est essentiel de garantir l’authenticité de ces modèles pour éviter les modèles falsifiés ou malveillants qui induisent en erreur ou compromettent le processus d’analyse.
Nuclei a mis en place un processus de vérification de signature basé sur Go regex pour garantir l’authenticité. La faille provient d’une divergence entre la façon dont le processus de vérification de signature et l’analyseur YAML traitent les caractères de nouvelle ligne, a expliqué ProjectDiscovery. Alors que la logique de vérification de Go considère « r » comme faisant partie de la même ligne, l’analyseur YAML le traite comme un saut de ligne, laissant ainsi la possibilité aux attaquants d’insérer des codes malveillants.
Ceci, combiné au fait que Nuclei a un traitement défectueux de plusieurs lignes de signature « digest : », peut potentiellement conduire un attaquant à injecter du contenu malveillant dans un modèle tout en gardant la signature valide pour la partie inoffensive du modèle.
Les utilisateurs CLI et SDK sont concernés
Selon ProjectDiscovery, les utilisateurs CLI et SDK de Nuclei sont concernés et doivent appliquer des correctifs. Les utilisateurs CLI incluent ceux qui exécutent des modèles de code personnalisés à partir de sources non vérifiées telles que des tiers et des référentiels non vérifiés.
Les utilisateurs du SDK sont affectés lorsque les développeurs intégrant Nuclei dans leurs plates-formes autorisent l’exécution de modèles de code personnalisés par les utilisateurs finaux.
Outre la mise à niveau vers la version fixe disponible depuis le 4 septembre 2024, une mesure provisoire pourrait inclure de s’abstenir d’utiliser des modèles personnalisés, a conseillé ProjectDiscovery.