Ukratko: Kod PHP sigurnosne ranjivosti poput PHP2Shella, u web hostingu za PHP ažuriranje odgovoran je pružatelj, a ne Vi. Vaša je zadaća zatražiti pisanu potvrdu, u korisničkom izborniku odabrati podržanu PHP verziju i provjeriti web-stranicu zbog tragova napada. Zakrpa pružatelja ne uklanja zlonamjerni softver koji je na Vašu web-stranicu dospio prije.
Stanje jednostavnim riječima
PHP je programski jezik na kojem radi većina web-stranica, shopova i CMS-ova poput WordPressa. PHP2Shell označava dvije kritične pogreške u samom PHP-u (CVE-2026-109618 i CVE-2026-109619). Napadači putem njih mogu bez lozinke izvršiti vlastiti kod na poslužitelju. BSI (njemački Savezni ured za informacijsku sigurnost) proglasio je razinu upozorenja 3 (narančasta) i preporučuje trenutačno ažuriranje.
Kod shared hostinga mnogo korisnika dijeli jedan poslužitelj. Tehnologiju ispod toga, dakle operacijski sustav, web-poslužitelj i PHP, vodi pružatelj. Sami upravljate samo svojom web-stranicom, bazom podataka i pristupima. Zato PHP ažuriranje ne možete sami instalirati, a nije ni potrebno.
Web hosting i PHP ranjivost: tko je odgovoran?
Podjela proizlazi iz Vašeg ugovora. U većini tarifa okvirno vrijedi sljedeća raspodjela:
| Zadaća | Pružatelj | Vi kao korisnik |
|---|---|---|
| Ažuriranje PHP paketa | da | ne |
| Ponovno pokretanje PHP procesa | da | ne |
| Postavljanje privremenih vrijednosti za cijeli poslužitelj | da | ne |
| Odabir PHP verzije Vaše web-stranice | omogućuje | odabirete |
| Ažuriranje CMS-a, dodataka i tema | ne | da |
| Pristupni podaci i administratorski računi | ne | da |
| Provjera web-stranice zbog zlonamjernog koda | djelomično | da |
| Procjena sukladnosti sa zaštitom podataka | ne | da |
Važan je zadnji redak: ako na Vašoj web-stranici dođe do incidenta s osobnim podacima, u pravilu ste odgovorni Vi kao operater, a ne pružatelj. Više o tome u članku Obveza prijave prema GDPR-u.
Što sada trebate učiniti sami
1. Zatražite potvrdu. Pisanim putem pitajte pružatelja jesu li PHP verzije u Vašem paketu zaštićene od oba CVE-a, od kada i jesu li svi PHP procesi ponovno pokrenuti. Gotov predložak naći ćete u članku Pitajte pružatelja hostinga za stanje zakrpe. Nemojte se čuditi ako u korisničkom izborniku i dalje stoji starija verzija poput 8.2.34: neki pružatelji ispravke isporučuju kao backport, a da se broj ne mijenja.
2. Provjerite PHP verziju. U korisničkom izborniku pogledajte koju PHP verziju koristi Vaša web-stranica. PHP 8.1 i starije od PHP projekta više ne primaju službena ažuriranja. PHP 8.2 podrška završava 31. 12. 2026. Podnosi li Vaš CMS noviju verziju, provjerite prema sistemskim zahtjevima proizvođača, primjerice na wordpress.org.
3. Kontrolirajte web-stranicu. Pazite na nepoznate administratorske račune, neočekivana preusmjeravanja, strane datoteke u FTP pristupu i upozorenja u Google Search Consoleu. Popis tipičnih znakova nalazi se u članku Jesam li već kompromitiran?.
4. Izradite sigurnosnu kopiju. Preuzmite aktualnu sigurnosnu kopiju datoteka i baze podataka i pohranite je odvojeno. Zamolite pružatelja i da čuva zapisnike pristupa Vašeg paketa od 20. 10. 2026.
Nakon potvrde pružatelja preventivno promijenite lozinke za korisnički izbornik, FTP/SFTP, bazu podataka i CMS administratore te, gdje je moguće, uključite dvofaktorsku prijavu.
Što kod shared hostinga ne možete riješiti sami
Privremene mjere koje preporučuje php.net, primjerice session.upload_progress.enabled=0, djeluju samo ako se postave u konfiguraciji poslužitelja. Unos u .user.ini ili putem ini_set() u kodu prema php.net-u nije dovoljan. I ograničenja memorije na razini cgroupa te ponovno pokretanje PHP procesa u nadležnosti su pružatelja.
Ako pružatelj ne odgovara ili odgovara izbjegavajući, imate tri mogućnosti: ponovno pitati i postaviti rok, web-stranicu privremeno prebaciti u način održavanja ili prijeći kod pružatelja s jasnim izjavama. BSI preporučuje da se web-poslužitelji privremeno odvoje s mreže ako ažuriranje nije odmah moguće.
Provjerite i je li Vaša tarifa još suvremena. Paketi koji godinama rade nepromijenjeni ponekad su na starijim generacijama poslužitelja sa starijim PHP verzijama koje pružatelj održava samo ograničeno. Prelazak na aktualnu tarifu istog pružatelja često je malen posao i donosi novije PHP verzije. Pitajte za to ako je odgovor o stanju zakrpe nezadovoljavajući.
Ako je web-stranica već neuobičajena
Zakrpa kod pružatelja zatvara ranjivost za budućnost. Ne uklanja stražnja vrata koja su napadači prije ugradili i ne dokazuje da se prije nije ništa dogodilo. Ako pronađete nepravilnosti, nemojte nasumično brisati datoteke. Najprije osigurajte stanje kako bi se uzrok kasnije mogao rekonstruirati.
Kako PHP SOS konkretno pomaže?
- S Vama formuliramo upit pružatelju i tehnički ocjenjujemo njegov odgovor.
- Provjeravamo Vašu web-stranicu zbog web-shellova, stranih računa i manipuliranih datoteka te je u slučaju nalaza čistimo putem našeg uklanjanja zlonamjernog softvera.
- Kod akutne sumnje preuzimamo hitnu pomoć za hakirane web-stranice uz osiguranje dokaza.
- Pomažemo pri odabiru odgovarajuće PHP verzije i nakon toga testiramo web-stranicu.
Česta pitanja
Moram li kao korisnik hostinga sam ažurirati PHP?
U pravilu ne, jer PHP kod shared hostinga pripada platformi pružatelja. Ipak, PHP verziju često možete odabrati u korisničkom izborniku. Ako je tamo postavljena verzija bez službenih ažuriranja, trebali biste je promijeniti ili pitati pružatelja kako je osigurava.
Moja web-stranica ne radi. Jesam li hakiran?
Ne nužno. Neki su pružatelji web-stranice preventivno isključili s mreže kako bi zatvorili ranjivost. Pitajte pružatelja za razlog i zatražite potvrdu postoje li naznake napada na Vaš paket.
Mogu li privremene mjere sam postaviti u .user.ini?
Za session.upload_progress.enabled php.net izričito navodi da .user.ini i ini_set() nisu dovoljni. Tu postavku mora u konfiguraciji poslužitelja postaviti pružatelj.
Što trebam imati u pisanom obliku od pružatelja?
Potvrdu da su PHP verzije Vašeg paketa zaštićene od CVE-2026-109618 i CVE-2026-109619, od kada to vrijedi i da su PHP procesi ponovno pokrenuti. Taj odgovor sačuvajte uz svoju dokumentaciju.