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 →

Kā PHP projekts apstrādā drošības ievainojamības

PHP ievainojamības tiek ziņotas konfidenciāli, klasificētas, novērstas izlaidumā un publicētas kā GitHub Security Advisory. PHP2Shell rāda šo norisi nopietnā gadījumā.

Aktuāls uz 4 min lasīšanas laiksPHP zināšanas

Īsi: PHP ievainojamības tiek ziņotas konfidenciāli, vēlams ar privāto Advisory veidlapu GitHub repozitorijā php/php-src, alternatīvi uz security@php.net. PHP izstrādātāji atradumu klasificē kā augstu, vidēju vai zemu; smagas kļūdas tiek labotas atsevišķā drošības repozitorijā un publicētas tikai izlaidumā kopā ar GitHub Security Advisory un parasti CVE numuru. PHP2Shell gadījumā šis process norisinājās steidzamā tempā: iepriekšējs paziņojums 20.10.2026, ielāpi 21.10.2026, papildinoša norāde 23.10.2026.

Kas PHP rūpējas par drošību?

PHP ir atvērtā koda projekts. Drošības politika wiki to apraksta kā brīvprātīgo projektu bez budžeta prēmijām. Katrai versijai ir izlaidumu pārvaldnieki (release manager), kas atbild par publicēšanu. Tam pievienojas PHP Foundation, kas saskaņā ar savu aprakstu nodarbina pilnas un nepilnas slodzes izstrādātāju komandu, kura strādā pie PHP uzturēšanas, drošības un jaunām funkcijām.

Uzņēmumiem tas nozīmē: nav ražotāja ar līgumu, uzziņu tālruni vai garantētiem reakcijas laikiem. Kam vajadzīgi saistoši solījumi, tos saņem no sava Linux distributīva, hostinga sniedzēja vai ilgtermiņa atbalsta sniedzēja, nevis no paša PHP projekta. Šo piegādes ķēdi vajadzētu pārzināt.

Kā ievainojamību ziņo

Ceļš ir aprakstīts drošības politikā GitHub:

  1. Ziņot: ar privāto Security Advisories veidlapu repozitorijā php/php-src. Kas to nevar izmantot vai vēlas pārrunāt tēmu, kas nav kļūdas ziņojums, raksta uz security@php.net.
  2. Īsi aprakstīt: vēlams īss piemērs, kas parāda kļūdu, nevis garš ziņojums par iespējamām sekām. Tā komanda var ātrāk izvērtēt.
  3. Konfidencialitāte: ziņojums līdz publicēšanai paliek privāts.
  4. Minēšana: ziņotāji tiek minēti kā līdzdalībnieki saskaņā ar MITRE credit sistēmu.

Vecākā wiki lapa papildus min klasisko kļūdu izsekotāju ar tipu „Security“. Mūsdienās noteicošais ir ceļš caur GitHub.

Ko PHP projekts uzskata par drošības ievainojamību

Ne katra avārija ir drošības ievainojamība. Wiki min četrus kritērijus: kļūda ļauj neatļautas darbības, pārkāpj drošības robežas, atver piekļuvi svešiem datiem vai smagi traucē pieejamību vai veiktspēju. Klasificē trijos līmeņos:

Līmenis Nozīme saskaņā ar politiku CVE numurs
Augsts trešās personas var kompromitēt lielāko daļu instalāciju, izpildīt kodu vai nolasīt failus parasti jā
Vidējs līdzīga ietekme, bet tikai retāku nosacījumu gadījumā, piemēram, retam paplašinājumam vai konfigurācijai parasti jā
Zems teorētiski iespējams, praktiski ļoti grūti izmantojams parasti nē

Tikpat izsakošs ir saraksts ar to, kas skaidri nav drošības ievainojamība: ļaunprātīgs kods, kas tiek izpildīts tīši, open_basedir un disable_functions apiešana, ļaunprātīga ievade unserialize(), FFI izmantošana un parasta atmiņas pārtraukšana, kurā darbojas memory_limit un beidzas tikai pašreizējais pieprasījums. Operatoriem tas nozīmē: disable_functions ir saprātīga nostiprināšana, bet nav aizsargmūris.

No labojuma līdz publicēšanai

Augstu un vidēju ievainojamību labojumi saskaņā ar wiki tiek ievadīti atsevišķā drošības repozitorijā, pirms tiek izveidots izlaidums. Zemu klasificētās kļūdas iet kā parasti kļūdu labojumi. Ievainojamība tiek publicēta pēc atbildīgas atklāšanas principa: vispirms labojums, tad detaļas. Izlaidumi saskaņā ar wiki parasti iznāk ceturtdienās, bieži regulāro ikmēneša publikāciju ietvaros.

Ar izlaidumu parādās GitHub Security Advisory ar savu identifikatoru (GHSA) un smaguma pakāpi. Repozitorijā, piemēram, 24.09.2026 parādījās vairāki advisories par stream wrappers, FastCGI un filtriem ar smaguma pakāpēm no zemas līdz augstai. Avotu pakotnes php.net tiek piedāvātas ar SHA-256 kontrolsummām un izlaidumu pārvaldnieku GPG parakstiem; Git tagi ir parakstīti. Kuri versiju zari vispār vēl saņem drošības labojumus, rāda lapa par PHP versijām un izlaidumu ciklu.

PHP2Shell kā piemērs nopietnam gadījumam

PHP2Shell rāda, kā process norit zem spiediena:

  • 20.10.2026: php.net paziņo par kritisku drošības izlaidumu 21.10.2026 plkst. 14:00 UTC un patur tiesības publicēt agrāk, ja detaļas kļūst publiskas vai parādās uzbrukumi. Saskaņā ar vairākiem ziņojumiem detaļas patiešām kļuva zināmas pirms aizlieguma termiņa beigām; fonu apgaismo Kāpēc PHP ievainojamība kļuva zināma pirms ielāpa.
  • 21.10.2026: iznāk PHP 8.5.12, 8.4.27, 8.3.36 un 8.2.35, kā arī advisories GHSA-w8hw-w9fx-j79w (CVE-2026-109618) un GHSA-6wmf-4rv5-p3rp (CVE-2026-109619), abi klasificēti kā kritiski. Saskaņā ar php.net Linux distributīvi un ilgtermiņa atbalsta sniedzēji labojumus bija saņēmuši iepriekš. Versijām 7.4, 8.0 un 8.1 ir minimāli backport.
  • 23.10.2026: informatīva norāde par CVE-2026-115560 iesaka session.upload_progress.enabled=0; pilns advisory seko ar nākamo izlaidumu.

Ko operatori no tā secina

  1. Abonēt avotus: php.net, php/php-src GitHub advisories un jūsu distributīva drošības paziņojumi.
  2. Pārzināt piegādes ķēdi: kas piegādā jūsu PHP pakotni un cik ātri tur nonāk backport?
  3. Plānot laika logu: kritiski izlaidumi var nākt ārpus ierastā ritma; ielāpošanas logam jābūt iespējamam īsā laikā.
  4. Ieplānot pārstartēšanu: atjauninājums darbojas tikai tad, kad visi PHP procesi ir pārstartēti.
  5. Nodrošināt pierādījumu: dokumentēt versiju, pakotnes stāvokli un laiku.

Kā PHP SOS palīdz konkrēti?

Ar PHP ielāpu servisu mēs uzņemamies to daļu, kas ir jūsu pusē:

  • Sekot paziņojumiem: mēs novērojam php.net, advisories un distributīvu paziņojumus un izvērtējam, vai jūsu sistēmas ir skartas.
  • Ieviest ielāpu: atjauninājums no piemērota avota, visu procesu pārstartēšana, darbojošās versijas kontrole.
  • Nodrošināt pāreju: kur atjauninājums kavējas, mēs ieviešam oficiālos pagaidu pasākumus.
  • Dokumentēt: jūs saņemat pierādījumu ar versijām, pakotņu stāvokļiem un laikiem.

Biežāk uzdotie jautājumi

Kā ziņot par PHP ievainojamību?

Vēlams ar privāto Security Advisories ziņošanas veidlapu GitHub repozitorijā php/php-src. Kas to nevar izmantot, raksta uz security@php.net. Ziņojums līdz publicēšanai paliek konfidenciāls.

Vai PHP projekts maksā prēmiju par atrastām ievainojamībām?

Nē. Saskaņā ar drošības politiku PHP ir brīvprātīgo projekts bez līdzekļiem bug bounty programmām. Ziņotāji tomēr tiek minēti kā līdzdalībnieki.

Vai disable_functions apiešana ir drošības ievainojamība?

Pēc PHP projekta politikas nē. open_basedir un disable_functions apiešana netiek uzskatīta par PHP drošības problēmu. Iestatījumi ir nostiprināšana, bet nav uzticama drošības robeža.

Kur uzzināt par jaunām PHP ievainojamībām?

php.net sākumlapā ar izlaidumu paziņojumiem un GitHub repozitorija php/php-src Security Advisories. Kas PHP saņem no distributīva, papildus seko tā drošības paziņojumiem.

Kāpēc PHP2Shell tika publicēts trešdienā?

Izlaidumi saskaņā ar wiki parasti iznāk ceturtdienās. PHP2Shell gadījumā php.net 20.10.2026 paziņoja par drošības izlaidumu trešdien, 21.10.2026, plkst. 14:00 UTC un paturēja tiesības publicēt agrāk, ja detaļas kļūtu publiskas.

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