Situația actuală: PHP2Shell. Două vulnerabilități critice PHP (CVSS 9.2) permit cod malițios fără autentificare. Patchuri din 21.10.2026.Ce este de făcut acum →

De ce php -v arată după actualizare același număr

Actualizarea s-a făcut, dar php -v indică versiunea veche. De regulă este un backport și nu o eroare. Cum deosebiți inofensivul de problemele reale.

Stadiu 5 min de cititHosting și distribuții

Pe scurt: Dacă php -v arată după actualizare aceeași versiune, cauza este de obicei un backport: distribuția preia doar corecția de securitate în versiunea sa PHP existentă, iar numărul rămâne același. Ubuntu 24.04 raportează astfel în continuare 8.3.6, deși pachetul este corectat împotriva PHP2Shell. Clarificați întrebarea prin nivelul pachetului și changelog și verificați suplimentar dacă site-ul rulează efectiv cu codul nou.

Un moment tipic după PHP2Shell

Administratorul a instalat actualizarea, totul fără erori. Pentru control tastează php -v și vede aceeași versiune ca înainte. Nu a funcționat actualizarea? Este serverul în continuare deschis? Această întrebare este printre cele mai frecvente din 21 octombrie 2026.

Vestea bună: în cele mai multe cazuri totul este în ordine. Cea proastă: există și cazuri în care același număr indică într-adevăr o problemă. Acest articol ajută să le deosebiți.

De ce distribuțiile nu schimbă numărul

Distribuțiile pentru întreprinderi și LTS promit stabilitate. În cadrul unei versiuni, comportamentul și interfețele ar trebui să se schimbe cât mai puțin. Un salt de la PHP 8.3.6 la 8.3.36 ar aduce însă numeroase remedieri de erori și mici schimbări de comportament, care ar putea deranja aplicațiile.

De aceea, mulți îngrijitori de pachete preiau în versiunea lor existentă doar corecția de securitate concretă. Acest proces se numește backport. Versiunea upstream, pe care PHP însuși o raportează prin php -v, rămâne aceeași. Ce se schimbă este nivelul pachetului, atribuit de distribuție.

Pe exemplul Ubuntu 24.04 arată așa: PHP raportează 8.3.6. Nivelul corectat al pachetului este însă, potrivit USN-8948-1, 8.3.6-0ubuntu0.24.04.13. Partea din spate contează. Debian a decis altfel la PHP2Shell și a livrat pentru bookworm și trixie noile versiuni upstream 8.2.35 și 8.4.27. Prezentarea pe versiune se află în articolul Debian și Ubuntu: este pachetul meu PHP actualizat?.

Merită să descompuneți o dată o astfel de versiune de pachet. Pe exemplul 8.3.6-0ubuntu0.24.04.13: partea dinaintea cratimei este versiunea upstream, adică ce raportează PHP însuși. După ea urmează revizia distribuției. ubuntu0.24.04 trimite la versiune, ultimul număr numără revizuirile. Fiecare corecție de securitate crește acest număr. La Ubuntu Pro apare suplimentar un adaos precum +esm5, la actualizările de securitate Debian unul precum ~deb12u1. Cine poate citi aceste părți recunoaște dintr-o privire dacă un pachet a fost modificat după un anunț de securitate.

Unde mai apare peste tot numărul vechi

Numărul neschimbat nu apare doar în php -v. Apare și în locuri vizibile din exterior sau evaluate de instrumente:

Loc Ce scrie acolo Consecință
php -v și php -i versiunea upstream, data build-ului administratorii se îndoiesc de actualizare
pagina phpinfo versiunea upstream același efect în browser
antetul X-Powered-By versiunea upstream, dacă expose_php este activ scanerele externe raportează o vulnerabilitate
panouri de hosting precum Plesk versiunea upstream afișaj de exemplu 8.2.34 în ciuda patchului
scanere de vulnerabilități comparație după număr alarmă falsă la backporturi

Scanerele externe sunt un caz aparte. Cine le folosește poate primi după PHP2Shell constatări pentru servere corectate de mult. Nu ignorați aceste constatări în bloc, ci dovediți pentru fiecare server nivelul pachetului și consemnați constatarea ca verificată. Un alt motiv pentru a ascunde indicațiile de versiune spre exterior se află în articolul expose_php și antetele serverului.

Când același număr este un semnal de avertizare

Există trei situații în care numărul neschimbat indică într-adevăr o problemă:

  1. Sursa de pachete livrează versiunea upstream. Dacă PHP provine dintr-o sursă care livrează în mod obișnuit versiunea upstream actuală, de exemplu Debian la PHP2Shell sau surse terțe precum Remi și sury.org, după actualizare ar trebui să apară 8.5.12, 8.4.27, 8.3.36 sau 8.2.35. Dacă acolo rămâne numărul vechi, pachetul nu a fost actualizat.
  2. Verificați instalarea greșită. php -v arată linia de comandă. Dacă site-ul rulează printr-o altă versiune, de exemplu dintr-un panou de hosting sau dintr-o Software Collection, rezultatul nu spune nimic despre site.
  3. Nivelul pachetului nu s-a schimbat. Dacă și nivelul pachetului este același ca înainte de actualizare, actualizarea nu a ajuns la acest pachet, de exemplu pentru că a fost reținut sau lipsește sursa.

Pentru netehnicieni se poate rezuma astfel: numărul versiunii descrie modelul, nivelul pachetului descrie starea de întreținere. Două servere cu aceeași versiune PHP pot diferi semnificativ ca securitate. Întrebați de aceea IT-ul sau prestatorul dumneavoastră nu despre versiune, ci despre dovada patchului.

Cum clarificați întrebarea în cinci minute

Comenzile următoare sunt exclusiv de citire. Exemplele pornesc de la Ubuntu sau Debian și PHP 8.3; pe sistemele RHEL folosiți rpm -q în loc de dpkg-query.

# 1. Ce raportează PHP însuși, inclusiv data build-ului?
php -v

# 2. Ce nivel de pachet este instalat, din ce sursă?
apt policy php8.3-fpm

# 3. Conține changelog-ul numerele CVE?
apt changelog php8.3-fpm 2>/dev/null | grep -E "CVE-2026-10961[89]"

# 4. De când rulează procesele PHP ale site-ului?
ps -eo pid,lstart,cmd | grep "[p]hp-fpm"

Data build-ului din rezultatul php -v este un indiciu, dar nu o dovadă. Dovada solidă o oferă intrarea din changelog. Cum o găsiți și o consemnați dacă este formulată altfel sau lipsește descrie articolul Dovedirea numerelor CVE în changelog-ul pachetului.

Sfat

Notați după fiecare verificare ambele numere: versiunea upstream din php -v și nivelul pachetului. Cine întreabă mai târziu de ce serverul are „încă 8.3.6” primește astfel un răspuns clar.

Verificarea generală prin versiune, pachet și procese o rezumă pagina Verificarea corectă a versiunii PHP și a nivelului de patch.

Cum ajută PHP SOS concret?

  • Clarificăm pentru fiecare server dacă un număr de versiune neschimbat este un backport sau o actualizare lipsă.
  • Evaluăm constatările scanerelor de vulnerabilități și dovedim alarmele false cu nivelul pachetului și changelog.
  • Verificăm ce instalare PHP folosește efectiv site-ul și dacă procesele ei au fost repornite.
  • În serviciul de patch PHP documentăm alături versiunea upstream și nivelul pachetului.

Întrebări frecvente

Este serverul meu neactualizat dacă php -v arată numărul vechi?

Nu neapărat. Multe distribuții preiau corecții ca backport în versiunea existentă. Ubuntu 24.04, de exemplu, arată în continuare 8.3.6, deși pachetul este corectat conform USN-8948-1. Decisive sunt nivelul pachetului și changelog-ul.

De ce raportează scanerul meu de securitate o vulnerabilitate în ciuda actualizării?

Multe scanere citesc doar numărul versiunii, de exemplu din antetul X-Powered-By. La backporturi, aceasta duce la alarme false. Verificați nivelul pachetului și documentați rezultatul, în loc să ignorați pur și simplu constatarea.

Se poate ca php -v să arate un număr nou, dar site-ul nu?

Da. php -v arată linia de comandă. Site-ul poate rula printr-o altă instalare sau prin procese pornite înainte de actualizare. Verificați de aceea și serviciul FPM sau Apache și ora lor de pornire.

Ajută data build-ului din rezultatul php -v?

Este un indiciu, dar nu o dovadă. O dată de build după 21 octombrie 2026 se potrivește cu un pachet corectat, dar nu dovedește că este inclusă corecția. Intrarea din changelog este dovada mai bună.

Surse

Contact imediat

Fiecare oră contează. Scrieți-ne acum.

Descrieți pe scurt sistemul, versiunea PHP și ce ați observat. Ne vom face auziți, clarificăm situația și lucrăm la distanță până când incidentul este încheiat și documentat.

Ajutor imediat