Praegune olukord: PHP2Shell. Kaks kriitilist PHP turvaauku (CVSS 9,2) lubavad kahjulikku koodi ilma sisselogimata. Paigad alates 21.10.2026.Mida nüüd teha →

WAF ja virtuaalne paikamine PHP jaoks

Kui PHP uuendust ei saa kohe teha, vähendame riski veebirakenduste tulemüüriga (WAF), PHP ajutiste meetmetega ja kindla plaaniga päris paiga jaoks.

Seis Lugemisaeg 4 minTeenused

Lühidalt: Virtuaalne paikamine PHP jaoks ületab aja, kuni päris uuendus on paigaldatud. Ühendame selleks veebirakenduste tulemüüri (WAF) reeglid ajutiste meetmetega, mille php.net PHP2Shelli kohta avaldas, ning määrame kohe kindlaks tee tavapärase paigani. Täielikku kaitset see ei paku, kuid vähendab riski üleminekuajal.

Millal virtuaalne paikamine PHP jaoks on mõistlik

BSI soovitab PHP2Shelli puhul kohest uuendust ja, kui see ei õnnestu, veebiserverid ajutiselt võrgust maha võtta. Paljudele ettevõtetele pole kumbki kohe teostatav: pood peab jääma kättesaadavaks, oma arendus vajab enne uuendust testi või server töötab PHP 8.1 või vanemaga, mille jaoks ametlikke uuendusi enam pole.

Neil juhtudel on virtuaalne paikamine sild. See ei asenda otsust, kas võrgust väljas olek oleks sobivam. Selle kaalumise teete teie, tehnilise hinnangu anname meie.

Miks üksi WAF-ist ei piisa

Cloudflare teatas täheldatud ründekatsetest ja on kasutusele võtnud kaitsereeglid, kuid hoiatab, et ainult päringuandmete põhjal koostatud reeglid ei piisa. Põhjus peitub turvaaukude olemuses. CVE-2026-109618 puhul võib mälupuudus (Out-of-Memory) PHP-d katkestada, kui päringuandmed on vaid osaliselt lähtestatud. CVE-2026-109619 puhul võib sisemine olek pärast mälu vabastamist alles jääda ja seda saab kasutada hilisem päring samas tööprotsessis. Sellised vead sõltuvad serveri olekust, mitte ainult üksiku päringu sisust.

Seetõttu toetume mitmele kihile: WAF-i reeglid serveri ees, ajutised meetmed PHP-s endas ja serveri tõhustatud jälgimine. Iga kiht püüab kinni osa, ükski üksi ei piisa. Koos annavad need teile aega uuendus korrapäraselt paigaldada.

Ajutised meetmed php.net-i järgi

php.net nimetab mitu sätet, mis vähendavad riski, selgesõnaliselt ilma täieliku kaitseta. Oluline on, et rakendused neid väärtusi üle kirjutada ei saa. Näide PHP-FPM-i poolist üleslaadimistega:

; PHP2Shelli ajutised meetmed (mitte täielik kaitse), seejärel käivitage kõik tööprotsessid uuesti
php_admin_value[memory_limit] = -1
php_admin_value[post_max_size] = 32M
php_admin_value[upload_max_filesize] = 30M
php_admin_flag[session.upload_progress.enabled] = off
; ainult PHP 8.5:
php_admin_flag[fatal_error_backtraces] = off

Ilma üleslaadimisteta soovitab php.net post_max_size = 8M. Kuna memory_limit tühistatakse, kuulub juurde mälupiirang konteineri või cgroupi tasandil, mitte RLIMIT_AS või RLIMIT_DATA kaudu. Säte session.upload_progress.enabled=0 kuulub php.ini-sse, FPM-i pooli või serveri seadistusse, mitte ini_set()-i ega .user.ini-sse. See on ühtlasi abinõu märkuse puhul, mis puudutab CVE-2026-115560. Kõigi meetmete ülevaade on lehel Kohesed meetmed, kui te veel paigata ei saa.

Oluline

Ajutised meetmed hakkavad mõjuma alles kõigi PHP tööprotsesside taaskäivitusega. Ja need kaitsevad ainult tulevaste rünnakute eest: kas enne on keegi juba sisse tunginud, sellele need vastust ei anna.

Millal on võrgust väljas olek parem valik

Virtuaalne paikamine ei ole igas olukorras õige vastus. Mõne olukorra puhul soovitame järgida BSI-d ja võtta veebiserver ajutiselt võrgust maha, kuni on paigatud:

  • server töötab Apache'i ja mod_php-ga, kus PHP meeskond hindab riski kõige suuremaks ja kus on näidatud ekspluateerimist enne, kui rakenduse kood üldse käivitub
  • serveris asuvad eriti kaitset vajavad andmed, näiteks terviseandmed, klientide (mandaadi) andmed või makseandmed
  • puudub võimalus ajutisi meetmeid serveri seadistuses püsivalt määrata, näiteks teatud jagatud veebimajutuse pakettide puhul
  • on juba märke, et serverit on rünnatud

Ajutine võrgust väljas olek ei tähenda, et teie veebisait on häkitud. Mõned pakkujad on veebisaite ettevaatusest võrgust maha võtnud. Lühike, asjalik teadeleht külastajatele on siis tavaliselt parem lahendus kui seletamatu rike.

Kuidas PHP SOS konkreetselt aitab?

  1. Olukorra kontroll: Kaardistame PHP versioonid, töörežiimid ja olemasolevad kaitsekihid, nagu CDN, WAF või pöördproksi. mod_php puhul juhime tähelepanu suuremale riskile, mida PHP meeskond seal näeb.
  2. Kihtide ülesehitus: Aktiveerime või täiendame WAF-i reegleid, määrame ajutised meetmed serveri seadistuses püsivalt ja piirame mälu konteineri või cgroupi kaudu. Nginxi seadistuste puhul lähtume lehest Nginxi ja PHP-FPM-i kaitsmine.
  3. Taaskäivitus ja test: Kõik PHP protsessid käivitatakse uuesti, seejärel kontrollime üleslaadimisi, vorme, sisselogimist ja kassat.
  4. Jälgimine: Üleminekuajal pöörame suuremat tähelepanu tööprotsesside kokkujooksmistele, mälupiikidele ja ebatavalistele protsessidele.
  5. Paiga planeerimine: Määrame kindlaks, millal ja kuidas tavapärane uuendus tuleb, ning viime selle ellu PHP paikamisteenuse kaudu.

Mida te saate, mida me vajame ja mida me ei luba

Saate dokumentatsiooni kõigi seatud reeglite ja sätete kohta koos põhjendusega, testitulemused ning ajakava ja meetmeplaani päris paiga jaoks. Teilt vajame server- või paneeliligipääsu, ligipääsu CDN-ile või WAF-ile, kui need on olemas, tehnilist kontaktisikut ja teavet teie rakenduste üleslaadimisfunktsioonide kohta.

Me ei luba, et virtuaalne paikamine rünnaku ära hoiab. See vähendab riski piiratud ajaks. PHP 8.1 ja vanemate puhul ei ole see püsiseisund; siin kuulub plaani üleminek toetatud versioonile.

Korduma kippuvad küsimused

Mis on virtuaalne paikamine?

Virtuaalne paikamine tähendab teadaoleva turvaaugu varjestamist rakenduse ees, mitte koodi enda muutmist. See toimub enamasti veebirakenduste tulemüüri (WAF) või seadistusmuudatuste kaudu. See on ülemineku lahendus, mitte uuenduse asendus.

Kas minu CDN-i pakkuja WAF piisab PHP2Shelli vastu?

Üksi üldjuhul mitte. Cloudflare on kasutusele võtnud kaitsereeglid, kuid hoiatab ise, et ainult päringuandmete põhjal koostatud reeglid ei piisa. WAF on täiendav kiht ajutiste meetmete ja paiga kõrval.

Kui kaua tohin virtuaalsele paikamisele loota?

Nii lühidalt kui võimalik. See peab ületama aja tavapärase uuenduseni, näiteks kuni vabaneb hooldusaken või rakendus on testitud. PHP 8.1 ja vanemate puhul kuulub juurde migratsiooniplaan.

Kas ajutised meetmed võivad mu veebisaiti häirida?

Jah, see on võimalik. Väiksemad üleslaadimispiirangud võivad takistada suurte failide üleslaadimist ja sessiooni üleslaadimise edenemise väljalülitamine mõjutab üleslaadimisel edenemisnäitajaid. Testime olulisemaid funktsioone pärast iga muudatust.

Allikad

Kohene kontakt

Iga tund loeb. Kirjutage meile kohe.

Kirjeldage lühidalt süsteemi, PHP versiooni ja tähelepanekut. Võtame teiega ühendust, selgitame olukorra välja ja töötame kaugtööna, kuni intsident on lõpetatud ja dokumenteeritud.

Kohene abi