# WAF un virtuālā ielāpošana PHP videi

> Virtuālā ielāpošana PHP videi: apvienojam WAF noteikumus ar php.net pagaidu pasākumiem, līdz atjaunināšana ir iespējama, un plānojam īsto ielāpu.

Avots: https://phpsos.de/lv/leistungen/waf-virtuelles-patching/  
Aktuāls uz: 25.10.2026  
Pakalpojuma sniedzējs: PHP SOS, PHP ārkārtas palīdzība un serveru drošība. Tūlītēja palīdzība pa WhatsApp: https://wa.me/491736494914?text=Sveiki%2C%20PHP%20SOS%2C%20mums%20nepiecie%C5%A1ama%20pal%C4%ABdz%C4%ABba%20ar%20m%C5%ABsu%20PHP%20serveri.%20Uz%C5%86%C4%93mums%3A%20%E2%80%A6%20Vietne%3A%20%E2%80%A6

**Īsi:** virtuālā ielāpošana PHP videi pārvar laiku, līdz ir instalēts īstais atjauninājums. Šim nolūkam mēs apvienojam Web Application Firewall noteikumus ar pagaidu pasākumiem, ko php.net publicējis par PHP2Shell, un uzreiz nosakām ceļu uz regulāro ielāpu. Pilnīgu aizsardzību tas nenodrošina, taču pārejas laikā samazina risku.

## Kad virtuālā ielāpošana PHP videi ir lietderīga

PHP2Shell gadījumā BSI iesaka atjaunināt nekavējoties un, ja tas nav iespējams, uz laiku atvienot tīmekļa serverus no tīkla. Daudziem uzņēmumiem neviens no variantiem nav uzreiz īstenojams: veikalam jāpaliek pieejamam, pašu izstrādātai lietojumprogrammai pirms atjauninājuma vajadzīga pārbaude, vai serveris darbojas ar PHP 8.1 un vecāku, kam oficiālu atjauninājumu vairs nav.

Šādos gadījumos virtuālā ielāpošana ir tilts. Tā neaizstāj lēmumu par to, vai piemērotāka nebūtu darbība bezsaistē. Šo izvērtējumu veicat jūs, mēs sniedzam tehnisko vērtējumu.

## Kāpēc ar WAF vien nepietiek

Cloudflare ziņoja par novērotiem uzbrukuma mēģinājumiem un ieviesa aizsardzības noteikumus, taču brīdina, ka noteikumi, kas balstīti tikai uz pieprasījuma datiem, nepietiek. Iemesls ir ievainojamību veidā. CVE-2026-109618 gadījumā Out-of-Memory stāvoklis var pārtraukt PHP, kamēr pieprasījuma dati ir inicializēti tikai daļēji. CVE-2026-109619 gadījumā iekšējais stāvoklis pēc atmiņas atbrīvošanas var saglabāties un tikt izmantots vēlākā pieprasījumā tajā pašā darbprocesā. Šādas kļūdas ir atkarīgas no servera stāvokļa, nevis tikai no viena pieprasījuma satura.

Tāpēc mēs balstāmies uz vairākiem slāņiem: WAF noteikumi pirms servera, pagaidu pasākumi pašā PHP un pastiprināta servera novērošana. Katrs slānis aptur daļu, neviens vien nepietiek. Kopā tie dod jums laiku atjauninājumu uzlikt sakārtoti.

## Pagaidu pasākumi saskaņā ar php.net

php.net min vairākus iestatījumus, kas samazina risku, tieši norādot, ka pilnīgu aizsardzību tie nenodrošina. Svarīgi, lai lietojumprogrammas šīs vērtības nevarētu pārrakstīt. Piemērs PHP-FPM pūlam ar augšupielādēm:

```ini
; PHP2Shell pagaidu pasākumi (nav pilnīga aizsardzība), pēc tam pārstartēt visus darbprocesus
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
; tikai PHP 8.5:
php_admin_flag[fatal_error_backtraces] = off
```

Bez augšupielādēm php.net iesaka `post_max_size = 8M`. Tā kā `memory_limit` tiek atcelts, klāt jānāk atmiņas ierobežojumam konteinera vai cgroup līmenī, nevis ar `RLIMIT_AS` vai `RLIMIT_DATA`. Iestatījums `session.upload_progress.enabled=0` jāliek php.ini, FPM pūlā vai servera konfigurācijā, nevis `ini_set()` vai `.user.ini`. Tas ir arī pretlīdzeklis norādei par [CVE-2026-115560](https://phpsos.de/lv/php2shell/cve-2026-115560/). Visus pasākumus pārskatāmi atradīsiet lapā [Tūlītēji pasākumi, ja vēl nevarat ielāpot](https://phpsos.de/lv/php2shell/sofortmassnahmen-ohne-patch/).

> **Svarīgi:**
> Pagaidu pasākumi darbojas tikai pēc visu PHP darbprocesu pārstartēšanas. Un tie aizsargā tikai pret turpmākiem uzbrukumiem: vai iepriekš kāds jau nav iekļuvis, tie neatbild.

## Kad darbība bezsaistē ir labāka izvēle

Virtuālā ielāpošana ne katrā situācijā ir pareizā atbilde. Dažās konstelācijās iesakām sekot BSI un uz laiku atvienot tīmekļa serveri no tīkla, līdz ielāps ir uzlikts:

- serveris darbojas ar **Apache un mod_php**, kur PHP komanda risku vērtē kā augstāko un exploit tika demonstrēts, vēl pirms tiek izpildīts lietojumprogrammas kods
- serverī atrodas **īpaši aizsargājami dati**, piemēram, veselības, klientu konfidenciālie vai maksājumu dati
- **nav iespējas** pagaidu pasākumus stingri iestatīt servera konfigurācijā, piemēram, dažās koplietošanas hostinga pakotnēs
- jau ir **pazīmes**, ka serveris ticis uzbrukts

Īslaicīga darbība bezsaistē nenozīmē, ka jūsu vietne ir uzlauzta. Daži sniedzēji piesardzības nolūkos vietnes ir atvienojuši no tīkla. Īsa, lietišķa informācijas lapa apmeklētājiem tad parasti ir labāks risinājums nekā neizskaidrots pārtraukums.

## Kā PHP SOS palīdz konkrēti?

1. **Pārbaudīt situāciju:** Mēs uzskaitām PHP versijas, darbības režīmus un esošos aizsardzības slāņus, piemēram, CDN, WAF vai reverse proxy. Mod_php gadījumā norādām uz paaugstināto risku, ko PHP komanda tur saskata.
2. **Izveidot slāņus:** Mēs aktivizējam vai papildinām WAF noteikumus, stingri iestatām pagaidu pasākumus servera konfigurācijā un ierobežojam atmiņu ar konteineru vai cgroup. Nginx risinājumiem balstāmies uz [Nginx ar PHP-FPM nodrošināšanu](https://phpsos.de/lv/server/nginx-php-fpm/).
3. **Pārstartēšana un tests:** Visi PHP procesi tiek pārstartēti, pēc tam pārbaudām augšupielādes, veidlapas, pieteikšanos un kasi.
4. **Novērot:** Pārejas laikā pastiprināti sekojam darbprocesu avārijām, atmiņas pīķiem un neparastiem procesiem.
5. **Plānot ielāpu:** Mēs nosakām, kad un kā nāk regulārais atjauninājums, un īstenojam to ar [PHP ielāpu pakalpojumu](https://phpsos.de/lv/leistungen/php-patch-service/).

## Ko jūs saņemat, ko mums vajag un ko mēs nesolām

Jūs saņemat dokumentāciju par visiem iestatītajiem noteikumiem un iestatījumiem ar pamatojumu, testu rezultātus un termiņu un pasākumu plānu īstajam ielāpam. No jums mums vajadzīga servera vai paneļa piekļuve, piekļuve CDN vai WAF, ja tāda ir, tehniska kontaktpersona un informācija par jūsu lietojumprogrammu augšupielādes funkcijām.

Mēs nesolām, ka virtuālā ielāpošana novērsīs uzbrukumu. Tā uz ierobežotu laiku samazina risku. PHP 8.1 un vecākām versijām tas nav pastāvīgs stāvoklis; šeit plānā jāiekļauj [pāreja uz atbalstītu versiju](https://phpsos.de/lv/leistungen/php-migration-legacy/).


## Biežāk uzdotie jautājumi

**Kas ir virtuālā ielāpošana?**  
Virtuālā ielāpošana nozīmē zināmu ievainojamību norobežot pirms lietojumprogrammas, nemainot pašu kodu. Tas parasti notiek ar Web Application Firewall vai konfigurācijas izmaiņām. Tas ir pārejas risinājums, nevis atjauninājuma aizstājējs.

**Vai mana CDN sniedzēja WAF pret PHP2Shell pietiek?**  
Atsevišķi parasti nepietiek. Cloudflare ir ieviesis aizsardzības noteikumus, taču pats brīdina, ka noteikumi, kas balstīti tikai uz pieprasījuma datiem, nepietiek. WAF ir papildu slānis blakus pagaidu pasākumiem un ielāpam.

**Cik ilgi drīkst paļauties uz virtuālo ielāpošanu?**  
Pēc iespējas īsāk. Tai jāpārvar laiks līdz regulārajam atjauninājumam, piemēram, līdz atbrīvojas apkopes logs vai lietojumprogramma ir pārbaudīta. PHP 8.1 un vecākām versijām klāt nāk migrācijas plāns.

**Vai pagaidu pasākumi var traucēt manu vietni?**  
Jā, tas ir iespējams. Mazāki augšupielāžu ierobežojumi var neļaut augšupielādēt lielus failus, un session upload progress izslēgšana skar augšupielādes norādes. Pēc katras izmaiņas pārbaudām svarīgākās funkcijas.

## Avoti

- [php.net: drošības paziņojumi un pagaidu pasākumi](https://www.php.net/)
- [BSI: Vācijas Federālais informācijas drošības birojs](https://www.bsi.bund.de/)
- [OWASP Top 10](https://owasp.org/www-project-top-ten/)
- [TechTarget: PHP2Shell, 22M exposed servers at risk](https://www.techtarget.com/cybersecurity/news/366652444/PHP2Shell-22M-exposed-servers-at-risk-as-emergency-patches-released)
