# Jak najít zadní vrátka ve WordPressu: systematické hledání

> Zadní vrátka ve WordPressu: zkontrolujte jádro a pluginy přes WP-CLI, projděte účty správců, mu-plugins, uploady i databázi a vrátka bezpečně zavřete.

Zdroj: https://phpsos.de/cs/ratgeber/backdoor-wordpress-finden/  
Stav: 25.10.2026  
Poskytovatel: PHP SOS, Nouzová pomoc pro PHP a bezpečnost serverů. Okamžitá pomoc přes WhatsApp: https://wa.me/491736494914?text=Dobr%C3%BD%20den%2C%20PHP%20SOS%2C%20pot%C5%99ebujeme%20pomoc%20s%20na%C5%A1%C3%ADm%20PHP%20serverem.%20Firma%3A%20%E2%80%A6%20Web%3A%20%E2%80%A6

**Stručně:** Zadní vrátka ve WordPressu najdete nejrychleji tak, že jádro a pluginy porovnáte přes WP-CLI s oficiálními kontrolními součty a poté cíleně projdete mu-plugins, uploady, `wp-config.php`, účty správců a databázi. Důležité po PHP2Shell: aktualizace WordPressu zranitelnost PHP neuzavře a existující zadní vrátka neodstraní.

## Proč by se provozovatelé WordPressu měli dívat pozorněji právě teď

S PHP2Shell se v říjnu 2026 staly známými dvě kritické zranitelnosti v samotném PHP, CVE-2026-109618 a CVE-2026-109619. Umožňují spuštění škodlivého kódu bez přihlášení, bez ohledu na to, jak dobře je vaše instalace WordPressu udržována. Záplaty existují od 21. 10. 2026, podle zpráv médií byl ale první pokus o útok pozorován už 17. 10.

Kdo byl v tomto období zranitelný, měl by hledat stopy. WordPress je přitom typický cíl, protože mnoho instalací je postaveno podobně a útočníci znají úkryty. Co musí provozovatelé k PHP2Shell obecně udělat, najdete na stránce [WordPress a PHP2Shell](https://phpsos.de/cs/plattformen/wordpress/).

Následující kontroly provádějte pokud možno na kopii nebo po zálohování. Příkazy jen čtou a nic nemění.

## Podle čeho zadní vrátka poznáte v běžném provozu

Zadní vrátka jsou navržena tak, aby zůstala nenápadná. Přesto existují příznaky, kterých si všimnete i bez technických znalostí. Patří k nim přesměrování na cizí stránky, která se objevují jen u návštěvníků z vyhledávače Google nebo jen na mobilních zařízeních. Podezřelé jsou také nové stránky s reklamou na léky, hazard nebo kopie značkového zboží, které se objevují ve vyhledávacím indexu, ale ne v administraci WordPressu.

Dalšími náznaky jsou varování od Googlu nebo prohlížeče, stížnosti zákazníků na spam z vaší domény, náhle výrazně vyšší spotřeba výpočetního času u poskytovatele hostingu nebo správci, které nikdo v týmu nezná. Žádný z těchto příznaků sám o sobě zadní vrátka nedokazuje. Pokud se jich objeví více najednou, neodkládejte následující kontroly.

A naopak: pokud nic z toho nevidíte, neznamená to, že je instalace čistá. Právě zadní vrátka, zřízená jen pro pozdější přístup, navenek často žádný účinek neukazují.

## Jak najít zadní vrátka ve WordPressu: kontrola jádra a pluginů

WP-CLI umí porovnat soubory jádra WordPressu a pluginů z oficiálního adresáře se zveřejněnými kontrolními součty. Každá odchylka je konkrétní úkol ke kontrole.

```bash
cd /var/www/meine-seite
# Soubory jádra proti oficiálním kontrolním součtům
wp core verify-checksums
# Pluginy z oficiálního adresáře
wp plugin verify-checksums --all
# Nainstalované verze a stav
wp plugin list
wp theme list
```

Komerční pluginy a šablony takto zkontrolovat nelze. Pro ně pomůže jen porovnání s čerstvě staženým originálním balíčkem od výrobce. Neznámé pluginy, které nikdo z týmu neinstaloval, jsou vždy podezřelé, i když se zdají být deaktivované.

## Typické úkryty v souborovém systému

Některá místa se u kompromitovaných instalací WordPressu opakují pořád dokola:

- `wp-content/mu-plugins/`: načítá se automaticky a v běžném seznamu pluginů se neobjevuje.
- `wp-content/uploads/`: patří tam obrázky a dokumenty, žádné soubory PHP.
- `wp-config.php`: dodatečné řádky `include` nebo `require` na začátku nebo na konci.
- `.htaccess` a `.user.ini` ve webovém adresáři a podsložkách: neočekávaná přesměrování nebo automaticky předem načítané soubory.
- Soubory v hlavním adresáři, jejichž názvy připomínají jádrové soubory WordPressu, ale nepatří k němu.

```bash
# Soubory PHP ve složce uploads
find wp-content/uploads -type f -name "*.php*"
# Obsah Must-Use pluginů
ls -la wp-content/mu-plugins/
# Všechny soubory .htaccess a .user.ini s datem změny
find . \( -name ".htaccess" -o -name ".user.ini" \) -exec ls -la {} +
# Nedávno změněné soubory PHP
find . -type f -name "*.php" -newermt "2026-10-17" -ls
```

Obecné vzory pro hledání zakódovaného kódu popisuje příručka [Jak poznat a odstranit webshell](https://phpsos.de/cs/ratgeber/webshell-erkennen/).

## Kontrola uživatelů, databáze a plánovaných úloh

Mnohá zadní vrátka vůbec nejsou v souborovém systému. Útočníkům často stačí k pozdějšímu návratu další účet správce.

```bash
# Všichni správci s datem registrace
wp user list --role=administrator --fields=ID,user_login,user_email,user_registered
# Plánované úlohy ve WordPressu
wp cron event list
# Adresa webu (manipulace vedou k přesměrováním)
wp option get siteurl
wp option get home
# Příspěvky s vloženými skripty
wp db query "SELECT ID, post_title FROM $(wp db prefix)posts WHERE post_content LIKE '%<script%'"
```

Zkontrolujte také volby s neobvykle velkým obsahem a widgety s cizím kódem. Nálezy automaticky neznamenají útok, protože skripty používají i sledovací kódy nebo vložené mapy. Rozhodující je, zda obsah někdo z týmu zná.

> **Důležité:**
> Po nálezu změňte všechna hesla a bezpečnostní klíče v `wp-config.php`. Jinak zůstanou stávající přihlášení útočníků platná.

## Jak zadní vrátka zavřít a zabránit návratu

Pokud jste zadní vrátka našli, je nová instalace většinou bezpečnější než opravování jednotlivých souborů. Osvědčilo se toto pořadí:

1. Zajistit stopy: uložit logy, podezřelé soubory a export databáze s datem.
2. Přivést PHP na opravený stav a restartovat všechny procesy PHP.
3. Jádro WordPressu, pluginy a šablony nainstalovat znovu z originálních zdrojů.
4. Uploady a databázi převzít po kontrole, smazat cizí účty, změnit všechny přístupy.
5. Spouštění PHP ve složce uploads zakázat na úrovni serveru.

Pro Nginx k tomu stačí blok v konfiguraci serveru:

```nginx
location ~* ^/wp-content/uploads/.*\.php$ {
    deny all;
}
```

U Apache dosáhnete téhož pravidlem v konfiguraci serveru pro složku uploads. Soubor `.htaccess` přímo ve složce uploads je slabší, protože ho útočník s právy k zápisu může znovu změnit.

Po vyčištění počítejte s několika týdny přísnějšího sledování. Noví správci, nové soubory PHP a změny v `wp-config.php` by se měly v této době ihned projevit, například pravidelnou kontrolou přes WP-CLI nebo monitorováním souborů na serveru.

Jak potom nastavit práva k souborům, aby WordPress mohl zapisovat jen tam, kde je to nutné, ukazuje příručka [Práva k souborům na webovém serveru](https://phpsos.de/cs/ratgeber/dateirechte-webserver/).

## Jak konkrétně pomáhá PHP SOS?

- Zajistíme stav instalace dřív, než se cokoli změní.
- Zkontrolujeme jádro, pluginy, šablony, databázi, účty a konfiguraci serveru na zadní vrátka.
- WordPress znovu nasadíme z čistých zdrojů a převezmeme jen ověřený obsah.
- Server i instalaci zabezpečíme a zdokumentujeme, co bylo nalezeno a odstraněno.

Průběh čištění popisuje služba [Nechat odstranit malware a webshelly](https://phpsos.de/cs/leistungen/malware-entfernung/).


## Časté dotazy

**Uzavře aktualizace WordPressu zranitelnost PHP2Shell?**  
Ne. PHP2Shell je v interpretu PHP, nikoli ve WordPressu. Aktualizace WordPressu, šablon nebo pluginů na tom nic nemění; rozhodující je stav PHP na serveru a restart všech procesů PHP.

**Najde bezpečnostní plugin všechna zadní vrátka?**  
Ne spolehlivě. Plugin běží uvnitř kompromitované instalace a sám může být zmanipulován. Doplňte ho kontrolami zvenčí, například kontrolními součty přes WP-CLI a porovnáním s čistými originálními soubory.

**Co jsou mu-plugins a proč jsou podezřelé?**  
Must-Use pluginy ve složce wp-content/mu-plugins se načítají automaticky a v běžném seznamu pluginů se neobjevují. Útočníci toho rádi využívají, protože provozovatelé tuto složku zřídka kontrolují.

**Mohou být zadní vrátka i v databázi?**  
Ano. Škodlivý kód nebo přesměrování se často ukládají do voleb, příspěvků nebo widgetů. Útočníci navíc často zřizují vlastní účty správců, které najdete v tabulce uživatelů.

## Zdroje

- [WordPress.org](https://wordpress.org/)
- [php.net: bezpečnostní oznámení](https://www.php.net/)
- [OWASP Cheat Sheet Series](https://cheatsheetseries.owasp.org/)
