# Sécurité Matomo après PHP2Shell : sécuriser l'analyse web auto-hébergée

> Sécuriser Matomo après PHP2Shell : consulter PHP dans le contrôle du système, vérifier matomo.js et config.ini.php, contrôler jetons et super utilisateurs.

Source : https://phpsos.de/fr/plattformen/matomo/  
État : 25/10/2026  
Fournisseur : PHP SOS, Assistance d'urgence PHP et sécurité des serveurs. Aide immédiate par WhatsApp : https://wa.me/491736494914?text=Bonjour%20PHP%20SOS%2C%20nous%20avons%20besoin%20d%27aide%20avec%20notre%20serveur%20PHP.%20Entreprise%20%3A%20%E2%80%A6%20Site%20web%20%3A%20%E2%80%A6

**En bref :** après PHP2Shell, la sécurité de Matomo est plus qu'une question de statistiques. Un serveur Matomo compromis peut, via le script de suivi, introduire du code dans chaque site connecté. Corrigez PHP pour le web et l'archivage, redémarrez, puis contrôlez `matomo.js`, `config.ini.php`, les super utilisateurs et les jetons d'authentification.

## Pourquoi Matomo compte particulièrement après PHP2Shell

De nombreuses entreprises, administrations et agences utilisent Matomo comme alternative respectueuse de la vie privée aux services d'analyse externes et l'hébergent elles-mêmes, souvent sur un sous-domaine propre. Matomo fonctionne sur PHP. Les failles CVE-2026-109618 et CVE-2026-109619 permettent, selon l'équipe PHP, d'exécuter du code malveillant à distance sans authentification, quel que soit le niveau de mise à jour de Matomo. Ce qui se cache derrière ces failles est expliqué dans [Qu'est-ce que PHP2Shell ?](https://phpsos.de/fr/php2shell/was-ist-php2shell/).

La particularité de Matomo, c'est sa portée. Chaque site suivi charge le script de suivi depuis le serveur Matomo. Si `matomo.js` est modifié, du code étranger s'exécute dans le navigateur de tous les visiteurs de ces sites, y compris là où le site lui-même est sain. Une agence avec un Matomo central pour de nombreux clients porte ainsi un risque pour tous.

S'y ajoutent les données : journaux de visites, adresses IP tronquées ou complètes selon le réglage, pages vues, données de campagnes et de formulaires issues de plugins. Des indications générales sur les obligations de notification figurent dans la rubrique conformité ; dans un cas précis, c'est votre délégué à la protection des données qui décide.

## Sécurité Matomo : vérifier la version de PHP et l'archivage

Sous **Administration > Diagnostics > Contrôle du système**, Matomo affiche la version de PHP et vérifie des prérequis, dont l'intégrité des fichiers du programme. Les versions corrigées en amont sont 8.5.12, 8.4.27, 8.3.36 et 8.2.35 ; les backports des distributions portent souvent des numéros plus anciens.

Pour les installations plus importantes, Matomo génère les rapports via une tâche cron avec le PHP en ligne de commande. Cette version peut différer du PHP web et doit aussi être corrigée. Les versions de PHP prises en charge par votre version de Matomo se vérifient dans la configuration requise sur matomo.org.

```bash
# Afficher en ligne de commande le diagnostic du contrôle du système
./console diagnostics:run
# Consulter la date de modification des fichiers de suivi
ls -l matomo.js piwik.js
```

## Où se trouve le code malveillant dans Matomo

| Emplacement | Contenu | Point de contrôle |
|---|---|---|
| `matomo.js`, `piwik.js` | Script de suivi pour tous les sites | Contenu et date de modification, contrôle d'intégrité |
| `config/config.ini.php` | Accès à la base de données, salt, hôtes de confiance | valeurs insérées, renouveler l'accès en cas de soupçon |
| `plugins/` | Plugins du Marketplace et plugins propres | plugins inconnus ou modifiés |
| `tmp/` | Cache, assets générés, templates compilés | vider après nettoyage |
| `misc/user/` | logos propres et personnalisations | aucun fichier PHP |

Certains plugins réécrivent le fichier de suivi pour intégrer leurs propres fonctions. C'est pourquoi `matomo.js` est sur de nombreux serveurs modifiable par le serveur web, ce qui la rend attrayante pour les attaquants. En cas de soupçon, vérifiez précisément le contenu et comparez-le au paquet d'origine de votre version.

> **Agir immédiatement:**
> Si vous trouvez du code étranger dans le script de suivi, retirez temporairement le code de suivi Matomo des sites connectés ou bloquez le fichier. Sinon, il livre le code à d'autres visiteurs à chaque minute.

## Super utilisateurs, jetons et plugins

Dans Matomo, les super utilisateurs ont tous les droits, y compris sur les plugins et les réglages système. Vérifiez la liste des utilisateurs à la recherche de super utilisateurs inconnus et activez l'authentification à deux facteurs intégrée à Matomo. Les jetons d'authentification, sous les réglages de sécurité personnels, permettent des accès API sans mot de passe ; renouvelez-les en cas de soupçon.

Les plugins du Marketplace étendent Matomo, mais apportent leur propre code. Ne gardez que ce qui est nécessaire et limitez si possible l'accès à l'administration aux réseaux connus. Sur les sites connectés, une Content-Security-Policy qui n'autorise les scripts que depuis des sources connues aide ; plus à ce sujet sous [En-têtes de sécurité pour les sites web](https://phpsos.de/fr/ratgeber/sicherheits-header/).

## Ce qu'une mise à jour de Matomo peut faire et ne peut pas faire

Une mise à jour de Matomo remplace les fichiers du programme et comble des défauts connus. Elle ne corrige pas PHP, ne redémarre ni PHP-FPM ni les tâches cron d'archivage et ne supprime aucun super utilisateur, jeton ou plugin étranger. Savoir si du code a été livré à des visiteurs avant le correctif, une mise à jour n'y répond pas ; il faut pour cela des journaux à partir du 20/10/2026.

Si Matomo n'est exploité qu'en interne, l'administration peut être limitée au réseau de l'entreprise, tandis que seuls les points de terminaison de suivi restent publics. Cela comprend le script de suivi et le point de terminaison auquel les visites sont signalées ; quels fichiers il s'agit dans votre version, vous le déterminez avec votre exploitant. La surface d'attaque de l'interface web reste ainsi réduite. Contre PHP2Shell, cela ne remplace toutefois pas le correctif, car le point de terminaison de suivi passe lui aussi par PHP.

## Comment PHP SOS aide-t-il concrètement ?

- Nous contrôlons le PHP web et le PHP CLI de votre serveur Matomo et faisons confirmer le correctif et le redémarrage.
- Nous sauvegardons les journaux et comparons `matomo.js` et les fichiers du programme avec l'original.
- Nous contrôlons la configuration, les plugins, les super utilisateurs et les jetons et renouvelons les accès avec vous.
- En cas de code malveillant livré, notre [aide d'urgence](https://phpsos.de/fr/leistungen/website-gehackt-notfallhilfe/) coordonne le nettoyage de Matomo et des sites connectés.


## Questions fréquentes

**Pourquoi un serveur Matomo piraté est-il si dangereux ?**  
Chaque site suivi charge le script de suivi depuis le serveur Matomo. Si ce fichier est modifié, du code étranger s'exécute dans le navigateur de tous les visiteurs de tous les sites connectés. Un simple serveur d'analyse devient ainsi un distributeur.

**Où vois-je la version de PHP dans Matomo ?**  
Sous Administration > Diagnostics > Contrôle du système. Matomo y affiche la version de PHP et vérifie d'autres prérequis, y compris l'intégrité des fichiers. Le numéro ne permet pas de reconnaître un backport ; votre exploitant le confirme.

**Dois-je renouveler les jetons Matomo en cas de soupçon ?**  
Oui. Les jetons d'authentification permettent d'accéder à l'API Matomo sans mot de passe. Renouvelez-les pour tous les utilisateurs et saisissez les nouveaux jetons dans les systèmes connectés, comme les tableaux de bord ou les outils de reporting.

## Sources

- [php.net : avis de sécurité](https://www.php.net/)
- [Matomo](https://matomo.org/)
- [OWASP Cheat Sheets](https://cheatsheetseries.owasp.org/)
- [RGPD, art. 33](https://dsgvo-gesetz.de/art-33-dsgvo/)
