Na kratko: Ranljivost Shopware 6, ki jo zdaj išče veliko trgovcev, je pravzaprav ranljivost v PHP. Posodobitve Shopware je ne zaprejo. Potrebujete popravljen PHP s ponovnim zagonom vseh procesov, nato pa preglejte .env, custom/plugins, mapo public in integracije API.
Kaj PHP2Shell pomeni za Shopware 6
Shopware 6 temelji na ogrodju PHP Symfony in večinoma teče s PHP-FPM za Nginxom ali Apacheem. Ranljivosti CVE-2026-109618 in CVE-2026-109619 zadevata prav ta način delovanja. Po navedbah ekipe PHP omogočata izvajanje škodljive kode na daljavo, brez prijave v trgovino.
Napadalec z izvajanjem kode na strežniku doseže vse, do česar trgovina sama dostopa: podatke kupcev, naročila, dokumente z računi, dostopne podatke za blagovno poslovanje in ponudnike plačil. Tehnično ozadje pojasnjujemo v prispevku Kaj je PHP2Shell?.
Preverite ranljivost Shopware 6: kateri PHP res teče?
Shopware 6 se veliko vzdržuje prek ukazne vrstice, na primer z bin/console. Pri tem je lahko pasti: php -v prikaže različico PHP v ukazni vrstici, ne nujno tiste, ki jo uporablja PHP-FPM za obdelavo zahtev trgovine. Na številnih strežnikih je vzporedno nameščenih več različic PHP.
Zanesljiva sta podatek v upravljalnem panelu gostovanja za konkretno domeno in potrditev ponudnika gostovanja o stanju paketa. Odpravljene različice izvorne kode so 8.5.12, 8.4.27, 8.3.36 in 8.2.35; backporti lahko nosijo starejše številke. Katere različice PHP podpira vaša različica Shopware, preverite v sistemskih zahtevah v dokumentaciji na shopware.com. Kako pogledate sami, je opisano v prispevku Pravilno preverjanje različice PHP in stanja popravkov.
Pri Shopware 6 se pogosto spregleda ena točka: številne trgovine čakalno vrsto sporočil in načrtovana opravila obdelujejo prek trajno tekočih procesov v ozadju, na primer bin/console messenger:consume pod upraviteljem procesov. Ti procesi PHP naložijo enkrat ob zagonu. Po posodobitvi je zato treba znova zagnati ne samo PHP-FPM, ampak tudi te workerje. Sicer del trgovine še naprej dela s starim, ranljivim PHP v pomnilniku.
Mape in datoteke, ki jih morate poznati
| Mesto | Vsebina | Zakaj je pomembno |
|---|---|---|
.env, .env.local |
Dostop do podatkovne zbirke, APP_SECRET, drugi ključi |
Ob sumu obnoviti |
public/ |
Korenska mapa dokumentov z index.php, mediji, datotekami teme |
Dodatne datoteke PHP so sumljive |
public/theme/ |
Prevedene datoteke JavaScript in CSS trgovine (Storefront) | Mesto za vnesene skimmerje |
custom/plugins/, custom/apps/ |
Razširitve | Spremenjena koda vtičnika |
files/ |
Zasebne datoteke, kot so računi in dobavnice | Osebni podatki |
var/log/ |
Dnevniki trgovine | Zavarovati sledi |
Neškodljivi prvi pregledi:
# Prikaži nameščene vtičnike z različico in stanjem
bin/console plugin:list
# Izpiši datoteke PHP v javni mapi
find public -type f -name "*.php"
# Prikaži znane ranljivosti v odvisnostih Composerja
composer audit
V mapi public/ naj leži le malo znanih datotek PHP. Vse neznano je treba zavarovati in preiskati, ne takoj izbrisati.
V skrbniškem vmesniku pod Nastavitve > Sistem preglejte razdelka »Uporabniki in pravice« ter »Integracije«. Neznani uporabniki ali integracije API so stranska vrata, ki jih vsako skeniranje datotek spregleda.
Skrbniški dostop, vtičniki in aplikacije kot tveganje
Skrbniški vmesnik je privzeto pod /admin. Zaščitite ga z osebnimi računi, močno prijavo in po možnosti z omejitvijo dostopa na znana omrežja. Integracije za blagovno poslovanje, tržnice ali ponudnike pošiljanja naj imajo samo pravice, ki jih res potrebujejo.
Vtičniki iz trgovine in lastni razvoji prinašajo lastno kodo PHP, aplikacije pa dodatno webhooke na zunanje strežnike. Več ko je razširitev, večja je napadalna površina in zahtevnejša je vsaka nadgradnja PHP. Vtičnike, ki se ne uporabljajo več, popolnoma odstranite.
Kaj posodobitev Shopware zmore in česa ne
Posodobitev Shopware ali vtičnika zapre znane napake v tej kodi. Ne more:
- popraviti PHP na strežniku,
- znova zagnati starih procesov PHP-FPM,
- zanesljivo odstraniti tujih datotek v
public/ali manipuliranih datotek teme, - izbrisati tujih uporabnikov ali integracij,
- dokazati, da pred popravkom ni bilo nič narobe.
Po posodobitvi PHP na novo glavno različico znova ustvarite predpomnilnik in temo ter trgovino preverite v testnem okolju. Prehod PHP z dokazilom na željo prevzame naša storitev popravljanja PHP.
Shopware 6 pri večjih trgovcih pogosto teče na več aplikacijskih strežnikih. Takrat mora biti vsak strežnik popravljen in znova zagnan, tudi tisti, ki opravljajo samo naloge v ozadju. Če trgovino kot upravljano platformo vodi ponudnik storitev, naj vam potrdi stanje za vsa vozlišča.
Kako PHP SOS pomaga konkretno?
- Ugotovimo, kateri PHP vaša trgovina prek FPM dejansko uporablja, ter s ponudnikom gostovanja ali agencijo razjasnimo popravek in ponovni zagon.
- Dnevnike od 20. 10. 2026, podatkovno zbirko in datoteke zavarujemo.
- Mapo
public/, prevedene datoteke teme, vtičnike, uporabnike in integracije preverimo glede nepravilnosti. - Ob najdbi trgovino očistimo skupaj z vašo agencijo ter urejeno obnovimo ključe in dostope.
Pogosta vprašanja
Ali je Shopware 6 sam prizadet zaradi PHP2Shell?
Ranljivosti sta v PHP, ne v kodi Shopware. Vsaka trgovina Shopware 6 na nepopravljenem PHP je zato potencialno ranljiva, ne glede na različico Shopware. Posodobitev Shopware tega ne spremeni.
Katera datoteka v Shopware 6 je po napadu posebej kritična?
Datoteka .env ali .env.local z dostopom do podatkovne zbirke in APP_SECRET. Kdor jo je lahko prebral, pozna vaše dostopne podatke. Ob sumu je treba te vrednosti obnoviti, v dogovoru z vašo agencijo.
Kaj so integracije v Shopware 6 in zakaj jih preveriti?
Integracije so dostopi API za zunanje sisteme, kot so blagovno poslovanje ali tržnice. Tuja integracija s skrbniškimi pravicami omogoča poln dostop do trgovine prek API, ne da bi bila na strežniku kakšna datoteka.