# Zranitelnost PrestaShop a PHP2Shell: jak chránit svůj e-shop

> Zabezpečte PrestaShop po PHP2Shell: ověřte verzi PHP, zkontrolujte složky override a modules a zajistěte adresář administrace i účty zaměstnanců.

Zdroj: https://phpsos.de/cs/plattformen/prestashop/  
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ě:** Zranitelnost PrestaShop, o které se nyní píše v titulcích, je PHP2Shell a je v PHP, ne v e-shopu. Aktualizace PrestaShop proti ní nepomůže. Po záplatě PHP a restartu byste měli zkontrolovat složku `override`, moduly, pokladnu a účty zaměstnanců.

## Co PHP2Shell znamená pro obchodníky na PrestaShop

PrestaShop je aplikace v PHP rozšířená u malých a středních obchodníků, často na sdíleném hostingu nebo jednoduchých vServerech. 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 stav e-shopu.

U e-shopu je v sázce hodně: zákaznické účty, adresy, objednávky, faktury a přístupy k platebním a přepravním službám. Útočníci to u e-shopů často mají namířeno na pokladnu, kde mohou platební údaje odposlouchávat dříve, než dorazí k poskytovateli plateb.

Přistupuje časový faktor. Podle zpráv médií byl první pokus o útok zaznamenán 17. 10. 2026, záplaty vyšly 21. 10. 2026. E-shop, který byl v té době dostupný, může být zasažen, i když dnes vše vypadá normálně. Potvrzené indikátory kompromitace (IoC) zatím neexistují; vodítka vyplývají z neobvyklého chování, nových souborů a změn v databázi.

## Zranitelnost PrestaShop: kontrola verze PHP v Back Office

V nabídce **Pokročilé nastavení > Informace** zobrazuje PrestaShop údaje o serveru a PHP běžící instalace. Opravené verze upstreamu jsou 8.5.12, 8.4.27, 8.3.36 a 8.2.35. Poskytovatelé hostingu opravy částečně nasazují jako backport, zobrazené číslo pak zůstane stejné. Nechte si stav potvrdit písemně.

Které verze PHP vaše verze PrestaShop podporuje, ověříte podle systémových požadavků v dokumentaci výrobce na prestashop.com. Starší e-shopy verzí 1.6 a 1.7 často běží na starších verzích PHP; pak platí, co je uvedeno v článku [Okamžitá opatření bez záplaty](https://phpsos.de/cs/php2shell/sofortmassnahmen-ohne-patch/), dokud nebude možný upgrade.

## Typické úkryty škodlivého kódu v PrestaShop

| Místo | Obsah | Bod kontroly |
|---|---|---|
| `app/config/parameters.php` (starší verze `config/settings.inc.php`) | Přístup k databázi, klíč cookie | Datum změny, při podezření obnovit |
| `override/` | Přepsané třídy a controllery | Každý soubor musí být vysvětlitelný |
| `modules/` | Moduly z marketplace a od třetích stran | Neznámé moduly, změněné soubory |
| `themes/` | Šablony a JavaScript, i pro pokladnu | Cizí skripty |
| `img/`, `upload/`, `download/` | Obrázky, nahrávky zákazníků, digitální produkty | Žádné soubory PHP |
| `var/cache/`, `var/logs/` | Cache a protokoly | Zálohovat logy, cache vytvořit znovu |
| `install/` | Instalační složka | V provozu nesmí existovat |

Složka `override` si zaslouží zvláštní pozornost. Kód tam uložený nahrazuje části PrestaShop, například zpracování objednávek nebo plateb, a při aktualizacích se automaticky neodstraňuje.

Neškodné kontroly na příkazové řádce a v databázi (prefix tabulek podle instalace):

```bash
find override -name "*.php" -newermt "2026-10-17"
find img upload download -type f -name "*.php"
ls -d admin*
```

```sql
SELECT email, firstname, lastname, active FROM ps_employee;
```

> **Jednejte ihned:**
> Pokud zákazníci hlásí neobvyklé platební stránky nebo zneužití karty po nákupu, odpojte pokladnu od sítě a zálohujte logy od 20. 10. 2026. Zmanipulovaná pokladna může odchytávat data při každém dalším nákupu.

## Back Office, účty zaměstnanců a moduly

Back Office leží v adresáři s individuálním názvem, který se přidělí při instalaci. V části Pokročilé nastavení zkontrolujte účty zaměstnanců a profily, zda neobsahují neznámé nebo osiřelé přístupy, například od dřívějších agentur. Adresář administrace pokud možno omezte na známé sítě.

Moduly z marketplace a od třetích stran rozšiřují platby, dopravu, marketing a rozhraní. Každý modul je dodatečný kód PHP a moduly bez aktivní péče patří k nejčastějším vstupním branám do e-shopů na PrestaShop. Nepoužívané odinstalujte a smažte, ne jen deaktivujte. Také klíče webové služby pro API zkontrolujte, zda neobsahují neznámé záznamy.

## Co aktualizace PrestaShop zvládne a co ne

Aktualizace PrestaShop nebo jednotlivých modulů uzavře chyby v tomto kódu. Nezáplatuje PHP, nerestartuje procesy a neodstraní ani overrides, ani cizí moduly, skripty v motivu či nové účty zaměstnanců. Pokud byly odchyceny osobní údaje, může navíc existovat oznamovací povinnost; obecné informace nabízí [oznamovací povinnost podle GDPR: 72 hodin](https://phpsos.de/cs/compliance/dsgvo-meldepflicht-72-stunden/), posouzení v konkrétním případě provede váš pověřenec pro ochranu osobních údajů. Co by obchodníci měli sledovat nad to, shrnuje článek [IT bezpečnost pro e-shopy](https://phpsos.de/cs/branchen/onlineshops/).

U e-shopů s více zeměmi nebo funkcí multistore často běží více domén na téže instalaci. Nález se pak týká všech e-shopů, i když si nápadnosti všimli jen v jednom.

## Jak konkrétně pomáhá PHP SOS?

- S vaším poskytovatelem hostingu ujasníme stav PHP, backport a restart.
- Zálohujeme logy, soubory a databázi a zdokumentujeme výchozí stav.
- Kontrolujeme overrides, moduly, motiv, složky pro nahrávání, účty zaměstnanců a klíče webové služby.
- Při nálezech provede čištění a obnovení přístupů naše [odstranění malwaru](https://phpsos.de/cs/leistungen/malware-entfernung/).


## Časté dotazy

**Uzavře aktualizace PrestaShop PHP2Shell?**  
Ne. Aktualizace PrestaShop opravují chyby v kódu e-shopu. Zranitelnosti PHP2Shell jsou v interpretu PHP a uzavře je jen aktualizace PHP nebo potvrzený backport s restartem všech procesů PHP.

**Kde v PrestaShop vidím verzi PHP?**  
V Back Office v nabídce Pokročilé nastavení > Informace. Najdete tam údaje o serveru a PHP. Nasazený backport z čísla nepoznáte; potvrdí jej váš poskytovatel hostingu.

**Co je složka override a proč ji kontrolovat?**  
Ve složce override lze přepisovat třídy a controllery PrestaShop. Kód tam běží místo originálu, například v pokladně. Neznámé overrides jsou proto po podezření důležitým bodem kontroly.

**Musí být adresář administrace přejmenovaný?**  
PrestaShop přiděluje při instalaci adresáři administrace vlastní název. Ztěžuje to jeho nalezení, ale nenahrazuje silná hesla, dvoufázové přihlášení ani omezení přístupu.

## Zdroje

- [php.net: bezpečnostní oznámení](https://www.php.net/)
- [PrestaShop](https://www.prestashop.com/)
- [OWASP Top 10](https://owasp.org/www-project-top-ten/)
- [GDPR čl. 33](https://dsgvo-gesetz.de/art-33-dsgvo/)
