Trenutno stanje: PHP2Shell. Dvije kritične PHP ranjivosti (CVSS 9.2) omogućuju zlonamjerni kod bez prijave. Zakrpe od 21. 10. 2026.Što sada učiniti →

Zašto php -v nakon ažuriranja prikazuje isti broj

Ažuriranje je prošlo, a php -v javlja staru verziju. Najčešće je to backport, a ne pogreška. Kako razlikovati bezopasno od stvarnih problema.

Stanje 5 min čitanjaHosting i distribucije

Ukratko: Ako php -v nakon ažuriranja prikazuje istu verziju, uzrok je najčešće backport: distribucija u svoju postojeću PHP verziju preuzima samo sigurnosni ispravak, a broj ostaje isti. Ubuntu 24.04 tako i dalje javlja 8.3.6 iako je paket ispravljen protiv PHP2Shella. Pitanje razjasnite preko stanja paketa i changelogova te dodatno provjerite radi li web-stranica doista s novim kodom.

Tipičan trenutak nakon PHP2Shella

Administrator je instalirao ažuriranje, sve bez pogrešaka. Za kontrolu utipka php -v i vidi istu verziju kao prije. Nije li ažuriranje uspjelo? Je li poslužitelj i dalje otvoren? To pitanje spada među najčešća od 21. listopada 2026.

Dobra vijest: u većini slučajeva sve je u redu. Loša: postoje i slučajevi u kojima isti broj doista upućuje na problem. Ovaj članak pomaže razlikovati jedno od drugog.

Zašto distribucije ne mijenjaju broj

Poslovne i LTS distribucije obećavaju stabilnost. Unutar jednog izdanja ponašanje i sučelja trebaju se što manje mijenjati. Skok s PHP-a 8.3.6 na 8.3.36 donio bi brojne ispravke pogrešaka i male promjene ponašanja koje bi mogle smetati aplikacijama.

Zato mnogi održavatelji paketa u svoju postojeću verziju preuzimaju samo konkretan sigurnosni ispravak. Taj se postupak naziva backport. Upstream verzija koju sam PHP javlja putem php -v ostaje ista. Mijenja se stanje paketa koje dodjeljuje distribucija.

Na primjeru Ubuntua 24.04 to izgleda ovako: PHP javlja 8.3.6. Ispravljeno stanje paketa prema USN-8948-1 glasi ipak 8.3.6-0ubuntu0.24.04.13. Računa se stražnji dio. Debian je kod PHP2Shella odlučio drukčije i za bookworm i trixie isporučio nove upstream verzije 8.2.35 i 8.4.27. Pregled po izdanju nalazi se u članku Debian i Ubuntu: je li moj PHP paket zakrpan?.

Isplati se jednom rastaviti takvu verziju paketa. Na primjeru 8.3.6-0ubuntu0.24.04.13: dio prije crtice je upstream verzija, dakle ono što sam PHP javlja. Iza slijedi revizija distribucije. ubuntu0.24.04 upućuje na izdanje, a posljednji broj broji preinake. Svaki sigurnosni ispravak povećava taj broj. Kod Ubuntu Pro pojavljuje se dodatak poput +esm5, a kod Debianovih sigurnosnih ažuriranja onaj poput ~deb12u1. Tko zna čitati te dijelove, na prvi pogled prepoznaje je li paket nakon sigurnosne objave izmijenjen.

Gdje se sve pojavljuje stari broj

Nepromijenjeni broj ne pojavljuje se samo u php -v. Stoji i na mjestima koja su izvana vidljiva ili ih analiziraju alati:

Mjesto Što tamo stoji Posljedica
php -v i php -i upstream verzija, datum builda administratori sumnjaju u ažuriranje
phpinfo stranica upstream verzija isti učinak u pregledniku
Zaglavlje X-Powered-By upstream verzija, ako je expose_php uključen vanjski skeneri javljaju ranjivost
Hosting paneli poput Plesk upstream verzija prikaz primjerice 8.2.34 unatoč zakrpi
Skeneri ranjivosti usporedba po broju lažni alarm kod backportova

Vanjski skeneri poseban su slučaj. Tko ih koristi, nakon PHP2Shella možda dobiva nalaze za poslužitelje koji su odavno ispravljeni. Te nalaze nemojte paušalno zanemariti, nego za svaki poslužitelj dokažite stanje paketa i nalaz označite kao provjeren. Dodatni razlog za skrivanje oznaka verzije prema van navodi članak expose_php i zaglavlja poslužitelja.

Kada je isti broj znak upozorenja

Postoje tri situacije u kojima nepromijenjeni broj doista upućuje na problem:

  1. Izvor paketa isporučuje upstream verziju. Ako PHP dolazi iz izvora koji obično isporučuje aktualnu upstream verziju, primjerice Debian kod PHP2Shella ili izvori trećih strana poput Remija i sury.org, nakon ažuriranja trebalo bi se pojaviti 8.5.12, 8.4.27, 8.3.36 ili 8.2.35. Ako i dalje stoji stari broj, paket nije ažuriran.
  2. Provjeravate pogrešnu instalaciju. php -v prikazuje naredbeni redak. Ako web-stranica radi preko druge verzije, primjerice iz hosting panela ili Software Collection, ispis ne govori ništa o web-stranici.
  3. Stanje paketa se nije promijenilo. Ako je i stanje paketa isto kao prije ažuriranja, ažuriranje za taj paket nije stiglo, primjerice jer je zadržan ili izvor nedostaje.

Za one koji nisu tehničari to se može sažeti ovako: broj verzije opisuje model, stanje paketa stanje održavanja. Dva poslužitelja s istom PHP verzijom u sigurnosti se mogu znatno razlikovati. Zato svoj IT ili pružatelja usluga ne pitajte za verziju, nego za dokaz o zakrpi.

Kako to razjasniti u pet minuta

Sljedeće naredbe samo čitaju. Primjeri polaze od Ubuntua ili Debiana i PHP-a 8.3; na RHEL sustavima koristite rpm -q umjesto dpkg-query.

# 1. Što sam PHP javlja, uključujući datum builda?
php -v

# 2. Koje je stanje paketa instalirano, iz kojeg izvora?
apt policy php8.3-fpm

# 3. Sadrži li changelog CVE brojeve?
apt changelog php8.3-fpm 2>/dev/null | grep -E "CVE-2026-10961[89]"

# 4. Od kada rade PHP procesi web-stranice?
ps -eo pid,lstart,cmd | grep "[p]hp-fpm"

Datum builda u ispisu php -v je naznaka, ali ne dokaz. Pouzdan dokaz daje unos u changelogu. Kako ga pronaći i zabilježiti ako je drukčije formuliran ili nedostaje, opisuje članak Dokazati CVE brojeve u changelogu paketa.

Savjet

Nakon svake provjere zabilježite oba broja: upstream verziju iz php -v i stanje paketa. Tko kasnije pita zašto poslužitelj „još ima 8.3.6“, tako dobiva jasan odgovor.

Opću provjeru preko verzije, paketa i procesa sažima stranica Ispravno provjeriti PHP verziju i razinu zakrpe.

Kako PHP SOS konkretno pomaže?

  • Za svaki poslužitelj razjašnjavamo je li nepromijenjen broj verzije backport ili nedostajuće ažuriranje.
  • Ocjenjujemo nalaze skenera ranjivosti i lažne alarme dokazujemo stanjem paketa i changelogom.
  • Provjeravamo koju PHP instalaciju web-stranica doista koristi i jesu li njezini procesi ponovno pokrenuti.
  • U PHP usluzi zakrpa dokumentiramo upstream verziju i stanje paketa jedno uz drugo.

Česta pitanja

Je li moj poslužitelj nezakrpan ako php -v prikazuje stari broj?

Ne nužno. Mnoge distribucije ispravke preuzimaju kao backport u postojeću verziju. Ubuntu 24.04 primjerice i dalje prikazuje 8.3.6 iako je paket prema USN-8948-1 ispravljen. Odlučujući su stanje paketa i changelog.

Zašto moj sigurnosni skener unatoč ažuriranju javlja ranjivost?

Mnogi skeneri čitaju samo broj verzije, primjerice iz zaglavlja X-Powered-By. Kod backportova to dovodi do lažnih alarma. Provjerite stanje paketa i dokumentirajte rezultat umjesto da nalaz jednostavno zanemarite.

Može li php -v prikazivati novi broj, a web-stranica ne?

Da. php -v prikazuje naredbeni redak. Web-stranica može raditi preko druge instalacije ili preko procesa pokrenutih prije ažuriranja. Zato provjerite i FPM uslugu ili Apache te njihovo vrijeme pokretanja.

Pomaže li datum builda u ispisu php -v?

To je naznaka, ali ne dokaz. Datum builda nakon 21. listopada 2026. odgovara ispravljenom paketu, ali ne dokazuje da je ispravak sadržan. Unos u changelogu bolji je dokaz.

Izvori

Hitni kontakt

Svaki sat se računa. Pišite nam odmah.

Ukratko opišite sustav, verziju PHP-a i opažanje. Javit ćemo Vam se, razjasniti situaciju i raditi na daljinu dok incident nije zaključen i dokumentiran.

Hitna pomoć