Aktuális helyzet: PHP2Shell. Két kritikus PHP-rés (CVSS 9,2) lehetővé teszi kártékony kód futtatását bejelentkezés nélkül. Javítások 2026. 10. 21. óta.Mi a teendő most →

Miért mutatja a php -v a frissítés után ugyanazt a számot

A frissítés lefutott, de a php -v a régi verziót jelzi. Többnyire backportról van szó, nem hibáról. Így különbözteti meg az ártalmatlant a valódi problémáktól.

Állapot 5 perc olvasási időTárhely és disztribúciók

Röviden: Ha a php -v a frissítés után ugyanazt a verziót mutatja, az többnyire egy backport miatt van: a disztribúció csak a biztonsági javítást veszi át a meglévő PHP-verziójába, a szám ugyanaz marad. Az Ubuntu 24.04 így továbbra is 8.3.6-ot jelez, noha a csomag javított a PHP2Shell ellen. A kérdést a csomagállapoton és a changelogon keresztül tisztázza, és ellenőrizze azt is, hogy a weboldal valóban az új kóddal fut-e.

Egy tipikus pillanat a PHP2Shell után

Az admin telepítette a frissítést, minden hiba nélkül. Ellenőrzésképp beírja a php -v parancsot, és ugyanazt a verziót látja, mint korábban. Nem működött a frissítés? Nyitva van még a szerver? Ez a kérdés 2026. október 21. óta a leggyakoribbak közé tartozik.

A jó hír: a legtöbb esetben minden rendben van. A rossz: vannak esetek is, amikor az azonos szám valóban problémát jelez. Ez az írás segít megkülönböztetni a kettőt.

Miért nem változtatják meg a számot a disztribúciók

A vállalati és LTS-disztribúciók stabilitást ígérnek. Egy kiadáson belül a viselkedésnek és az interfészeknek lehetőleg nem szabad változniuk. A PHP 8.3.6-ról 8.3.36-ra való ugrás azonban számos hibajavítást és apró viselkedésváltozást hozna magával, amelyek zavarhatnák az alkalmazásokat.

Ezért sok csomagfelelős csak a konkrét biztonsági javítást veszi át a meglévő verziójába. Ezt a folyamatot nevezik backportnak. Az upstream verzió, amelyet maga a PHP a php -v-n keresztül jelez, ugyanaz marad. Ami változik, az a csomagállapot, amelyet a disztribúció ad.

Az Ubuntu 24.04 példáján ez így néz ki: a PHP 8.3.6-ot jelez. A javított csomagállapot azonban a USN-8948-1 szerint 8.3.6-0ubuntu0.24.04.13. A hátsó rész számít. A Debian a PHP2Shellnél másképp döntött, és a bookwormhoz és a trixie-hez az új upstream verziókat, a 8.2.35-öt és a 8.4.27-et szállította. A kiadásonkénti áttekintés a Debian és Ubuntu: javított a PHP-csomagom? írásban található.

Megéri egyszer felbontani egy ilyen csomagverziót. A 8.3.6-0ubuntu0.24.04.13 példáján: a kötőjel előtti rész az upstream verzió, vagyis amit maga a PHP jelez. Mögötte a disztribúció revíziója következik. Az ubuntu0.24.04 a kiadásra utal, az utolsó szám az átdolgozásokat számolja. Minden biztonsági javítás megnöveli ezt a számot. Az Ubuntu Pro-nál emellett egy +esm5-höz hasonló toldalék jelenik meg, a Debian biztonsági frissítéseinél egy ~deb12u1-hez hasonló. Aki olvasni tudja ezeket a részeket, egy pillantással felismeri, hogy egy csomagot módosítottak-e egy biztonsági közlemény után.

Hol bukkan fel mindenhol a régi szám

A változatlan szám nemcsak a php -v-ben jelenik meg. Olyan helyeken is áll, amelyek kívülről láthatók, vagy amelyeket eszközök értékelnek ki:

Hely Mi áll ott Következmény
php -v és php -i upstream verzió, build dátuma az adminok kételkednek a frissítésben
phpinfo-oldal upstream verzió ugyanez a hatás a böngészőben
X-Powered-By fejléc upstream verzió, ha az expose_php be van kapcsolva külső szkennerek rést jeleznek
Tárhelypanelek, mint a Plesk upstream verzió kijelzés, például 8.2.34 a javítás ellenére
Sebezhetőségi szkennerek összehasonlítás szám szerint téves riasztás backportoknál

A külső szkennerek külön eset. Aki használja őket, a PHP2Shell után esetleg olyan szerverekre kap találatokat, amelyek már rég javítottak. Ne hagyja figyelmen kívül ezeket a találatokat általánosan, hanem minden szerverre igazolja a csomagállapotot, és jegyezze fel a találatot ellenőrzöttként. A verziójelzések kifelé való elrejtésének újabb okát az expose_php és szerverfejlécek írás tartalmazza.

Mikor figyelmeztető jel az azonos szám

Három helyzet van, amelyben a változatlan szám valóban problémára utal:

  1. A csomagforrás az upstream verziót szállítja. Ha a PHP olyan forrásból érkezik, amely normál esetben az aktuális upstream verziót szállítja, például a Debian a PHP2Shellnél vagy harmadik féltől származó források, mint a Remi és a sury.org, a frissítés után a 8.5.12, 8.4.27, 8.3.36 vagy 8.2.35 verziónak kell megjelennie. Ha ott továbbra is a régi szám áll, a csomagot nem frissítették.
  2. A rossz telepítést ellenőrzi. A php -v a parancssort mutatja. Ha a weboldal egy másik verzión fut, például egy tárhelypanelből vagy egy Software Collectionből, a kimenet semmit sem mond a weboldalról.
  3. A csomagállapot nem változott. Ha a csomagállapot is ugyanaz, mint a frissítés előtt, a frissítés nem érkezett meg ehhez a csomaghoz, például mert visszatartották, vagy hiányzik a forrás.

Nem szakembereknek ez így foglalható össze: a verziószám a modellt írja le, a csomagállapot a karbantartási állapotot. Két, azonos PHP-verziójú szerver biztonságban jelentősen különbözhet. Ezért ne a verzióról kérdezze az IT-jét vagy a szolgáltatóját, hanem a javítás igazolásáról.

Így tisztázza a kérdést öt perc alatt

A következő parancsok kizárólag olvasnak. A példák Ubuntut vagy Debiant és PHP 8.3-at feltételeznek; RHEL-rendszereken a dpkg-query helyett az rpm -q-t használja.

# 1. Mit jelez maga a PHP, a build dátumával együtt?
php -v

# 2. Melyik csomagállapot van telepítve, melyik forrásból?
apt policy php8.3-fpm

# 3. Tartalmazza a changelog a CVE-számokat?
apt changelog php8.3-fpm 2>/dev/null | grep -E "CVE-2026-10961[89]"

# 4. Mióta futnak a weboldal PHP-folyamatai?
ps -eo pid,lstart,cmd | grep "[p]hp-fpm"

A php -v kimenetében lévő build dátum jelzés, de nem bizonyíték. A megbízható igazolást a changelog-bejegyzés adja. Hogyan találja meg és rögzíti, ha másképp van megfogalmazva vagy hiányzik, azt a CVE-számok igazolása a csomag changelogjában írás írja le.

Tipp

Minden ellenőrzés után jegyezze fel mindkét számot: a php -v upstream verzióját és a csomagállapotot. Aki később azt kérdezi, miért van a szerveren „még mindig 8.3.6”, így egyértelmű választ kap.

A verzión, a csomagon és a folyamatokon keresztüli általános ellenőrzést a PHP-verzió és javítási állapot helyes ellenőrzése oldal foglalja össze.

Hogyan segít konkrétan a PHP SOS?

  • Szerverenként tisztázzuk, hogy egy változatlan verziószám backport-e vagy hiányzó frissítés.
  • Értékeljük a sebezhetőségi szkennerek találatait, és a téves riasztásokat csomagállapottal és changelogal igazoljuk.
  • Ellenőrizzük, hogy a weboldal tényleg melyik PHP-telepítést használja, és újraindították-e a folyamatait.
  • A PHP-javítási szolgáltatásban az upstream verziót és a csomagállapotot egymás mellett dokumentáljuk.

Gyakori kérdések

Javítatlan a szerverem, ha a php -v a régi számot mutatja?

Nem feltétlenül. Sok disztribúció a javításokat backportként veszi át a meglévő verzióba. Az Ubuntu 24.04 például továbbra is 8.3.6-ot mutat, noha a csomag a USN-8948-1 szerint javított. A döntő a csomagállapot és a changelog.

Miért jelez rést a biztonsági szkennerem a frissítés ellenére?

Sok szkenner csak a verziószámot olvassa, például az X-Powered-By fejlécből. Backportoknál ez téves riasztásokhoz vezet. Ellenőrizze a csomagállapotot, és dokumentálja az eredményt, ahelyett hogy egyszerűen figyelmen kívül hagyná a találatot.

Lehet, hogy a php -v új számot mutat, a weboldal viszont nem?

Igen. A php -v a parancssort mutatja. A weboldal futhat egy másik telepítésen vagy olyan folyamatokon keresztül, amelyeket a frissítés előtt indítottak. Ezért ellenőrizze az FPM-szolgáltatást vagy az Apache-ot és azok indítási idejét is.

Segít a build dátuma a php -v kimenetében?

Ez jelzés, de nem bizonyíték. A 2026. október 21. utáni build dátum illik egy javított csomaghoz, de nem bizonyítja, hogy a javítás benne van. A changelog-bejegyzés jobb bizonyíték.

Források

Azonnali kapcsolat

Minden óra számít. Írjon nekünk most.

Ismertesse röviden a rendszert, a PHP-verziót és a megfigyelését. Jelentkezünk, tisztázzuk a helyzetet, és távolról dolgozunk, amíg az incidens le nem zárul és dokumentálva nem lesz.

Azonnali segítség