Wiz Research a confirmé l’exploitation active de trois vulnérabilités de JFrog Artifactory, le gestionnaire de dépôts d’artefacts présent dans de nombreuses chaînes CI/CD. Entre le 15 août et le 8 septembre 2026, plusieurs acteurs ont enchaîné deux d’entre elles pour passer d’une requête anonyme à un compte administrateur, parfois en moins de cinq minutes. Une troisième faille, critique, permet d’obtenir directement un jeton administrateur. Une fois dans la place, les attaquants ont installé des plugins Groovy malveillants, une porte dérobée écrite en Rust et volé des clés de signature. Ces éléments restent en place après la mise à jour.
- Trois CVE exploitées : CVE-2026-42018 et CVE-2026-42016, enchaînées, ainsi que CVE-2026-82329 (CVSS 9,8), contournement d’authentification autonome.
- Les instances auto-hébergées sont concernées. JFrog indique que les instances Cloud ont déjà été corrigées.
- Après l’intrusion : comptes administrateurs persistants, plugins Groovy malveillants, porte dérobée en Rust avec commande et contrôle, vol de configuration, d’identifiants et de clés de signature.
- Six semaines après la divulgation, Wiz estime que 59 % des organisations utilisant Artifactory restaient vulnérables à CVE-2026-42016.
- Wiz recommande de considérer toute instance exposée et vulnérable comme compromise : mettre à jour ne suffit pas.
Trois failles, deux chemins vers l’administration
| CVE | Nature | Sévérité | Publication JFrog | Ajout au KEV |
|---|---|---|---|---|
| CVE-2026-42018 | Authentification incorrecte : jeton de l’utilisateur anonyme interne renvoyé à un appelant non authentifié, même si l’accès anonyme est désactivé | Élevée (CVSS 7,5) | 12 août 2026 | 11 septembre 2026 |
| CVE-2026-42016 | Autorisation incorrecte : la signature et l’émetteur du jeton sont vérifiés, pas sa portée | Élevée (CVSS 8,1) | 27 juillet 2026 | 11 septembre 2026 |
| CVE-2026-82329 | Contournement d’authentification en configuration par défaut, menant à un accès administrateur | Critique (CVSS 9,8) | 28 août 2026 | 2 septembre 2026 |
Chemin 1 : du jeton anonyme au jeton administrateur
Wiz décrit une chaîne en trois requêtes HTTP non authentifiées :
- Un POST sur /access/api/v1/aws/token/ (avec la barre oblique finale) renvoie un JWT de l’utilisateur anonyme interne (CVE-2026-42018).
- Un POST sur /access/api/v1/tokens avec ce JWT renvoie un jeton de portée administrateur, qui porte toujours le nom d’utilisateur anonyme (CVE-2026-42016).
- Un PUT sur /api/security/users/<nom> ou /access/api/ui/users/<nom> crée un administrateur persistant.
Dans les journaux, les actions suivantes apparaissent sous l’acteur token:anonymous.
Chemin 2 : la jonction de cluster détournée
CVE-2026-82329 est plus direct : une requête POST sur /access/api/v1/registry/join renvoie un jeton administrateur. Selon des analyses publiées, sur une installation par défaut, une clé de jonction vide reste considérée comme valide, avec un secret de signature prévisible. L’attaquant peut alors forger un JWT de jonction. JFrog propose d’ailleurs, en mesure temporaire, de définir une valeur aléatoire pour additionalJoinKeys (section shared › security de system.yaml) puis de redémarrer le service Access. Selon la presse, watchTowr a observé l’exploitation de cette faille dès le 1er septembre, quelques jours après le correctif.
Ce que font les attaquants après l’intrusion
Wiz souligne que les actions observées ne sont pas le fait d’un seul acteur. Les comportements récurrents sont les suivants :
- Comptes administrateurs persistants aux noms de test (labadmin_…, svc_…) ou d’apparence légitime (jfrog-distribution, repo-service, backup-service, ldap_admin…), parfois avec une clé SSH de l’attaquant associée.
- Jetons longue durée créés via /access/api/v1/tokens.
- Vol de données : configuration système, clé de jonction du cluster, énumération des utilisateurs, dépôts et jetons.
- Charges de second niveau téléchargées dans /dev/shm, /tmp ou /var/tmp, dont une porte dérobée en Rust avec capacités de commande et contrôle, et parfois des web shells déposés dans des dépôts.
Des plugins Groovy qui survivent au correctif
La mise à jour de Wiz du 17 septembre détaille les plugins Groovy malveillants déposés dans $JFROG_HOME/var/etc/artifactory/plugins/. Ils s’exécutent sans bac à sable avec les privilèges du compte de service, sont rechargés au redémarrage et survivent au patch. Wiz les classe en trois niveaux :
| Niveau | Plugins | Capacités |
|---|---|---|
| 1 — Shells jetables | rce.groovy, cmd.groovy, jwtToken.groovy, uploadFile.groovy | Exécution de commandes. Certains sont ouverts à l’utilisateur anonyme et restent utilisables après le correctif |
| 2 — Collecte d’identifiants | JFrogImage.groovy | Export de la configuration (LDAP, Crowd, messagerie, proxys, dépôts distants, avec identifiants déchiffrés), de la base des utilisateurs et jetons et des clés de signature Access. Les réponses passent par une erreur HTTP 500 pour échapper aux détections |
| 3 — Implants résidents | metrics.groovy, httpSession.groovy | Filtre de servlet en mémoire, blocage des acteurs concurrents, lecture de la clé privée Access, tunnel réseau, troncature des journaux request*.log et auto-suppression |
Pourquoi c’est grave
Artifactory est au cœur de la chaîne d’approvisionnement logicielle : il stocke et distribue les artefacts de build et de déploiement. Un attaquant administrateur peut modifier ce que vos pipelines consomment. Et avec la clé privée Access, il peut forger des jetons tant que le certificat n’est pas renouvelé.
Le retard de correction aggrave le risque. Selon Wiz, 67 % des organisations utilisant Artifactory avaient au moins une instance vulnérable à CVE-2026-42016 lors de la publication. Elles étaient encore 59 % six semaines après la divulgation. Pour CVE-2026-82329, la part est passée de 67 % à 49 % en deux semaines.
Versions corrigées
Mettez à jour vers 7.111.21, 7.117.28, 7.125.20, 7.133.29, 7.146.38 ou 7.161.20 (ou ultérieure) selon votre branche. Ces versions sont celles recommandées par Wiz et par l’avis JFrog pour CVE-2026-82329.
Lecture MITRE ATT&CK
Wiz ne fournit pas de correspondance ATT&CK. Le tableau ci-dessous est une lecture indicative de Defensy, établie à partir des comportements décrits.
| Technique | Comportement observé |
|---|---|
| T1190 — Exploit Public-Facing Application | Exploitation des trois CVE sur des instances exposées |
| T1136 — Create Account | Création de comptes administrateurs persistants |
| T1098 — Account Manipulation | Clés SSH de l’attaquant ajoutées aux comptes créés |
| T1505 — Server Software Component | Plugins Groovy malveillants persistants |
| T1505.003 — Web Shell | Web shells déposés dans des dépôts |
| T1105 — Ingress Tool Transfer | Téléchargement de charges dans /tmp, /dev/shm et /var/tmp |
| T1552.001 — Credentials In Files | Export de configuration avec identifiants déchiffrés et clés de signature |
| T1070 — Indicator Removal | Troncature des journaux request*.log et suppression des plugins |
| T1090 — Proxy | Tunnel réseau fourni par httpSession.groovy |
Recommandations
- ImmédiatMettre à jour et restreindre l’accès
Appliquez la version corrigée de votre branche, en priorité sur les instances exposées sur Internet, et limitez l’accès à Artifactory aux réseaux et systèmes de confiance. À défaut de mise à jour immédiate, appliquez la mesure additionalJoinKeys proposée par JFrog.
- ImmédiatPrésumer la compromission et chercher les traces
Si l’instance était exposée et vulnérable, auditez les comptes administrateurs, les jetons, les clés SSH associées et le dossier des plugins. Un serveur normal dont l’API de plugins est cassée peut signaler la présence de l’implant metrics.
- ImmédiatRenouveler clés et identifiants
Renouvelez le certificat de signature des jetons Access : une mise à jour ne révoque pas une clé private.key volée. Renouvelez aussi la clé de jonction du cluster et les identifiants stockés dans Artifactory (LDAP, proxys, dépôts distants, base de données).
- Court termeDéployer des détections sur les journaux Artifactory
Alertez sur une erreur 401 sur /access/api/v1/aws/token/ suivie d’un 200 sur une variante depuis le même client, sur des appels à /access/api/v1/tokens par des identités anonymes ou peu privilégiées, et sur un succès de /registry/join corrélé à une création d’utilisateur ou à une lecture de configuration. Surveillez les fichiers de journaux vides ou tronqués.
- Court termeVérifier l’intégrité des artefacts
Contrôlez les artefacts publiés ou modifiés pendant la période d’exposition et les dépôts où des fichiers inattendus ont été déposés.
- Moyen termeTraiter la forge d’artefacts comme un actif critique
Centralisez ses journaux dans le SOC, limitez les comptes administrateurs et intégrez Artifactory à vos tests d’intrusion et à la revue de votre chaîne d’approvisionnement logicielle.
Cette campagne montre qu’un correctif ne met pas fin à un incident : comptes, plugins et clés volées survivent à la mise à jour. Une instance Artifactory exposée pendant la période d’exploitation doit être traitée comme un incident de sécurité, pas seulement comme une tâche de patch.
Notre équipe SOC, Détection & Réponse peut mener cette recherche de compromission et vous accompagner dans la remédiation. Si vous constatez une activité suspecte, signalez l’incident sans attendre. Avec IGIDER Strike, gardez une vue à jour de vos actifs exposés et de leurs vulnérabilités exploitables.
- Artifactory Under Attack: In-the-Wild Exploitation of CVE-2026-42016, CVE-2026-42018 & CVE-2026-82329Wiz Research — S. Dorfman, S. Johnstone, Z. Kaplan, K. Giacchino — 10 septembre 2026, mis à jour le 17 septembre 2026
- JFrog Security AdvisoriesJFrog
- CISA KEV Flags Exploited Artifactory, ScreenConnect and RouterOS VulnerabilitiesHexnode — 16 septembre 2026
- Artifactory flaws chained in attacks deploying backdoor malwareBleepingComputer — 11 septembre 2026
- CVE-2026-82329: Critical JFrog Artifactory Authentication Bypass Exploited in the WildSOC Prime — septembre 2026
- Failles JFrog Artifactory enchaînées par des attaquants (article d’origine)The Hacker News — septembre 2026
- MITRE ATT&CK® — Enterprise MatrixMITRE Corporation
