Preskoči na sadržaj

PHP2Shell: kritične PHP ranjivosti – ovako ih zakrpite odmah

BSI upozorava na CVE-2026-109618 i CVE-2026-109619: pogođene verzije, sigurna ažuriranja i upute za provjeru
21. oktobar 2026. by
PHP2Shell: kritične PHP ranjivosti – ovako ih zakrpite odmah

21. oktobar 2026 | PHP | IT sigurnost

PHP2Shell: kritična PHP sigurnosna ranjivost CVE-2026-109618 i CVE-2026-109619, odmah ažurirajte PHP

Dana 21. oktobra 2026. PHP sigurnosni tim je objavio ažuriranja za sve još podržavane PHP verzije. Ona zatvaraju dvije kritične ranjivosti koje su postale poznate kao PHP2Shell. BSI je o tome izdao upozorenje i zahtijeva da se pogođeni sistemi bez odlaganja zakrpe. Ko vodi web-server s PHP-om, trebao bi djelovati još danas. To važi i za sve koji „samo“ vode WordPress, Nextcloud ili Joomlu, jer ove aplikacije rade na PHP-u.

Ovaj članak sažima šta se desilo, koje su PHP verzije pogođene, koja verzija vam je sada potrebna i kako za nekoliko minuta provjeriti je li vaš server osiguran.

Šta se desilo? Vremenski tok

PHP sigurnosni tim je unaprijed najavio objavu ispravki kako bi hosteri i administratori imali vremena da se pripreme. Sama objava je bila 21. oktobra 2026. BSI je još istog dana izdao svoje upozorenje (verzija 1.1).

Vremenska linija: prethodno upozorenje 20.10.2026., PHP zakrpe 21.10.2026. u 14:00 UTC, BSI upozorenje 21.10.2026.

  • 20. oktobar 2026.: Prethodno upozorenje PHP sigurnosnog tima da će sljedećeg dana izaći sigurnosna ažuriranja.
  • 21. oktobar 2026., 14:00 UTC (16:00 sati po srednjoevropskom ljetnom vremenu): Zakrpe za PHP 8.5, 8.4, 8.3 i 8.2 se objavljuju.
  • 21. oktobar 2026.: BSI upozorava na „kritične ranjivosti koje ugrožavaju web-aplikacije širom svijeta“ i preporučuje da se bez odlaganja zakrpi. Prema navodima BSI, veliki hosting provajderi su djelimično preventivno isključili servere s mreže.

Dvije PHP ranjivosti ukratko

Radi se o dvije odvojene greške u PHP jezgru: CVE-2026-109618 i CVE-2026-109619. Obje, prema navodima PHP sigurnosnog tima, mogu dovesti do toga da napadač može izvršavati programski kod na serveru bez prijave (unauthenticated Remote Code Execution). Ranjivosti se ocjenjuju sa CVSS v4.0: 9,2 (kritično).

ObilježjeZnačenje
OznakeCVE-2026-109618 i CVE-2026-109619
OcjenaCVSS v4.0: 9,2 — kritično
UčinakIzvršavanje koda na serveru (Remote Code Execution), bez prijave
Uzrok 1Oštećena memorija kada PHP tokom obrade ostane bez radne memorije (Out-of-Memory)
Uzrok 2Zastarjelo globalno stanje koje između zahtjeva ostaje u memoriji
Posebno ugroženoApache s mod_php

Prema procjeni BSI-ja, u trenutku objave nije bilo potvrđenih napada, ali je bilo nepotvrđenih naznaka pokušaja iskorištavanja. Kod kritičnih ranjivosti u tako raširenom softveru, iskustvo govori da treba računati s tim da napadači analiziraju ispravke i pripremaju automatizirane napade. Vremenski prozor za zakrpu je stoga kratak.

Ko je pogođen?

Pogođen je u principu svaki server na kojem radi PHP, bez obzira na to kako je PHP povezan: PHP-FPM, mod_php u Apacheu, php-cgi, FrankenPHP ili LiteSpeed. Prema PHP sigurnosnom timu, rizik je najveći kod Apachea s mod_php.

BSI izričito navodi aplikacije koje se zasnivaju na PHP-u i stoga mogu biti također pogođene:

  • Sistemi za upravljanje sadržajem: WordPress, Drupal, TYPO3, Joomla
  • Shop sistemi: Magento
  • Cloud i pohrana datoteka: Nextcloud
  • Sučelja firewalla: pfSense, OPNsense

Aplikacija sama pritom ne mora biti neispravna. Ranjivost je u PHP-u, zato samo ažuriranje WordPressa, Nextclouda & Co. ne pomaže. Mora se ažurirati PHP verzija na serveru. Kod firewalla poput pfSense i OPNsense ispravljena PHP verzija stiže putem odgovarajućeg firmware ažuriranja proizvođača.

Ove PHP verzije su sigurne

Ranjivosti su otklonjene u sljedećim verzijama. Sve ispod toga smatra se ranjivim.

Sigurne PHP verzije nakon CVE-2026-109618 i CVE-2026-109619: PHP 8.5.12, 8.4.27, 8.3.36 i 8.2.35

PHP granaMinimalno potrebnoNapomena
PHP 8.58.5.12aktuelna grana
PHP 8.48.4.27
PHP 8.38.3.36
PHP 8.28.2.35Podrška završava 31. decembra 2026.
PHP 8.1 i starijenema službenog ažuriranja, vidi dolje

Ovako provjeravate i ažurirate svoj server

1. Utvrditi instaliranu PHP verziju

Na komandnoj liniji servera php -v prikazuje verziju PHP-a za komandnu liniju. Web-server može koristiti drugu PHP verziju. Zato provjerite i verziju PHP-FPM odnosno Apache modula, na primjer s php-fpm8.3 -v ili putem stranice koja ispisuje phpinfo() (nju nakon toga odmah ukloniti).

2. Ažuriranje instalirati putem upravljanja paketima

Kod Debiana, Ubuntua, RHEL-a i srodnih ispravljena verzija stiže putem uobičajenog upravljanja paketima, na primjer apt update && apt upgrade ili dnf upgrade. Kod vanjskih izvora poput Sury PPA ili Remi repozitorija novi paketi obično stižu brzo.

3. Ponovo pokrenuti PHP uslugu

Samo ažuriranje paketa nije dovoljno: pokrenuti PHP procesi zadržavaju stari kod u memoriji. Ponovo pokrenite PHP-FPM (systemctl restart php8.3-fpm) odnosno Apache (systemctl restart apache2) i zatim provjerite jesu li procesi pokrenuti nakon ažuriranja.

4. Hostirane web-stranice

Kod shared hostinga ažurira, u pravilu, provajder. U korisničkom meniju se obično može podesiti PHP verzija po web-stranici. Tamo odaberite jednu od gore navedenih sigurnih verzija ili pitajte provajdera za stanje zakrpa. Prema navodima BSI-ja, pojedini provajderi su preventivno isključili servere s mreže. Ako je vaša stranica nakratko nedostupna, to može biti uzrok.

PHP 8.1 i starije: nema službenog ažuriranja

Za PHP 8.1 i starije više nema službenih sigurnosnih ažuriranja. Operateri takvih sistema imaju dvije mogućnosti:

  • Preći na podržanu verziju (preporučeno). Što je verzija starija, to je veći napor prilagodbe za aplikaciju i proširenja, zato prijelaz treba prethodno testirati.
  • Portirati ispravke unazad. PHP sigurnosni tim je ispravke stavio na raspolaganje u razvojnim granama na GitHubu. Ko PHP sam kompajlira, te izmjene može preuzeti u starije verzije. To je prelazno rješenje i zahtijeva stručno znanje.

I PHP 8.2 je podržan samo do 31. decembra 2026. Zato odmah planirajte prelazak na PHP 8.4 ili 8.5 i ne odgađajte ga za prelazak u novu godinu.

Prelazne mjere i pitanje „isključiti server s mreže?“

PHP sigurnosni tim je uz najavu opisao i privremene zaštitne mjere. One umanjuju rizik, ali ne zatvaraju ranjivosti u potpunosti. One ne zamjenjuju ažuriranje i namijenjene su samo premošćavanju vremena do ažuriranja.

Treba li server do ažuriranja isključiti s mreže, zavisi od njegovog značaja i dostupnosti. BSI navodi da su veliki provajderi poduzeli taj korak. Kao pravilo palca vrijedi:

  • Javno dostupan server, ažuriranje sada moguće: odmah zakrpiti, isključivanje nije potrebno.
  • Javno dostupan server, ažuriranje nije moguće u kratkom roku: ograničiti pristup (na primjer putem firewalla samo za poznate adrese) ili privremeno isključiti uslugu, posebno kod mod_php.
  • Samo interno dostupan server: zakrpiti u skorije vrijeme, hitnost je manja.

Česta pitanja

Moram li ažurirati WordPress, Joomla ili Nextcloud?

Ne zbog ove ranjivosti. Ona se nalazi u PHP-u, a ne u aplikaciji. Ažurirajte PHP verziju na serveru. Ažuriranje aplikacije je neovisno o tome ipak preporučljivo.

Kako mogu prepoznati je li neko već iskoristio ranjivost?

Pouzdanu tvrdnju je teško dati. Sumnjivi su nepoznati PHP fajlovi u web direktoriju, neuobičajeni procesi pod korisnikom web servera, novi korisnički računi ili cron poslovi te neuobičajen odlazni mrežni saobraćaj. U slučaju konkretne sumnje sistem bi trebalo forenzički provjeriti i, ako se posumnja, iznova postaviti.

Je li dovoljna Web Application Firewall?

Firewall može presresti poznate obrasce napada, ali nije zamjena za ažuriranje. Više o saradnji više slojeva zaštite pročitajte u našem članku Zaštita Odoo 19: firewall, 2FA & Web RBL. Osnovna načela vrijede za svaku web aplikaciju.

Je li Odoo pogođen?

Ne. Odoo je napisan u Pythonu i ne radi na PHP-u. Pogođene bi bile samo PHP aplikacije koje rade na istom serveru.

Gdje mogu pronaći službene informacije?

Najavu PHP sigurnosnog tima pronaći ćete u arhivama vijesti na php.net (unos od 20. oktobra 2026), a verzije na php.net/downloads. Upozorenje BSI-ja nosi broj 2026-297981-1032 i na bsi.bund.de je objavljeno.

Podrška Biricon IT Services

Ako niste sigurni koja PHP verzija radi na vašem serveru ili vam je potrebna pomoć pri instaliranju zakrpa, rado ćemo vas podržati: pri popisu svih PHP sistema, pri instaliranju ažuriranja, pri prelasku na podržanu PHP verziju i pri provjeri kompromitovanosti. Kao IT pružalac usluga brinemo o serverima, firewallima i web aplikacijama za mala i srednja preduzeća.

Obratite nam se sada

Stanje na dan: 21. oktobra 2026. Situacija se može brzo promijeniti; mjerodavne su objave PHP sigurnosnog tima i BSI-ja.