Analyse technique : l’application Collabora « Built-in CODE Server » de Nextcloud exploitée pour déposer des web shells

Une injection de commande dans une application optionnelle de Nextcloud a permis à un attaquant de déposer des web shells sur des serveurs, à partir du 10 septembre 2026, alors que le correctif publié le lendemain n’était pas présenté comme une mise à jour de sécurité. Cette analyse s’adresse aux auditeurs, RSSI et responsables sécurité : mode opératoire, correspondance avec MITRE ATT&CK, détection, questions d’audit ISO 27001 et pistes de sensibilisation. Elle repose sur les signalements publics de trois administrateurs et sur l’avis de l’éditeur : le nombre de victimes et l’attaquant ne sont pas connus.

Pour une lecture orientée dirigeant, voir notre décryptage « Nextcloud : une faille corrigée en silence, exploitée pendant un mois ».

Contexte

  • Victimes : au moins trois administrateurs de serveurs Nextcloud, qui ont signalé l’attaque sur le dépôt GitHub du projet ; ni noms ni secteurs publiés (The Hacker News, 14 octobre 2026).
  • Composant : application Nextcloud « Collabora Online – Built-in CODE Server » (paquet richdocumentscode). Elle télécharge Collabora Online Development Edition (CODE) et le fait tourner sur le serveur Nextcloud lui-même, sans serveur Collabora séparé. Sa fiche la destine aux tests, à l’usage personnel ou aux petites équipes.
  • Faille : CVE-2026-110447, injection de commande dans le script qui relance le serveur de documents local. Toutes les versions antérieures à 26.4.303 sont concernées. Ne sont pas concernés : les serveurs Collabora Online autonomes, et les installations qui utilisent l’application Nextcloud Office sans l’application intégrée.
  • Chronologie : modification corrective écrite le 20 août sous un intitulé de « rangement », absente de la version 26.4.302 (31 août), intégrée le 9 septembre ; première attaque enregistrée le 10 septembre ; version 26.4.303 le 11 septembre ; alerte sur le forum de la communauté le 3 octobre ; avis de sécurité et CVE le 14 octobre. L’enregistrement CVE fait état d’une exploitation en septembre et en octobre 2026.
  • Contraintes de correction : les versions corrigées exigent Nextcloud 30 ou plus. Sur Nextcloud 29 et antérieures, en fin de vie, le magasin d’applications sert encore une version vulnérable : mise à niveau de Nextcloud ou suppression de l’application. La version 26.4.402 pose des problèmes de démarrage chez certains administrateurs, revenus à 26.4.303, version de référence de l’avis.
  • Point clé : désactiver l’application dans Nextcloud ne ferme pas la faille, selon l’éditeur. Il faut mettre à jour ou supprimer.

Mode opératoire : ce qui est documenté et ce qui ne l’est pas

Étape Ce qui est rapporté Correspondance MITRE ATT&CK (notre lecture)
Accès initial Requête sans authentification vers le script de relance du serveur de documents. Ce script PHP est exécuté directement par le serveur web et ne charge pas le code de Nextcloud, donc pas son contrôle d’accès. Il ne construit la commande vulnérable que lorsque le serveur de documents est arrêté (redémarrage, mise à jour, plantage). T1190 Exploit Public-Facing Application
Exécution Des éléments de la requête, dont son chemin, sont insérés dans une commande shell entre guillemets doubles ; une substitution de commande y reste interprétée. La commande s’exécute avec les droits du compte du serveur web. T1059.004 Unix Shell
Persistance Décodage et dépôt d’un web shell PHP d’une ligne dans le dossier de l’application. T1505.003 Web Shell
Découverte Envoi d’informations système vers un service web public de réception de requêtes ; sur un serveur, recherche de bases de gestionnaires de mots de passe et de portefeuilles de cryptomonnaies. T1082 System Information Discovery, T1083 File and Directory Discovery, T1552.001 Credentials In Files
Élévation de privilèges Tentatives de sudo échouées par le compte du serveur web, signalées par courriel à un administrateur. Aucun cas d’obtention de root rapporté. T1548.003 Sudo and Sudo Caching (tentative)
Exfiltration Aucune commande d’archivage ou d’envoi de fichiers dans les requêtes examinées. Le premier administrateur recommande de considérer comme exposé tout ce que le compte du serveur web peut lire. Non documentée

La colonne MITRE est une lecture de notre part, à partir des éléments publiés. Après mise à jour en 26.4.303, une nouvelle tentative du même type, depuis une autre source, n’a pas créé de fichier selon un administrateur.

Faits techniques connus sur la correction

  • La correction tient en quelques lignes : la commande de démarrage est désormais transmise comme un argument unique et échappé, si bien que le shell n’interprète plus le texte venant de la requête.
  • Le correctif d’une autre injection de commande dans le même script (CVE-2025-66208, décembre 2025) ne protège pas contre celle-ci.
  • Les notes de version de 26.4.303 ne mentionnaient que la version de CODE embarquée. Collabora a évoqué un retard de traitement record de la base d’avis de GitHub.

Ce qu’on ne sait pas

Le nombre de serveurs compromis, l’identité et les objectifs de l’attaquant, les données réellement consultées ou volées, et la date à laquelle l’éditeur a compris que sa modification corrigeait une faille de sécurité. Nous ne spéculons pas sur ces points.

Détection : ce qui a fonctionné, et pourquoi l’exposition a duré

  • Ce qui a fonctionné : le contrôle d’intégrité intégré à Nextcloud a signalé un nouveau fichier PHP chez un administrateur ; chez un autre, des courriels automatiques sur des tentatives de sudo échouées ont donné l’alerte ; le premier a reconstitué l’attaque à partir des journaux d’accès du serveur web.
  • Pourquoi l’exposition a duré : correctif publié sans mention de sécurité, puis un mois sans CVE ni avis, ce qui prive les outils de gestion des vulnérabilités de tout signal ; fenêtre d’exploitation courte et intermittente (serveur de documents arrêté) ; réflexe de désactivation de l’application inefficace.
  • Ce qui reste observable : requêtes anormales vers le script de l’application dans les journaux d’accès (caractères de substitution de commande ou de remontée de répertoire dans le chemin) ; fichiers PHP inattendus dans le dossier de l’application ; tentatives d’élévation de privilèges par le compte du serveur web ; connexions sortantes inhabituelles depuis le serveur. Les administrateurs doivent remonter au moins jusqu’au 10 septembre.

Questions d’audit ISO 27001:2022

  1. A.8.8 et A.5.7 (gestion des vulnérabilités techniques, renseignement sur les menaces) : « Comment suivez-vous les mises à jour des applications et extensions ajoutées à vos plateformes (Nextcloud, WordPress, CMS) ? Appliquez-vous les mises à jour selon un calendrier régulier, ou seulement à la publication d’une CVE ? Comment traitez-vous les composants dont l’éditeur ne publie pas d’avis de sécurité ? »
  2. A.5.9 et A.8.19 (inventaire des actifs, installation de logiciels sur les systèmes en exploitation) : « Disposez-vous d’un inventaire des applications installées sur vos serveurs exposés ? Qui a validé l’usage en production d’un composant présenté comme destiné aux tests ? Les applications inutilisées sont-elles supprimées, et pas seulement désactivées ? »
  3. A.8.15, A.8.16 et A.8.32 (journalisation, activités de surveillance, gestion des changements) : « Les alertes du contrôle d’intégrité et les échecs d’élévation de privilèges sont-ils collectés hors du serveur et lus ? Un fichier exécutable apparu hors d’un changement planifié déclenche-t-il une alerte ? »
  4. A.5.24 à A.5.26 et A.8.20 (gestion des incidents, sécurité des réseaux) : « Après un correctif appliqué sur un service exposé, recherchez-vous des traces d’exploitation antérieure et renouvelez-vous les secrets lisibles par le compte du service ? Les flux sortants du serveur web sont-ils limités au nécessaire ? »

Pistes de sensibilisation

  • Pour les équipes IT : atelier « Désactivé n’est pas supprimé ». Revue des extensions installées sur les plateformes de l’entreprise, avec trois questions : sert-elle encore ? qui la met à jour ? que se passe-t-il si elle reste présente mais désactivée ?
  • Pour les dirigeants et les responsables d’application : « Une mise à jour sans le mot sécurité reste une mise à jour de sécurité ». La chronologie de ce cas (correctif le 11 septembre, avis le 14 octobre) illustre pourquoi un rythme régulier de mises à jour protège mieux que la seule réaction aux alertes.

À lire aussi : notre décryptage pour les dirigeants, « Nextcloud : une faille corrigée en silence, exploitée pendant un mois », et le bulletin de veille du 15 octobre 2026.

Analyse préparée avec l’aide d’une intelligence artificielle à partir de sources publiques, sous la responsabilité de KyNeo. Malgré nos contrôles, des erreurs peuvent subsister : en cas de doute, référez-vous aux sources citées. Les informations non confirmées sont signalées comme telles.