Ukratko: PrestaShop sigurnosna ranjivost koja trenutačno donosi naslove jest PHP2Shell i nalazi se u PHP-u, a ne u shopu. PrestaShop ažuriranje protiv nje ne pomaže. Nakon PHP zakrpe i ponovnog pokretanja trebali biste provjeriti mapu override, module, checkout i račune zaposlenika.
Što PHP2Shell znači za PrestaShop trgovce
PrestaShop je PHP aplikacija raširena kod malih i srednjih trgovaca, često na zajedničkom hostingu ili jednostavnim vServerima. Ranjivosti CVE-2026-109618 i CVE-2026-109619 prema PHP timu omogućuju zlonamjerni kôd na daljinu bez prijave, neovisno o stanju shopa.
Za shop je mnogo na kocki: korisnički računi, adrese, narudžbe, računi i pristupi uslugama plaćanja i dostave. Napadači kod shopova često ciljaju checkout, gdje mogu čitati unose za plaćanje prije nego što stignu do pružatelja plaćanja.
Tu je i vremenski čimbenik. Prema medijskim izvješćima prvi pokušaj napada opažen je 17.10.2026., a zakrpe su izašle 21.10.2026. Shop koji je u tom razdoblju bio dostupan može biti pogođen, čak i ako danas sve izgleda uobičajeno. Potvrđenih pokazatelja kompromitacije (Indicators of Compromise) zasad nema; naznake proizlaze iz neuobičajenog ponašanja, novih datoteka i promjena u bazi podataka.
PrestaShop sigurnosna ranjivost: provjera verzije PHP-a u Back Officeu
Pod Napredne postavke > Informacije PrestaShop prikazuje podatke o poslužitelju i PHP-u za instalaciju koja radi. Ispravljene upstream verzije su 8.5.12, 8.4.27, 8.3.36 i 8.2.35. Pružatelji hostinga ispravke ponekad ugrađuju kao backport, a prikazani broj tada ostaje isti. Neka Vam stanje potvrde pisano.
Koje PHP verzije podržava Vaša verzija PrestaShopa, provjerite prema sistemskim zahtjevima u dokumentaciji proizvođača na prestashop.com. Stariji shopovi verzija 1.6 i 1.7 često rade na starijim stanjima PHP-a; tada vrijedi ono što piše na stranici Hitne mjere bez zakrpe dok nadogradnja nije moguća.
Tipična skrovišta zlonamjernog koda u PrestaShopu
| Mjesto | Sadržaj | Točka provjere |
|---|---|---|
app/config/parameters.php (starije verzije config/settings.inc.php) |
Pristup bazi podataka, ključ za kolačiće | Datum izmjene, nakon sumnje obnoviti |
override/ |
Nadjačane klase i kontroleri | Svaka datoteka mora biti objašnjiva |
modules/ |
Moduli s tržnice i od trećih strana | Nepoznati moduli, izmijenjene datoteke |
themes/ |
Predlošci i JavaScript, i za checkout | Strane skripte |
img/, upload/, download/ |
Slike, uploadi kupaca, digitalni proizvodi | Nema PHP datoteka |
var/cache/, var/logs/ |
Predmemorija i zapisnici | Osigurati logove, ponovno generirati predmemoriju |
install/ |
Instalacijska mapa | U radu ne smije postojati |
Mapa override zaslužuje osobitu pozornost. Kôd odložen tamo zamjenjuje dijelove PrestaShopa, primjerice obradu narudžbe ili plaćanja, i pri ažuriranjima se ne uklanja automatski.
Neopasne provjere u naredbenom retku i u bazi podataka (prefiks tablica ovisi o instalaciji):
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;
Ako kupci prijave neuobičajene stranice plaćanja ili zlouporabu kartica nakon kupnje, isključite checkout s mreže i osigurajte logove od 20.10.2026. Manipulirani checkout može pri svakoj daljnjoj kupnji preuzimati podatke.
Back Office, računi zaposlenika i moduli
Back Office nalazi se u direktoriju s individualnim nazivom koji se dodjeljuje pri instalaciji. Pod Naprednim postavkama provjerite račune zaposlenika i profile na nepoznate ili zaostale pristupe, primjerice od ranijih agencija. Ako je moguće, ograničite admin direktorij na poznate mreže.
Moduli s tržnice i od trećih strana proširuju plaćanje, dostavu, marketing i sučelja. Svaki je modul dodatni PHP kôd, a moduli bez aktivnog održavanja među najčešćim su ulaznim točkama u PrestaShop shopove. Neiskorištene deinstalirajte i izbrišite umjesto da ih samo deaktivirate. Provjerite i Webservice ključeve za API na nepoznate unose.
Što PrestaShop ažuriranje može, a što ne
Ažuriranje PrestaShopa ili pojedinih modula zatvara pogreške u tom kôdu. Ne zakrpava PHP, ne pokreće procese ponovno i ne uklanja ni overridee ni strane module, skripte u temi ili nove račune zaposlenika. Ako su preuzeti osobni podaci, može postojati i obveza prijave; opće informacije nudi Obveza prijave prema GDPR-u: 72 sata, a procjenu u pojedinačnom slučaju preuzima Vaš službenik za zaštitu podataka. Što trgovci uz to trebaju uzeti u obzir, sažima IT sigurnost za web-shopove.
Kod shopova s više zemalja ili funkcijom multistorea često više domena radi na istoj instalaciji. Nalaz tada pogađa sve shopove, čak i ako je nepravilnost primijećena samo u jednom.
Kako PHP SOS konkretno pomaže?
- S Vašim pružateljem hostinga razjašnjavamo stanje PHP-a, backport i ponovno pokretanje.
- Osiguravamo logove, datoteke i bazu podataka te dokumentiramo početno stanje.
- Provjeravamo overridee, module, temu, mape uploada, račune zaposlenika i Webservice ključeve.
- Kod nalaza naše uklanjanje zlonamjernog softvera preuzima čišćenje i obnovu pristupa.
Česta pitanja
Zatvara li PrestaShop ažuriranje PHP2Shell?
Ne. PrestaShop ažuriranja otklanjaju pogreške u kôdu shopa. PHP2Shell ranjivosti su u PHP interpreteru i zatvaraju se samo PHP ažuriranjem ili potvrđenim backportom uz ponovno pokretanje svih PHP procesa.
Gdje u PrestaShopu vidim verziju PHP-a?
U Back Officeu pod Napredne postavke > Informacije. Tamo se nalaze podaci o poslužitelju i PHP-u. Ugrađen backport po broju se ne može prepoznati; to potvrđuje Vaš pružatelj hostinga.
Što je mapa override i zašto je provjeravati?
U mapi override mogu se nadjačati PrestaShopove klase i kontroleri. Kôd tamo izvršava se umjesto originala, primjerice u checkoutu. Nepoznati overridei stoga su važna točka provjere nakon sumnje.
Mora li admin direktorij biti preimenovan?
PrestaShop pri instalaciji dodjeljuje vlastiti naziv admin direktoriju. To otežava pronalaženje, ali ne zamjenjuje jake lozinke, dvofaktorsku prijavu i ograničenje pristupa.