Dabartinė padėtis: PHP2Shell. Du kritiniai PHP pažeidžiamumai (CVSS 9,2) leidžia vykdyti kenkėjišką kodą be prisijungimo. Pataisos nuo 2026-10-21.Ką dabar daryti →

Ar PHP2Shell paveikė jus? Išsiaiškinkite dabar

Nežinote, ar PHP2Shell paveikė jūsų serverius, svetaines ar hostingo paketus? Išsiaiškiname tai nuotoliu, įrodome serveryje ir pasakome, ką daryti.

Būsena 4 min. skaitymoSkubi pagalba

Trumpai: Ar PHP2Shell paveikė jus, priklauso nuo trijų dalykų: PHP versijos, veikimo režimo ir to, ar bei kaip pataisyta. Jei nesate tikri, susisiekite dabar. Ar tai jus palietė? Skambinkite. Padėsime. Išsiaiškiname tai nuotoliu pačiame serveryje, o ne pagal nuojautą, ir uždarome spragą, jei ji atvira.

Veikti nedelsiant

Dabar nieko netrinkite ir neįrenkite iš naujo. Net jei norite tik išsiaiškinti, ar esate paveikti: jei serveris galbūt jau užpultas, mums reikia nepakeistų failų ir žurnalų. Pranešti apie avariją, tada patikrą atliksime kartu.

Ar tai jus palietė? Šie atvejai priklauso patikros sąrašui

PHP2Shell yra dvi kritinės pačiame PHP spragos (CVE-2026-109618 ir CVE-2026-109619, abi su aukščiausiu 9,2 įvertinimu pagal CVSS v4.0). Jos leidžia vykdyti kenkėjišką kodą nuotoliu be prisijungimo. Paveikti gali būti visi veikimo režimai: PHP-FPM, Apache su mod_php, php-cgi, FrankenPHP ir LiteSpeed. Patikrinkite kiekvieną iš šių sistemų:

  • nuosavi serveriai, vServer ir root serveriai su PHP
  • hostingo paketai ir valdomi serveriai (managed server), net jei neturite prieigos prie konfigūracijos
  • konteineriai ir platformų paslaugos, kurios atsineša PHP atvaizdą (image)
  • testavimo sistemos, staging aplinkos ir užmirštos senos sistemos, pasiekiamos iš interneto
  • NAS, įrenginiai (appliances) ar paslaugų teikėjų programinė įranga, kuri viduje naudoja PHP

Rizika kyla būtent iš užmirštų sistemų. Pasak Unit 42, yra daugiau nei 22,6 mln. viešai pasiekiamų, galimai pažeidžiamų egzempliorių, o BSI tikėjosi greito plataus masto išnaudojimo.

Ką daryti nedelsiant

  1. Sudarykite inventorių. Surašykite visus serverius, domenus ir hostingo sutartis, kuriuose veikia PHP, ir kas už juos atsako.
  2. Nustatykite PHP versiją kiekvienoje sistemoje. Serveriuose su php -v. Atminkite, kad komandinė eilutė gali naudoti kitą versiją nei žiniatinklio serveris.
  3. Išsiaiškinkite veikimo režimą. Ar PHP veikia kaip PHP-FPM, kaip mod_php ar per LiteSpeed? Esant mod_php PHP komanda riziką vertina didžiausią.
  4. Paklauskite hostingo teikėjo ir paslaugų teikėjų. Raštu: kokia versija veikia, ar pataisa įdiegta, ar visi procesai paleisti iš naujo?
  5. Saugokite žurnalus. Specializuota spauda pataria išsaugoti žurnalus nuo 2026 m. spalio 20 d.
  6. Ilgai nelaukite. Jei sistema atvira, o pataisos iš karto įdiegti neįmanoma, BSI rekomenduoja laikinai atjungti žiniatinklio serverį nuo tinklo.

Kaip PHP SOS padeda konkrečiai?

Paveikimą išsiaiškiname nuotoliu ir su įrodymais.

  1. Įvertiname padėtį: leidžiame jums aprašyti inventorių ir suskirstome sistemas pagal pasiekiamumą ir riziką.
  2. Išsaugome ir uždarome: kur atvira, pirmiausia išsaugome būseną, o tada uždarome spragą atnaujinimu ir paleidimu iš naujo. Kur to iš karto padaryti neįmanoma, taikome pereinamąsias priemones, kurios nėra visiška apsauga.
  3. Tikriname ir valome: tikriname, ar spraga buvo išnaudota prieš pataisą, ir prireikus išvalome. Aiškiai atskiriame, ar serveris paveiktas, ar galbūt jau užpultas.
  4. Sutvirtiname ir pateikiame ataskaitą: gaunate sąrašą pagal sistemas: versija, veikimo režimas, pataisos įrodymas, neišspręsti klausimai.

Kaip įrodyti, ar esate paveikti

Vien versijos numerio nepakanka, nes teikėjai pataisas perkelia atgal (backport). Pavyzdžiui, pasak pranešimų, Ubuntu 24.04 ir po atnaujinimo toliau rodo 8.3.6. Patikimi trys keliai:

Kelias Ką parodo Riba
Palyginti versiją su pataisytomis versijomis 8.5.12, 8.4.27, 8.3.36 ar 8.2.35 arba naujesnė yra ištaisyta taikoma tik originalioms versijoms, ne backport
Testas dėl memory_hard_limit_percent bool(false) reiškia: direktyva nežinoma, vadinasi, paveikta vykdyti kiekvienai versijai ir veikimo režimui atskirai
Paketo pakeitimų žurnale ieškoti CVE numerių įrodo backport distribucijose šaltinis yra teikėjo saugumo archyvas

Testas atrodo taip:

php -r 'var_dump(ini_get("memory_hard_limit_percent"));'

Kaip tvarkingai patikrinti versiją ir pataisų būseną, aprašyta puslapyje Kaip teisingai patikrinti PHP versiją ir pataisų būseną. Šakų apžvalgą pateikia Kurios PHP versijos paveiktos?. Kodėl rodinys po pataisos gali atrodyti senas, paaiškina straipsnis php -v rodo seną numerį.

Paveikta ir nebepataisoma: PHP 8.1 ir senesnės

PHP 8.1 ir senesnėms PHP projektas oficialių atnaujinimų nebeteikia, yra tik minimalūs atgaliniai pataisų perkėlimai šaltinio kode 7.4, 8.0 ir 8.1 versijoms. Kas naudoja tokią versiją, dažniausiai turi du kelius: teikėją su įrodytu backport arba perėjimą prie prižiūrimos versijos. Yra komercinių ilgalaikio palaikymo pasiūlymų, bet ar ir kada jie apima PHP2Shell, teikėjas turi patvirtinti raštu. Padedame tai įvertinti puslapyje PHP 8.1 ir senesnės: kas dabar galioja ir įgyvendinti per PHP pataisų paslaugą.

Ką mums atsiųsti

  • Jūsų serverių, domenų ir hostingo teikėjų sąrašas
  • PHP versija kiekvienoje sistemoje, kiek žinoma
  • Veikimo režimas ir žiniatinklio serveris, kiek žinoma
  • Ar prieš tai įjungtas Cloudflare ar kita apsauga ir ar origin serveris pasiekiamas tiesiogiai
  • Jūsų hostingo teikėjo atsakymai, jei jau klausėte
  • Kontaktinis asmuo patvirtinimams ir paleidimui iš naujo

Kodėl PHP SOS

Dirbame Made in Germany ir kartu su savo kibernetinių specialistų partnerių tinklu daugiau nei 25 metus specializuojamės IT saugumo srityje. Gaunate vieną kontaktinį asmenį, kuris peržiūri jūsų inventorių ir kiekvieną teiginį pagrindžia įrodymais, o ne tik nuskaito versijų numerius. Dirbame nuotoliu, be atvykimo, ir dokumentuojame, ką patikrinome. Tokį teiginį kaip „saugu“ pateikiame tik tiek, kiek jis įrodomas. Didesnėms aplinkoms gali tikti PHP2Shell skubi pagalba.

Ar tai jus palietė? Skambinkite. Padėsime.

Jei nežinote, ar esate paveikti, to pakanka, kad susisiektumėte dabar. Paskambinkite arba parašykite per WhatsApp. Perimame darbą nuo pirmos žinutės ir viską išsiaiškiname kartu su jumis pačiame serveryje. Pranešti apie avariją dabar.

Dažni klausimai

Ar mane paveikia PHP2Shell, jei naudoju tik WordPress ar parduotuvę?

Galbūt taip. Spragos yra PHP, o ne CMS. Lemiamas dalykas yra tai, kokią PHP versiją ir veikimo režimą jūsų aplinka iš tikrųjų naudoja; WordPress atnaujinimas to nekeičia.

Ar versijos numerio pakanka, kad žinočiau, ar esu pataisytas?

Ne visada. Distribucijos ir hostingo teikėjai pataisas kartais perkelia kaip backport, ir tada numeris lieka tas pats. Patikimi įrodymai yra paketo pakeitimų žurnalas su CVE numeriais arba raštiškas jūsų teikėjo patvirtinimas.

Ar yra greitas testas, ar mano PHP versijoje yra pataisa?

Pagal PHP vadovą versija, kuri nepažįsta direktyvos memory_hard_limit_percent, yra paveikta. Testą reikia vykdyti kiekvienai PHP versijai ir veikimo režimui atskirai, nes komandinė eilutė gali naudoti kitą versiją nei žiniatinklio serveris.

Ar paveiktos ir senesnės PHP versijos, pavyzdžiui, 7.4 ar 8.0?

Pagal specializuotą spaudą paveiktos beveik visos versijos iki pat PHP 5.4. 8.1 ir senesnėms PHP projektas oficialių atnaujinimų nebeteikia, yra tik minimalūs atgaliniai pataisų perkėlimai šaltinio kode. Ar teikėjas juos įdiegė, jis turi patvirtinti.

Ar Cloudflare mane apsaugo, jei esu paveiktas?

Iš dalies. Cloudflare įdiegė apsaugos taisykles, bet pats perspėja, kad jos neatstoja atnaujinimo. Jei jūsų origin serveris pasiekiamas tiesiogiai, apsauga apeinama.

Šaltiniai

Skubus kontaktas

Kiekviena valanda svarbi. Parašykite mums dabar.

Trumpai aprašykite sistemą, PHP versiją ir pastebėjimus. Mes atsakysime, išsiaiškinsime padėtį ir dirbsime nuotoliu, kol incidentas bus užbaigtas ir dokumentuotas.

Skubi pagalba