Stručne: Bezpečnosť WooCommerce závisí po PHP2Shell najprv od PHP na serveri, nie od pluginu obchodu. Obchod uchováva údaje zákazníkov, objednávky a prístupy k platobným službám, preto samotná záplata PHP nestačí. Skontrolujte navyše kód pokladne, kľúče REST API a webhooky.
Čo PHP2Shell znamená pre obchod na WooCommerce
WooCommerce je plugin pre WordPress, a teda beží na tom istom PHP. Zraniteľnosti CVE-2026-109618 a CVE-2026-109619 podľa tímu PHP umožňujú spustenie škodlivého kódu na diaľku bez prihlásenia. Pre obchod je to závažnejšie než pre vizitkový web, pretože ide o viac:
- mená, dodacie a fakturačné adresy, telefónne čísla a e-mailové adresy
- história objednávok a zákaznícke účty s hashmi hesiel
- kľúče API a tajné údaje pre napojenie na platobné služby, prepravcov a účtovníctvo, uložené v databáze
- stiahnutia digitálnych produktov v priečinku
wp-content/uploads/woocommerce_uploads/
Údaje o kartách pri vložených platobných formulároch poskytovateľov väčšinou v obchode nie sú. Útočník s prístupom k serveru však môže zmeniť JavaScript pokladne tak, aby sa zadané údaje odpočúvali ešte pred odoslaním. Všeobecné odporúčania pre obchodníkov nájdete na stránke IT bezpečnosť pre e-shopy.
Bezpečnosť WooCommerce začína pri verzii PHP
Pod WooCommerce > Stav zobrazuje systémový stav v sekcii o serverovom prostredí verziu PHP, s ktorou obchod skutočne beží. Opravené upstream verzie sú 8.5.12, 8.4.27, 8.3.36 a 8.2.35. Poskytovatelia hostingu však opravy často nasadzujú ako backport; zobrazené číslo potom zostane staré. Spoľahnite sa preto na písomné potvrdenie poskytovateľa hostingu a na reštart všetkých procesov PHP.
Ktoré verzie PHP vaša verzia WooCommerce podporuje, skontrolujte podľa systémových požiadaviek výrobcu na woocommerce.com. Prechod na novšiu hlavnú verziu PHP by sa mal uskutočniť v testovacom prostredí, pretože platobné pluginy by inak mohli nepozorovane vypadnúť.
Kde útočníci v obchodoch na WooCommerce zasahujú
Okrem známych úkrytov WordPressu existujú miesta typické pre obchody:
- Prepísané šablóny v téme: priečinok
woocommerce/checkout/v aktívnej téme. Súbory zmenené tu pôsobia priamo na pokladňu a potvrdenie objednávky. - Platobné pluginy: zmenené súbory v
wp-content/plugins/poskytovateľa platieb. - Kľúče REST API: v časti WooCommerce > Nastavenia > Rozšírené > REST API. Cudzí kľúč s právami na čítanie alebo zápis sú zadné vrátka bez súboru.
- Webhooky: v časti Rozšírené > Webhooky. Neznámy webhook môže každú novú objednávku posielať na cudziu adresu.
- Roly: nové účty s rolou „Správca obchodu“ alebo „Administrátor“.
- Protokoly:
wp-content/uploads/wc-logs/môže obsahovať osobné údaje a nemalo by byť verejne dostupné.
Neškodné kontroly v príkazovom riadku:
# Vypísať administrátorov a správcov obchodu
wp user list --role=administrator
wp user list --role=shop_manager
# Zobraziť súbory PHP v téme zmenené od 17. 10. 2026
find wp-content/themes -name "*.php" -newermt "2026-10-17"
Záplata PHP nezmaže cudzí kľúč REST API ani zavlečený webhook. Obe fungujú aj po aktualizácii ďalej. Zoznamy preto aktívne skontrolujte a pri podozrení obnovte kľúče API u svojich poskytovateľov platieb.
Rozšírenia a aktualizácie obchodu: čo dokážu a čo nie
Typický obchod na WooCommerce používa veľa rozšírení: platobné metódy, prepravné štítky, tvorbu faktúr, napojenie na marketplace, pluginy na hodnotenia a marketing. Každé z nich je ďalší kód s vlastnými zraniteľnosťami a často aj s vlastnými prístupmi k externým službám. Udržujte zoznam krátky a odstráňte testovacie inštalácie starých platobných metód.
Aktualizácia WooCommerce alebo WordPressu uzatvára známe chyby v týchto komponentoch. Neopraví PHP, neodstráni cudzie súbory mimo priečinka pluginu a nezmaže záznamy databázy, ako sú kľúče API alebo webhooky. Ako rozpoznáte, či sa už niečo stalo, popisuje stránka Som už kompromitovaný?.
Ak aktualizácia PHP u poskytovateľa hostingu ešte len čaká, môže čas získať predradený filter. Záplatu nenahrádza; viac nájdete na stránke WAF a virtuálne záplatovanie.
Povinnosti pri incidente v obchode
Ak sa stratia osobné údaje zákazníkov, môže byť potrebné oznámenie dozornému orgánu na ochranu údajov do 72 hodín. Ide o všeobecnú informáciu, nie o právne poradenstvo. Včas zapojte svoju zodpovednú osobu za ochranu údajov a prečítajte si náš prehľad o oznamovacej povinnosti podľa GDPR. Dodržte navyše pravidlá svojich poskytovateľov platieb pre bezpečnostné incidenty.
Po každom zásahu otestujte celý proces objednávky so všetkými platobnými metódami, ktoré ponúkate. Všímajte si nezvyčajné medzikroky, ďalšie vstupné polia alebo presmerovania na cudzie domény. Vývojárske nástroje prehliadača ukazujú, ktoré skripty sa načítavajú z ktorých adries; neznáme zdroje na stránke pokladne sú varovným signálom. Test zdokumentujte s dátumom a výsledkom.
Ako konkrétne pomáha PHP SOS?
- S vaším poskytovateľom hostingu objasníme stav záplat PHP a necháme si potvrdiť reštart všetkých procesov PHP.
- Zálohujeme logy, databázu a súbory skôr, než niečo zmeníme.
- Kontrolujeme šablóny pokladne, platobné pluginy, kľúče REST API, webhooky a používateľské roly.
- Pri nálezoch obchod vyčistíme, s vami obnovíme prístupy a zdokumentujeme postup pre ochranu údajov a poistenie.
Časté otázky
Sú údaje o kreditných kartách vo WooCommerce ohrozené kvôli PHP2Shell?
Závisí to od spôsobu integrácie platobnej služby. Ak sa karty zadávajú vo formulári poskytovateľa, väčšinou nie sú uložené v obchode. Útočník s prístupom k serveru však môže pokladňu zmeniť tak, aby sa zadané údaje odchytili ešte predtým.
Kde vo WooCommerce vidím verziu PHP?
V časti WooCommerce > Stav v sekcii o serverovom prostredí. Číslo ukazuje verziu, s ktorou obchod beží. Či je nasadený backport, z neho nepoznáte; to musí potvrdiť poskytovateľ hostingu.
Prečo by som mal kontrolovať webhooky WooCommerce?
Webhooky pri udalostiach, ako sú nové objednávky, odosielajú údaje na zadanú adresu. Skryto založený webhook môže trvalo posielať údaje o objednávkach tretím stranám, aj keď je PHP už záplatované.
Musím pri podozrení informovať poskytovateľov platieb?
Pri odôvodnenom podozrení by ste mali u poskytovateľa obnoviť kľúče API a dodržať jeho pravidlá pre bezpečnostné incidenty. Či existujú oznamovacie povinnosti, vyjasnite so svojou zodpovednou osobou za ochranu údajov alebo s právnikom.