Aktuālā situācija: PHP2Shell. Divas kritiskas PHP ievainojamības (CVSS 9.2) ļauj izpildīt ļaunprātīgu kodu bez pieteikšanās. Ielāpi kopš 21.10.2026.Kas jādara tagad →

PHP End of Life: novecojušu versiju riski

Ko nozīmē PHP versijas atbalsta beigas, kuri atzari pēc PHP2Shell vēl saņem oficiālus ielāpus un kā pāreju padarīt plānojamu.

Aktuāls uz 4 min lasīšanas laiksRokasgrāmatas

Īsi: PHP End of Life nozīmē: PHP projekts šim atzaram vairs nepiegādā drošības atjauninājumus. PHP2Shell sekas rāda skaidri, jo PHP 8.1 un vecākām versijām oficiāla labojuma nav, bet PHP 8.2 beidzas 31.12.2026. Kas šodien darbojas uz vecas versijas, pāreju lai plāno tagad, nevis nākamajā ārkārtas situācijā.

Ko nozīmē PHP End of Life

Katru PHP atzaru, piemēram, 8.2 vai 8.3, PHP projekts uztur tikai ierobežotu laiku. Vispirms ir kļūdu labojumi un drošības atjauninājumi, vēlāk tikai drošības atjauninājumi. Pēc tam atbalsts beidzas pilnībā. Aktuālos periodus publicē php.net lapā par atbalstītajām versijām.

Pēc atbalsta beigām programmatūra gan turpina darboties. Taču, ja kļūst zināma jauna ievainojamība, no PHP projekta ielāpa vairs nav. Serveris paliek ievainojams, kamēr kāds cits to neuzlabo vai kamēr jūs nepārejat uz atbalstītu atzaru.

Vadībai un IT vadītājiem tas galvenokārt ir plānošanas jautājums. Pāreju var mierīgi sagatavot. Steigā pēc kritiska ziņojuma tā kļūst dārga un riskanta.

Ko PHP2Shell parāda par novecojušām versijām

  1. gada 21. oktobrī PHP projekts publicēja ielāpus divām kritiskām ievainojamībām, CVE-2026-109618 un CVE-2026-109619. Abas ļauj attālināti izpildīt ļaunprātīgu kodu bez pieteikšanās, un abām CVSS v4.0 vērtējums ir 9,2. Saskaņā ar speciālo presi skartas ir gandrīz visas versijas līdz pat PHP 5.4.
Atzars Statuss pēc PHP projekta PHP2Shell labojums
PHP 8.5 atbalstīts 8.5.12
PHP 8.4 atbalstīts 8.4.27
PHP 8.3 atbalstīts 8.3.36
PHP 8.2 atbalstīts līdz 31.12.2026 8.2.35
PHP 8.1, 8.0, 7.4 nav oficiālu atjauninājumu tikai minimāli pirmkoda backporti
PHP 7.3 un vecākas nav oficiālu atjauninājumu PHP projekta backporta nav

Versijām 8.1 un vecākām tātad paliek tikai ceļš caur distribūciju vai hostinga sniedzēju backportiem. Tie bieži turpina rādīt veco versijas numuru, kaut gan ir ielāpoti. Vai backports ir ieviests, saistoši var apstiprināt tikai sniedzējs. Sīkāka informācija ir lapā PHP 8.1 un vecākas: kas tagad ir spēkā, pilns pārskats rakstā Kuras PHP versijas ir skartas?.

Svarīgi

PHP 8.2 PHP2Shell labojumu vēl saņēma, taču 31.12.2026 sasniedz atbalsta beigas. Kas tagad pāriet no 8.1, tam uzreiz jāizvēlas jaunāks atzars.

Novecojušu PHP versiju risku pārskats

Drošības risks ir priekšplānā, bet ne vienīgais. Novecojušas PHP versijas rada arī citas problēmas:

  • Nav ielāpu jaunām ievainojamībām: Katra turpmākā ievainojamība paliek atvērta vai ir atkarīga no trešo pušu backportiem.
  • Novecojušas bibliotēkas: Aktuālas pakotnes prasa jaunākus PHP atzarus. Drošības labojumus bibliotēkās tad vairs nevar ieviest, kā rāda ceļvedis composer audit.
  • Atkarība no sniedzēja: Hostinga sniedzēji par vecām versijām dažkārt ņem uzcenojumu vai pārtrauc darbību. Termiņu tad nosaka sniedzējs, nevis jūs.
  • Pierādīšanas problēmas: Pret apdrošinātājiem, pasūtītājiem vai auditos neatbalstītu versiju grūti pamatot. Vai no tā izriet līgumiskas vai tiesiskas sekas, noskaidrojiet ar apdrošinātāju vai advokātu.
  • Augošs pārejas apjoms: Jo lielāks attālums līdz aktuālajai versijai, jo vairāk koda jāpielāgo.

Īpaši bieži skarti ir vecāki veikalu risinājumi un ilgi neaiztikti individuāli izstrādājumi. Tipisks piemērs ir Shopware 5, kas bieži vēl darbojas uz vecākiem PHP atzariem.

Inventarizācija: kuras PHP versijas darbojas pie jums

Pirmais solis ir pilns attēls. Daudzos serveros paralēli darbojas vairākas PHP versijas, piemēram, senai vietnei, ko neviens vairs neuztur redzeslokā. Šīs komandas tikai nolasa:

# Komandrindas versija
php -v
# Uzstādītās versijas Debian/Ubuntu sistēmās
ls /etc/php/
# Uzstādītās versijas Plesk
ls /opt/plesk/php/ 2>/dev/null
# Darbojošies PHP procesi ar versiju nosaukumā
ps -eo user,cmd | grep -E "[p]hp-fpm|[p]hp[0-9.]*-cgi|[l]sphp" | sort | uniq -c

Katrai vietnei fiksējiet: domēnu, PHP versiju, darbības režīmu, CMS ar versiju, atbildīgo personu. Šis saraksts vienlaikus ir pamats jūsu ārkārtas rīcības plānam. Shared Hosting versijas parasti atradīsiet hostinga sniedzēja klientu izvēlnē.

Pārejas plānošana: kā rīkoties

Pāreja uz atbalstītu atzaru parasti seko tiem pašiem soļiem neatkarīgi no sistēmas:

  1. Noteikt mērķi: izvēlēties atzaru, ko saskaņā ar php.net atbalstīs pēc iespējas ilgāk un kas pēc ražotāja sistēmas prasībām der jūsu CMS.
  2. Pārbaudīt saderību: CMS, paplašinājumi, motīvi un savs kods. Dati atrodami attiecīgā ražotāja oficiālajā vietnē.
  3. Uzstādīt staging: vietnes kopija ar jauno PHP versiju, ieskaitot datubāzi.
  4. Testēt: visas svarīgās norises, no kontaktformas līdz pasūtījuma procesam, kā arī kļūdu žurnālu uz brīdinājumiem.
  5. Pārslēgt un pārstartēt: mainīt versiju, pārstartēt visus PHP procesus, pārbaudīt darbību un kļūdu žurnālu.

Plānojiet reālistiski. Maza vietne ar aktuālu CMS bieži tiek pārslēgta ātri. Gadiem augušam veikalam ar daudziem paplašinājumiem un savu kodu turpretī var būt nepieciešami koda un paplašinājumu pielāgojumi, līdz pat pārejai uz jaunu veikala sistēmas galveno versiju. Agrīni noskaidrojiet, kurš iekšēji lemj, kāds budžets ir pieejams un vai jāiesaista ārēji izstrādātāji.

Nosakiet arī, kā turpmāk sekosit atbalsta beigām. Fiksēts termiņš gadā, kad savu vietņu sarakstu salīdzināt ar php.net datiem, neļauj to pašu sašaurinājumu atkārtoti radīt pēc diviem gadiem.

Līdz pārejai izmantojiet php.net pagaidu pasākumus, piemēram, session.upload_progress.enabled=0 servera konfigurācijā. Tie nav pilnīga aizsardzība, bet samazina risku.

Kā PHP SOS palīdz konkrēti?

  • Apzinām visas PHP versijas, darbības režīmus un lietojumprogrammas jūsu serveros.
  • Vērtējam risku katrai vietnei un kopā ar jums nosakām secību un mērķa versiju.
  • Līdz pārejai ieviešam pagaidu pasākumus un no sniedzēja pieprasām apstiprinājumus par backportiem.
  • Pāreju veicam caur staging vidi un dokumentējam testu un pārslēgšanu.

Norisi apraksta pakalpojums PHP 8.1 un vecākas: pāreja uz atbalstītu versiju.

Biežāk uzdotie jautājumi

Kad beidzas PHP 8.2 atbalsts?

PHP 8.2 atbalsts no PHP projekta puses beidzas 31.12.2026. PHP2Shell labojumu atzars vēl saņēma ar versiju 8.2.35, vēlākām ievainojamībām pēc tam oficiāls atjauninājums nav gaidāms.

Vai PHP 8.1 saņems ielāpu pret PHP2Shell?

No PHP projekta 8.1 un vecākām versijām oficiālu atjauninājumu vairs nav. Pastāv tikai minimāli pirmkoda backporti versijām 7.4, 8.0 un 8.1. Vai un kā jūsu hostinga sniedzējs vai distribūcija tos ievieš, jāpajautā sniedzējam.

Vai veca PHP versija ar hostinga sniedzēja backportiem ir droša?

Backporti var aizvērt konkrētas ievainojamības, taču neaizstāj atbalstītu atzaru. Tie ir atkarīgi no sniedzēja, bieži nāk vēlāk un neaptver katru ievainojamību. Kā ilgtermiņa risinājums tie tāpēc nav piemēroti.

Kā uzzināt, vai mans CMS darbojas ar jaunu PHP versiju?

Pārbaudiet sistēmas prasības ražotāja oficiālajā vietnē un testējiet starpposma (staging) vidē. Paplašinājumiem un motīviem tas pats, jo tie bieži ir īstais sašaurinājums.

Avoti

Tūlītējs kontakts

Katra stunda ir svarīga. Rakstiet mums tūlīt.

Īsi aprakstiet sistēmu, PHP versiju un novēroto. Mēs sazināsimies, noskaidrosim situāciju un strādāsim attālināti, līdz incidents ir slēgts un dokumentēts.

Tūlītēja palīdzība