Contexte de la vulnérabilité
En août 2026, Wiz a détecté une série d’intrusions ciblant les serveurs auto‑hébergés de JFrog Artifactory. Les attaques s’appuient sur deux CVE publiées en juillet : CVE‑2026‑42018, qui délivre un jeton d’utilisateur anonyme même lorsque l’accès anonyme est désactivé, et CVE‑2026‑42016, qui permet d’échanger ce jeton contre un jeton disposant du scope administrateur. Les deux failles ont été corrigées avant le début des attaques (28 avril pour la branche 7.146 et 12 août pour la branche 7.133), limitant la cible aux installations non mises à jour.
Mécanisme de la chaîne d'exploitation
L’attaquant envoie d’abord une requête non authentifiée au point d’obtention de jeton d’Artifactory. En raison de CVE‑2026‑42018, le serveur répond avec un jeton associé à l’utilisateur interne « anonymous ». Ce jeton, bien que de faible privilège, est accepté par le point de création de jeton : la validation de signature ne tient pas compte des droits associés, ce qui constitue le cœur de CVE‑2026‑42016. L’attaquant soumet alors le jeton anonyme et reçoit un nouveau jeton signé avec le scope admin, tout en conservant le nom d’utilisateur « anonymous ». Les actions administratives sont ainsi enregistrées sous token:anonymous, masquant l’identité réelle.
Impact, persistance et vecteurs secondaires
Une fois le jeton admin en main, les intrus créent des comptes administrateur persistants et installent des plugins Groovy via le framework de plugins d’Artifactory, ce qui autorise l’exécution de code serveur. Des exemples observés incluent le téléchargement d’un binaire via HTTP dans /tmp et l’établissement d’un canal de commande‑et‑contrôle, ainsi que le dépôt d’un backdoor Rust custom. La persistance n’est pas annulée par la simple mise à jour du logiciel : les comptes créés et les clés de jointure du cluster restent valides. Un troisième défaut, CVE‑2026‑82329, offre un contournement complet de l’authentification avec un score CVSS de 9,8, affectant les branches jusqu’à 7.161 et permettant l’obtention directe de privilèges admin sans chaîne de jetons.
Recommandations de mitigation
Les administrateurs doivent immédiatement mettre à jour Artifactory vers les versions corrigées : 7.146.0 ou ultérieure pour CVE‑2026‑42018, et 7.133.11 pour CVE‑2026‑42016. Pour CVE‑2026‑82329, JFrog propose un contournement consistant à ajouter une valeur aléatoire dans system.yaml comme clé de jointure supplémentaire. Après mise à jour, il faut révoquer tous les jetons existants, changer la clé de jointure du cluster, et supprimer les comptes administrateur inconnus. Un audit des logs à la recherche d’activités token:anonymous ou de création de plugins Groovy doit être réalisé pour détecter d’éventuelles compromissions résiduelles.