Na kratko: Ranljivost PrestaShop, o kateri zdaj pišejo naslovnice, je PHP2Shell in je v PHP, ne v trgovini. Posodobitev PrestaShop proti njej ne pomaga. Po popravku PHP in ponovnem zagonu preglejte mapo override, module, blagajno in račune sodelavcev.
Kaj PHP2Shell pomeni za trgovce s PrestaShop
PrestaShop je aplikacija PHP, razširjena pri malih in srednje velikih trgovcih, pogosto na shared hostingu ali preprostih vServerjih. Ranljivosti CVE-2026-109618 in CVE-2026-109619 po navedbah ekipe PHP omogočata izvajanje škodljive kode na daljavo brez prijave, ne glede na stanje trgovine.
Za trgovino je na kocki veliko: računi kupcev, naslovi, naročila, računi in dostopi do plačilnih in dostavnih storitev. Napadalci pri trgovinah pogosto ciljajo na blagajno, kjer lahko berejo vnose plačil, še preden pridejo do ponudnika plačil.
Poleg tega je pomemben čas. Po poročilih medijev je bil prvi poskus napada opažen 17. 10. 2026, popravki pa so izšli 21. 10. 2026. Trgovina, ki je bila v tem času dosegljiva, je lahko prizadeta, tudi če danes vse izgleda običajno. Potrjenih indikatorjev ogroženosti (IOC) doslej ni; namige dajejo nenavadno vedenje, nove datoteke in spremembe v podatkovni zbirki.
Ranljivost PrestaShop: preverite različico PHP v Back Office
Pod Napredne nastavitve > Informacije PrestaShop prikaže podatke o strežniku in PHP tekoče namestitve. Odpravljene različice izvorne kode so 8.5.12, 8.4.27, 8.3.36 in 8.2.35. Ponudniki gostovanja popravke deloma vgradijo kot backport, prikazana številka potem ostane enaka. Stanje si dajte potrditi pisno.
Katere različice PHP podpira vaša različica PrestaShop, preverite v sistemskih zahtevah v dokumentaciji proizvajalca na prestashop.com. Starejše trgovine različic 1.6 in 1.7 pogosto tečejo na starejših različicah PHP; takrat velja, kar piše v prispevku Takojšnji ukrepi brez popravka, dokler nadgradnja ni mogoča.
Tipična skrivališča za škodljivo kodo v PrestaShop
| Mesto | Vsebina | Točka preverjanja |
|---|---|---|
app/config/parameters.php (starejše različice config/settings.inc.php) |
Dostop do podatkovne zbirke, ključ piškotkov | Datum spremembe, ob sumu obnoviti |
override/ |
Prepisani razredi in krmilniki | Vsaka datoteka mora biti razložljiva |
modules/ |
Moduli s tržnice in od tretjih ponudnikov | Neznani moduli, spremenjene datoteke |
themes/ |
Predloge in JavaScript, tudi za blagajno | Tuji skripti |
img/, upload/, download/ |
Slike, nalaganja kupcev, digitalni izdelki | Brez datotek PHP |
var/cache/, var/logs/ |
Predpomnilnik in dnevniki | Zavarovati dnevnike, predpomnilnik ustvariti znova |
install/ |
Mapa za namestitev | V obratovanju je ne sme biti |
Mapa override si zasluži posebno pozornost. Tam odložena koda nadomesti dele PrestaShop, na primer obdelavo naročil ali plačil, in se ob posodobitvah ne odstrani samodejno.
Neškodljivi pregledi v ukazni vrstici in v podatkovni zbirki (predpona tabel je odvisna od namestitve):
find override -name "*.php" -newermt "2026-10-17"
find img upload download -type f -name "*.php"
ls -d admin*
SELECT email, firstname, lastname, active FROM ps_employee;
Če kupci po nakupu sporočijo nenavadne plačilne strani ali zlorabo kartic, blagajno odklopite z omrežja in zavarujte dnevnike od 20. 10. 2026. Manipulirana blagajna lahko pri vsakem nadaljnjem nakupu prestreže podatke.
Back Office, računi sodelavcev in moduli
Back Office je v mapi z individualnim imenom, ki je dodeljeno ob namestitvi. Pod Napredne nastavitve preverite račune in profile sodelavcev glede neznanih ali osirotelih dostopov, na primer od prejšnjih agencij. Skrbniško mapo po možnosti omejite na znana omrežja.
Moduli s tržnice in od tretjih ponudnikov razširjajo plačila, pošiljanje, trženje in vmesnike. Vsak modul je dodatna koda PHP, moduli brez aktivnega vzdrževanja pa so med najpogostejšimi vstopnimi točkami v trgovinah PrestaShop. Neuporabljene odstranite in izbrišite, namesto da jih samo deaktivirate. Preverite tudi ključe spletne storitve za API glede neznanih vnosov.
Kaj posodobitev PrestaShop zmore in česa ne
Posodobitev PrestaShop ali posameznih modulov zapre napake v tej kodi. PHP ne popravi, ne zažene znova procesov in ne odstrani ne prepisov ne tujih modulov, skriptov v temi ali novih računov sodelavcev. Če so bili osebni podatki prestreženi, lahko obstaja tudi obveznost prijave; splošne informacije nudi prispevek Obveznost prijave po GDPR: 72 ur, presojo v posameznem primeru opravi vaš pooblaščenec za varstvo podatkov. Kaj naj trgovci upoštevajo poleg tega, povzema prispevek IT-varnost za spletne trgovine.
Pri trgovinah z več državami ali funkcijo multistore pogosto na isti namestitvi teče več domen. Najdba potem zadeva vse trgovine, tudi če je bila nepravilnost opažena samo v eni.
Kako PHP SOS pomaga konkretno?
- S ponudnikom gostovanja razjasnimo stanje PHP, backport in ponovni zagon.
- Dnevnike, datoteke in podatkovno zbirko zavarujemo ter dokumentiramo izhodiščno stanje.
- Preverimo prepise, module, temo, mape za nalaganje, račune sodelavcev in ključe spletne storitve.
- Ob najdbah čiščenje in obnovo dostopov prevzame naše odstranjevanje škodljive programske opreme.
Pogosta vprašanja
Ali posodobitev PrestaShop zapre PHP2Shell?
Ne. Posodobitve PrestaShop odpravljajo napake v kodi trgovine. Ranljivosti PHP2Shell sta v interpreterju PHP in se zaprejo samo s posodobitvijo PHP ali potrjenim backportom s ponovnim zagonom vseh procesov PHP.
Kje v PrestaShop vidim različico PHP?
V Back Office pod Napredne nastavitve > Informacije. Tam so podatki o strežniku in PHP. Nameščenega backporta iz številke ni mogoče prepoznati; to potrdi vaš ponudnik gostovanja.
Kaj je mapa override in zakaj jo preveriti?
V mapi override je mogoče prepisati razrede in krmilnike PrestaShop. Koda tam teče namesto izvirnika, na primer v blagajni. Neznani prepisi so zato po sumu pomembna točka preverjanja.
Ali mora biti skrbniška mapa preimenovana?
PrestaShop ob namestitvi dodeli lastno ime skrbniške mape. To otežuje iskanje, vendar ne nadomešča močnih gesel, dvofaktorske prijave in omejitve dostopa.