Lühidalt: PHP End of Life tähendab: PHP projekt ei anna sellele harule enam turvauuendusi. PHP2Shell näitab tagajärgi selgelt, sest PHP 8.1 ja vanemate jaoks ametlikku parandust ei ole ning PHP 8.2 lõpeb 31.12.2026. Kes töötab täna vanal harul, peaks ülemineku planeerima nüüd, mitte alles järgmises hädaolukorras.
Mida PHP End of Life tähendab
Iga PHP haru, näiteks 8.2 või 8.3, on PHP projekti hoole all ainult piiratud aja. Esmalt tulevad veaparandused ja turvauuendused, hiljem ainult turvauuendused. Seejärel tugi lõpeb täielikult. Kehtivad ajavahemikud avaldab php.net toetatud versioonide lehel.
Pärast toe lõppu tarkvara küll töötab edasi. Kui aga uus turvaauk teatavaks saab, ei ole PHP projektilt enam paika. Server jääb haavatavaks, kuni keegi teine parandab või kuni te lähete üle toetatud harule.
Juhatuse ja IT-juhtimise jaoks on see eelkõige planeerimisküsimus. Ülemineku saab rahulikult ette valmistada. Ajasurve all pärast kriitilist teadet muutub see kalliks ja riskantseks.
Mida PHP2Shell vananenud versioonide kohta näitab
21.10.2026 avaldas PHP projekt paigad kahele kriitilisele turvaaugule, CVE-2026-109618 ja CVE-2026-109619. Mõlemad võimaldavad kahjuliku koodi kaugkäivitamist ilma sisselogimata ja on hinnatud CVSS v4.0 skaalal 9,2. Erialaajakirjanduse andmetel on mõjutatud peaaegu kõik versioonid kuni PHP 5.4-ni.
| Haru | Staatus PHP projekti järgi | PHP2Shelli parandus |
|---|---|---|
| PHP 8.5 | toetatud | 8.5.12 |
| PHP 8.4 | toetatud | 8.4.27 |
| PHP 8.3 | toetatud | 8.3.36 |
| PHP 8.2 | toetatud kuni 31.12.2026 | 8.2.35 |
| PHP 8.1, 8.0, 7.4 | ametlikke uuendusi ei ole | ainult minimaalsed lähtekoodi tagasiportimised |
| PHP 7.3 ja vanemad | ametlikke uuendusi ei ole | PHP projektilt backporti ei ole |
Versioonide 8.1 ja vanemate jaoks jääb seega ainult tee distributsioonide või veebimajutajate backportide kaudu. Need näitavad sageli jätkuvalt vana versiooninumbrit, kuigi on paigatud. Kas backport on paigaldatud, saab siduvalt kinnitada ainult pakkuja. Üksikasjad on lehel PHP 8.1 ja vanemad: mis nüüd kehtib, täieliku ülevaate leiate lehelt Millised PHP versioonid on mõjutatud?.
PHP 8.2 sai PHP2Shelli parandused veel kätte, kuid jõuab 31.12.2026 toe lõppu. Kes migreerub nüüd versioonilt 8.1, peaks sihtima kohe uuemat haru.
Vananenud PHP versioonide riskid ülevaates
Turvarisk on esiplaanil, kuid mitte ainus. Vananenud PHP versioonid toovad kaasa muid probleeme:
- Uute turvaaukude jaoks ei ole paiku: Iga tulevane nõrkus jääb avatuks või sõltub kolmandate osapoolte backportidest.
- Vananenud teegid: Värskemad paketid eeldavad uuemaid PHP harusid. Teekide turvaparandusi ei saa siis enam paigaldada, nagu näitab juhend composer audit.
- Sõltuvus pakkujast: Veebimajutajad võtavad vanade versioonide eest osaliselt lisatasu või lõpetavad teenuse. Tähtaja määrab siis pakkuja, mitte teie.
- Tõendamisprobleemid: Kindlustajate, tellijate ees või auditite korral on toetamata versiooni raske põhjendada. Kas sellest tekivad lepingulised või õiguslikud tagajärjed, selgitage välja kindlustaja või advokaadiga.
- Kasvav ülemineku töömaht: Mida suurem vahe praeguse versiooniga, seda rohkem koodi tuleb kohandada.
Eriti sageli on mõjutatud vanemad poesüsteemid ja kaua puutumata individuaalarendused. Tüüpiline näide on Shopware 5, mis töötab sageli veel vanematel PHP harudel.
Inventuur: millised PHP versioonid teil töötavad?
Esimene samm on täielik pilt. Paljudes serverites töötab paralleelselt mitu PHP versiooni, näiteks vana veebisaidi jaoks, mida keegi enam silmas ei pea. Need käsud ainult loevad:
# Käsurea versioon
php -v
# Paigaldatud versioonid Debianis/Ubuntus
ls /etc/php/
# Paigaldatud versioonid Pleskis
ls /opt/plesk/php/ 2>/dev/null
# Töötavad PHP protsessid versiooniga nimes
ps -eo user,cmd | grep -E "[p]hp-fpm|[p]hp[0-9.]*-cgi|[l]sphp" | sort | uniq -c
Fikseerige iga veebisaidi kohta: domeen, PHP versioon, töörežiim, sisuhaldussüsteem koos versiooniga, vastutav isik. See nimekiri on samal ajal teie hädaolukorra plaani alus. Jagatud veebimajutuses leiate versioonid tavaliselt veebimajutaja kliendimenüüst.
Ülemineku planeerimine: nii toimite
Üleminek toetatud harule järgib reeglina samu samme, sõltumata süsteemist:
- Eesmärk paika panna: valida haru, mida php.net-i järgi toetatakse võimalikult kaua ja mis sobib tootja süsteeminõuete järgi teie sisuhaldussüsteemiga.
- Ühilduvus kontrollida: sisuhaldussüsteem, laiendused, teemad ja oma kood. Andmed on vastava tootja ametlikul lehel.
- Staging üles seada: veebisaidi koopia uue PHP versiooniga, koos andmebaasiga.
- Testida: kõik olulised toimingud kontaktivormist tellimusprotsessini, lisaks vealogi hoiatuste suhtes.
- Ümber lülitada ja taaskäivitada: versioon vahetada, kõik PHP protsessid taaskäivitada, funktsioon ja vealogi kontrollida.
Planeerige realistlikult. Väike veebisait värske sisuhaldussüsteemiga on sageli kiiresti ümber lülitatud. Aastatega kasvanud pood paljude laienduste ja oma koodiga võib aga nõuda koodi ja laienduste kohandamist kuni poesüsteemi uue põhiversioonini välja. Selgitage varakult, kes sisemiselt otsustab, milline eelarve on olemas ja kas tuleb kaasata väliseid arendajaid.
Määrake lisaks, kuidas hoiate edaspidi toe lõppe silmas. Kindel kuupäev aastas, mil võrdlete oma veebisaitide nimekirja php.net-i andmetega, väldib sama kitsaskoha tekkimist uuesti kahe aasta pärast.
Kuni ülemineku ajani kasutage php.net-i üleminekumeetmeid, näiteks session.upload_progress.enabled=0 serveri seadistuses. Need ei ole täielik kaitse, kuid vähendavad riski.
Kuidas PHP SOS konkreetselt aitab?
- Kaardistame kõik PHP versioonid, töörežiimid ja rakendused teie serverites.
- Hindame riski veebisaidi kaupa ja määrame koos teiega järjekorra ja sihtversiooni.
- Rakendame kuni üleminekuni üleminekumeetmed ja hangime pakkujalt backportide kinnitused.
- Migreerime staging-keskkonna kaudu ning dokumenteerime testi ja ümberlülituse.
Käiku kirjeldab teenus PHP 8.1 ja vanemad: üleminek toetatud versioonile.
Korduma kippuvad küsimused
Millal lõpeb PHP 8.2 tugi?
PHP 8.2 jõuab 31.12.2026 PHP projekti toe lõppu. PHP2Shelli parandus on sellele harule veel versiooniga 8.2.35 antud, hilisemate turvaaukude jaoks ei maksa pärast seda ametlikku uuendust oodata.
Kas PHP 8.1 saab PHP2Shelli vastu paiga?
PHP projektilt ei ole 8.1 ja vanemate jaoks enam ametlikke uuendusi. On vaid minimaalsed lähtekoodi tagasiportimised (backport) versioonidele 7.4, 8.0 ja 8.1. Kas ja kuidas teie veebimajutaja või distributsioon neid paigaldab, peate pakkujalt küsima.
Kas vana PHP versioon koos veebimajutaja backportidega on turvaline?
Backportid võivad sulgeda konkreetseid turvauke, kuid ei asenda toetatud haru. Need sõltuvad pakkujast, ilmuvad sageli hiljem ega kata iga turvaauku. Püsilahendusena ei sobi need seetõttu.
Kuidas ma tean, kas mu sisuhaldussüsteem töötab uue PHP versiooniga?
Kontrollige süsteeminõudeid tootja ametlikul lehel ja testige staging-keskkonnas. Laienduste ja teemade puhul kehtib sama, sest need on sageli tegelik kitsaskoht.