Aktuální situace: PHP2Shell. Dvě kritické zranitelnosti PHP (CVSS 9.2) umožňují spustit škodlivý kód bez přihlášení. Záplaty od 21. 10. 2026.Co nyní udělat →

Bezpečnost Matomo po PHP2Shell: jak zabezpečit vlastní webovou analytiku

Kompromitovaný server Matomo může doručovat škodlivý kód do všech sledovaných webů. Po PHP2Shell se počítá záplata PHP, restart, kontrola skriptu trackeru a tokenů API.

Stav 4 min čteníPlatformy

Stručně: Bezpečnost Matomo je po PHP2Shell víc než otázka statistik. Kompromitovaný server Matomo může přes skript trackeru vložit kód do každého napojeného webu. Záplatujte PHP pro web i archivaci, restartujte a poté zkontrolujte matomo.js, config.ini.php, superuživatele a autentizační tokeny.

Proč Matomo po PHP2Shell obzvlášť záleží

Mnoho firem, úřadů a agentur používá Matomo jako alternativu externích analytických služeb šetrnější k ochraně osobních údajů a provozuje je samo, často na vlastní subdoméně. Matomo běží na PHP. Zranitelnosti CVE-2026-109618 a CVE-2026-109619 umožňují podle týmu PHP spuštění škodlivého kódu na dálku bez přihlášení, bez ohledu na to, jak aktuální Matomo je. Co za zranitelnostmi stojí, vysvětluje článek Co je PHP2Shell?.

Zvláštností Matomo je dosah. Každý sledovaný web načítá skript trackeru ze serveru Matomo. Pokud se matomo.js změní, spustí se cizí kód v prohlížeči všech návštěvníků těchto webů, i tam, kde je web sám čistý. Agentura s centrálním Matomo pro mnoho zákazníků tak nese riziko za všechny.

K tomu přistupují data: protokoly návštěv, podle nastavení zkrácené nebo úplné IP adresy, zobrazení stránek, data kampaní a formulářů z pluginů. Obecné rady k oznamovacím povinnostem najdete v oblasti Compliance; v konkrétním případě rozhoduje váš pověřenec pro ochranu osobních údajů.

Bezpečnost Matomo: kontrola verze PHP a archivace

V nabídce Administrace > Diagnostika > Kontrola systému zobrazuje Matomo verzi PHP a kontroluje předpoklady, mimo jiné integritu programových souborů. Opravené verze upstreamu jsou 8.5.12, 8.4.27, 8.3.36 a 8.2.35; backporty distribucí často nesou starší čísla.

Reporty vytváří Matomo u větších instalací prostřednictvím úlohy cron s PHP pro příkazovou řádku. Tato verze se může lišit od webového PHP a musí být rovněž záplatována. Které verze PHP vaše verze Matomo podporuje, ověříte podle systémových požadavků na matomo.org.

# Vypsat diagnostiku jako v kontrole systému na příkazové řádce
./console diagnostics:run
# Prohlédnout datum změny souborů trackeru
ls -l matomo.js piwik.js

Kde se škodlivý kód v Matomo nachází

Místo Obsah Bod kontroly
matomo.js, piwik.js Skript trackeru pro všechny weby Obsah a datum změny, kontrola integrity
config/config.ini.php Přístup k databázi, salt, důvěryhodní hostitelé Vložené hodnoty, přístup při podezření obnovit
plugins/ Pluginy z Marketplace i vlastní Neznámé nebo změněné pluginy
tmp/ Cache, vygenerované assety, zkompilované šablony Po vyčištění vyprázdnit
misc/user/ Vlastní loga a úpravy Žádné soubory PHP

Některé pluginy přepisují soubor trackeru, aby zapojily vlastní funkce. Proto je matomo.js na mnoha serverech pro webový server zapisovatelný, což ho pro útočníky činí atraktivním. Obsah po podezření pečlivě zkontrolujte a porovnejte jej s originálním balíčkem své verze.

Jednejte ihned

Pokud ve skriptu trackeru najdete cizí kód, dočasně odstraňte sledovací kód Matomo z napojených webů nebo soubor zablokujte. Jinak jej každou minutu doručuje dalším návštěvníkům.

Superuživatelé, tokeny a pluginy

Superuživatelé mají v Matomo plná práva, také k pluginům a systémovým nastavením. Zkontrolujte seznam uživatelů, zda neobsahuje neznámé superuživatele, a aktivujte dvoufázové přihlášení, které Matomo nabízí. Autentizační tokeny v osobním nastavení zabezpečení umožňují přístup k API bez hesla; po podezření je obnovte.

Pluginy z Marketplace Matomo rozšiřují, ale přinášejí vlastní kód. Ponechte jen to, co se používá, a přístup do administrace pokud možno omezte na známé sítě. Na napojených webech pomáhá Content Security Policy, která povoluje skripty jen ze známých zdrojů; více v článku Bezpečnostní hlavičky pro weby.

Co aktualizace Matomo zvládne a co ne

Aktualizace Matomo nahradí programové soubory a uzavře známé chyby. Nezáplatuje PHP, nerestartuje ani PHP-FPM, ani archivační úlohy cron a neodstraní cizí superuživatele, tokeny ani pluginy. Zda se před záplatou doručoval kód návštěvníkům, aktualizace nezodpoví; k tomu jsou potřeba logy od 20. 10. 2026.

Pokud se Matomo vyhodnocuje jen interně, lze administraci omezit na firemní síť, zatímco veřejné zůstanou jen koncové body sledování. Patří k nim skript trackeru a koncový bod, kterému se návštěvy hlásí; které soubory to ve vaší verzi jsou, určete s provozovatelem. Plocha pro útok webového rozhraní tak zůstane malá. Proti PHP2Shell to záplatu ale nenahrazuje, protože i koncový bod sledování běží přes PHP.

Jak konkrétně pomáhá PHP SOS?

  • Kontrolujeme webové a CLI PHP vašeho serveru Matomo a necháme si potvrdit záplatu a restart.
  • Zálohujeme logy a porovnáváme matomo.js a programové soubory s originálem.
  • Kontrolujeme konfiguraci, pluginy, superuživatele a tokeny a spolu s vámi obnovujeme přístupy.
  • Při doručeném škodlivém kódu koordinuje čištění Matomo i napojených webů naše pohotovostní pomoc.

Časté dotazy

Proč je napadený server Matomo tak nebezpečný?

Každý sledovaný web načítá skript trackeru ze serveru Matomo. Pokud se tento soubor změní, spustí se cizí kód v prohlížeči všech návštěvníků všech napojených webů. Jediný analytický server se tak stane distributorem.

Kde v Matomo vidím verzi PHP?

V nabídce Administrace > Diagnostika > Kontrola systému. Matomo tam zobrazuje verzi PHP a kontroluje další předpoklady, také integritu souborů. Backport z toho nepoznáte; potvrdí to váš provozovatel.

Musím po podezření obnovit tokeny Matomo?

Ano. Autentizační tokeny umožňují přístup k API Matomo bez hesla. Obnovte je u všech uživatelů a nové tokeny zadejte v napojených systémech, například v dashboardech nebo nástrojích pro reporty.

Zdroje

Okamžitý kontakt

Každá hodina se počítá. Napište nám hned.

Stručně popište systém, verzi PHP a pozorování. Ozveme se, vyjasníme situaci a budeme pracovat na dálku, dokud nebude incident uzavřen a zdokumentován.

Okamžitá pomoc