Kort gezegd: Matomo-beveiliging is na PHP2Shell meer dan een kwestie van statistieken. Een gecompromitteerde Matomo-server kan via het trackerscript code in elke gekoppelde website inbrengen. Patch PHP voor web en archivering, herstart en controleer daarna matomo.js, config.ini.php, superusers en auth-tokens.
Waarom Matomo na PHP2Shell bijzonder telt
Veel bedrijven, overheden en bureaus zetten Matomo in als privacyvriendelijk alternatief voor externe analysediensten en hosten het zelf, vaak op een eigen subdomein. Matomo draait op PHP. De kwetsbaarheden CVE-2026-109618 en CVE-2026-109619 maken het volgens het PHP-team mogelijk om op afstand en zonder inloggen schadelijke code uit te voeren, hoe actueel Matomo ook is. Wat er achter de kwetsbaarheden zit, legt Wat is PHP2Shell? uit.
Het bijzondere aan Matomo is het bereik. Elke getrackte website laadt het trackerscript van de Matomo-server. Wordt matomo.js gewijzigd, dan draait vreemde code in de browser van alle bezoekers van die websites, ook waar de website zelf schoon is. Een bureau met één centrale Matomo voor veel klanten draagt daarmee een risico voor allemaal.
Daarbij komen de gegevens: bezoeklogs, afhankelijk van de instelling ingekorte of volledige IP-adressen, paginaweergaven, campagne- en formuliergegevens uit plug-ins. Algemene tips over meldplichten vindt u in het onderdeel Compliance; in het concrete geval beslist uw functionaris voor gegevensbescherming.
Matomo-beveiliging: PHP-versie en archivering controleren
Onder Beheer > Diagnostiek > Systeemcontrole toont Matomo de PHP-versie en controleert het voorwaarden, waaronder de integriteit van de programmabestanden. Verholpen upstreamversies zijn 8.5.12, 8.4.27, 8.3.36 en 8.2.35; backports van distributies dragen vaak oudere nummers.
De rapporten genereert Matomo bij grotere installaties via een cronjob met de opdrachtregel-PHP. Die versie kan afwijken van de web-PHP en moet eveneens zijn gepatcht. Welke PHP-versies uw Matomo-versie ondersteunt, controleert u volgens de systeemeisen op matomo.org.
# Diagnose zoals in de systeemcontrole op de opdrachtregel weergeven
./console diagnostics:run
# Wijzigingsdatum van de trackerbestanden bekijken
ls -l matomo.js piwik.js
Waar schadelijke code in Matomo zit
| Plek | Inhoud | Controlepunt |
|---|---|---|
matomo.js, piwik.js |
Trackerscript voor alle websites | Inhoud en wijzigingsdatum, integriteitscontrole |
config/config.ini.php |
Databasetoegang, salt, vertrouwde hosts | ingevoegde waarden, toegang bij vermoeden vernieuwen |
plugins/ |
Plug-ins uit de Marketplace en eigen | onbekende of gewijzigde plug-ins |
tmp/ |
Cache, gegenereerde assets, gecompileerde templates | na reiniging legen |
misc/user/ |
eigen logo's en aanpassingen | geen PHP-bestanden |
Sommige plug-ins schrijven het trackerbestand opnieuw om eigen functies in te binden. Daarom is matomo.js op veel servers voor de webserver beschrijfbaar, wat het voor aanvallers aantrekkelijk maakt. Controleer de inhoud bij een vermoeden nauwkeurig en vergelijk haar met het originele pakket van uw versie.
Vindt u vreemde code in het trackerscript, verwijder dan de Matomo-trackingcode tijdelijk uit de gekoppelde websites of blokkeer het bestand. Elke minuut levert het de code anders aan nog meer bezoekers.
Superusers, tokens en plug-ins
Superusers hebben in Matomo volledige rechten, ook voor plug-ins en systeeminstellingen. Controleer de gebruikerslijst op onbekende superusers en activeer de tweestapsverificatie die Matomo meebrengt. Auth-tokens onder de persoonlijke beveiligingsinstellingen geven API-toegang zonder wachtwoord; vernieuw ze bij een vermoeden.
Plug-ins uit de Marketplace breiden Matomo uit, maar brengen eigen code mee. Behoud alleen wat nodig is en beperk de toegang tot het beheer zo mogelijk tot bekende netwerken. Op de gekoppelde websites helpt een Content-Security-Policy die scripts alleen van bekende bronnen toestaat; meer daarover onder Beveiligingsheaders voor websites.
Wat een Matomo-update wel en niet kan
Een Matomo-update vervangt de programmabestanden en dicht bekende fouten. Ze patcht PHP niet, herstart noch PHP-FPM noch archiverings-cronjobs en verwijdert geen vreemde superusers, tokens of plug-ins. Of er vóór de patch code aan bezoekers is geleverd, beantwoordt een update niet; daarvoor zijn logs vanaf 20-10-2026 nodig.
Wordt Matomo alleen intern geraadpleegd, dan kan het beheer tot het bedrijfsnetwerk worden beperkt, terwijl alleen de trackingeindpunten openbaar blijven. Daartoe behoren het trackerscript en het eindpunt waar bezoeken worden gemeld; welke bestanden dat in uw versie zijn, bepaalt u met uw beheerder. Zo blijft het aanvalsoppervlak van de webinterface klein. Tegen PHP2Shell vervangt dat de patch echter niet, want ook het trackingeindpunt loopt via PHP.
Hoe helpt PHP SOS concreet?
- Wij controleren de web- en CLI-PHP van uw Matomo-server en laten patch en herstart bevestigen.
- Wij maken een kopie van logs en vergelijken
matomo.jsen de programmabestanden met het origineel. - Wij controleren configuratie, plug-ins, superusers en tokens en vernieuwen samen met u de toegangen.
- Bij geleverde schadelijke code coördineert onze noodhulp de reiniging van Matomo en de gekoppelde websites.
Veelgestelde vragen
Waarom is een gehackte Matomo-server zo gevaarlijk?
Elke getrackte website laadt het trackerscript van de Matomo-server. Wordt dat bestand gewijzigd, dan draait vreemde code in de browser van alle bezoekers van alle gekoppelde websites. Zo wordt één analyseserver een verspreider.
Waar zie ik in Matomo de PHP-versie?
Onder Beheer > Diagnostiek > Systeemcontrole. Daar toont Matomo de PHP-versie en controleert het verdere voorwaarden, ook de integriteit van de bestanden. Een backport herkent u daaraan niet; dat bevestigt uw beheerder.
Moet ik bij een vermoeden de Matomo-tokens vernieuwen?
Ja. Auth-tokens geven toegang tot de Matomo-API zonder wachtwoord. Vernieuw ze voor alle gebruikers en voer de nieuwe tokens in bij gekoppelde systemen zoals dashboards of rapportagetools.