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 MediaWiki po PHP2Shell: jak zabezpečit interní wiki

Interní wiki obsahují popisy přístupů, postupy a síťové plány. Po PHP2Shell se počítá záplata PHP, restart, chráněný adresář images a prověření interface administrátorů.

Stav 4 min čteníPlatformy

Stručně: Bezpečnost MediaWiki po PHP2Shell začíná u PHP serveru, protože zranitelnost je tam a ne ve wiki. Interní wiki se často roky nechávají být a běží na starých verzích PHP. Zkontrolujte stav na Speciální:Verze, záplatujte a restartujte a poté prověřte LocalSettings.php, images a interface administrátory.

Proč jsou interní wiki lákavým cílem

MediaWiki slouží v mnoha firmách, úřadech a výzkumných institucích jako interní příručka. Najdete tam postupy, kontaktní osoby, síťové plány, návody k serverům a někdy i přístupové údaje, které tam nepatří. Pro útočníka je taková wiki mapou firmy.

Zranitelnosti PHP 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í. Wiki, která měla být „jen interní“, ale je dostupná přes internet, je tak přímo napadnutelná. A protože wiki jen zřídka stojí v centru zájmu IT, běží často na starých serverech, často ještě s PHP jako modulem Apache, tedy v provozním režimu s nejvyšším rizikem podle týmu PHP.

Bezpečnost MediaWiki: kontrola verze PHP a stavu záplat

Stránka Speciální:Verze ukazuje verzi MediaWiki, PHP a databáze i všechna nainstalovaná rozšíření a skiny. Opravené verze upstreamu jsou 8.5.12, 8.4.27, 8.3.36 a 8.2.35. Mnoho serverů s wiki běží na distribucích Linuxu s backporty; zobrazené číslo pak zůstane stejné, přestože je záplatováno.

Pokud wiki běží na PHP 8.1 nebo starším, projekt PHP už nevydává oficiální aktualizace, jen minimální zdrojové backporty pro 7.4, 8.0 a 8.1. Co pak platí, shrnuje článek PHP 8.1 a starší. Které verze PHP vaše verze MediaWiki podporuje, ověříte podle systémových požadavků na mediawiki.org. Změna PHP může vyžadovat upgrade MediaWiki.

Skripty údržby a job runnery běží přes PHP pro příkazovou řádku. I tato verze musí být záplatována. Pokud fronta úloh běží jako trvalá služba, musí se po aktualizaci restartovat stejně jako webový server nebo PHP-FPM. U mod_php to znamená restart samotného Apache, protože PHP je tam součástí procesu webového serveru.

Ujasněte si také, komu wiki patří. Interní wiki často zřídilo odborné oddělení a běží mimo běžnou péči o servery. Bez jasné odpovědnosti tam aktualizace PHP zůstává ležet nejdéle.

Adresáře a soubory v MediaWiki

Místo Obsah Bod kontroly
LocalSettings.php Přístup k databázi, $wgSecretKey, $wgUpgradeKey, práva, nastavení nahrávání Vložený kód, klíče při podezření obnovit
images/ Nahrané soubory a náhledy Žádné soubory PHP, žádné spouštění PHP
extensions/, skins/ Rozšíření a vzhledy Neznámé nebo změněné soubory
cache/ Vyrovnávací paměť Po vyčištění vyprázdnit
maintenance/ Skripty údržby pro příkazovou řádku Nepoužívat přes web

Adresář pro nahrávání by na úrovni webového serveru neměl spouštět skripty. Pod Apache to funguje bez ohledu na provozní režim PHP takto:

<Directory "/var/www/wiki/images">
    <FilesMatch "\.(php|phtml|phar)$">
        Require all denied
    </FilesMatch>
</Directory>

Neškodná první kontrola:

find images -type f -name "*.php*"
ls -l LocalSettings.php
Tip

Zkontrolujte stránky MediaWiki:Common.js a MediaWiki:Common.css v historii verzí. Změny tam působí na každého návštěvníka wiki a jsou typickým místem pro vložený kód.

Práva, skupiny a rozšíření

V MediaWiki o bezpečnosti rozhodují skupiny uživatelů. Na Speciální:Uživatelé zkontrolujte, kdo patří do skupin administrátorů, byrokratů a interface administrátorů. Interface administrátoři mohou měnit JavaScript celé wiki; tato skupina by měla být velmi malá.

U interní wiki by mělo být čtení bez přihlášení vypnuto a registrace nových účtů zablokována. Nahrávání povolte jen pro typy souborů, které se skutečně používají. Rozšíření přinášejí vlastní kód PHP; neudržovaná rozšíření navíc brzdí každý upgrade. K právům k souborům na serveru poskytuje orientaci průvodce Práva k souborům na webovém serveru.

Co aktualizace MediaWiki zvládne a co ne

Aktualizace MediaWiki nahradí jádro a uzavře v něm známé chyby. Nezáplatuje PHP, nerestartuje procesy PHP, nic nemění na LocalSettings.php a neodstraní ani soubory v images/, ani změny v MediaWiki:Common.js či další členy skupin. Neprokazuje ani, že před záplatou nikdo nečetl.

Rychlý přehled poskytují také protokoly na Speciální:Protokoly. Nové uživatelské účty, změny skupinových práv a úpravy stránek rozhraní od 17. 10. 2026 jsou tam zaznamenány s časem.

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

  • Kontrolujeme verzi PHP, provozní režim a stav backportů vašeho serveru s wiki a necháme si potvrdit restart.
  • Zálohujeme logy od 20. 10. 2026, databázi a soubory.
  • Kontrolujeme LocalSettings.php, nahrávky, rozšíření, skupinová práva a historii verzí stránek rozhraní.
  • V rámci okamžité pomoci při PHP2Shell s vámi posoudíme, zda musí wiki zůstat veřejně dostupná.

Časté dotazy

Týká se PHP2Shell MediaWiki?

MediaWiki samo žádnou novou zranitelnost nemá, ale běží na PHP. Pokud PHP serveru není záplatované, může útočník podle týmu PHP spustit kód bez přihlášení. Aktualizace MediaWiki zranitelnost neuzavře.

Kde vidím verzi PHP své wiki?

Na stránce Speciální:Verze vypisuje MediaWiki nainstalovaný software, mimo jiné verzi PHP. Zda je nasazen backport, z toho nepoznáte; potvrdí to provozovatel serveru.

Proč je MediaWiki:Common.js riziko?

Obsah této stránky se všem návštěvníkům wiki doručuje jako JavaScript. Kdo ji může měnit, může spouštět kód v prohlížeči každého uživatele. Skupina interface administrátorů by proto měla být velmi malá.

Stačí, když bude wiki dostupná jen interně?

Wiki dostupná jen ve firemní síti nebo přes VPN riziko výrazně snižuje, protože se k ní útočníci z internetu nedostanou přímo. Záplatovat ale musíte i tak, protože útok může přijít i z interní sítě.

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