# RHEL, AlmaLinux ir Rocky Linux: PHP pataisos patikra

> PHP pataisos patikra RHEL, AlmaLinux ir Rocky: ką Red Hat praneša dėl PHP2Shell, kaip užklausti errata, pakeitimų žurnalą ir modulius bei teisingai paleisti iš naujo.

Šaltinis: https://phpsos.de/lt/blog/rhel-almalinux-rocky-php/  
Būsena: 2026-10-25  
Teikėjas: PHP SOS, PHP avarinė pagalba ir serverio sauga. Skubi pagalba per „WhatsApp“: https://wa.me/491736494914?text=Sveiki%2C%20PHP%20SOS%2C%20mums%20reikia%20pagalbos%20su%20m%C5%ABs%C5%B3%20PHP%20serveriu.%20%C4%AEmon%C4%97%3A%20%E2%80%A6%20Svetain%C4%97%3A%20%E2%80%A6

**Trumpai:** RHEL, AlmaLinux ir Rocky Linux PHP pataisą nuo PHP2Shell tikrinate trimis keliais: distribucijos saugumo pranešimais (`dnf updateinfo`), paketo pakeitimų žurnalu (`rpm -q --changelog`) ir PHP procesų paleidimo laiku. Red Hat nurodo RHEL 7–10 kaip paveiktus ir peržiūros metu pranešė, kad dalis atnaujinimų prieinama, kiti rengiami. Po atnaujinimo galioja: paleisti visiškai iš naujo, o ne tik perkrauti.

## Ką Red Hat paskelbė dėl PHP2Shell

Red Hat dėl PHP2Shell išleido saugumo biuletenį RHSB-2026-013. Peržiūrėjome jį 2026 m. spalio 25 d. Svarbiausi punktai administratoriams:

- **Paveikti** yra RHEL 10, 9, 8 ir 7 bei ant jų paremti produktai ir konteineriai RHEL ar UBI atvaizdų pagrindu.
- **RHEL 7** pasak Red Hat paveiktas tik CVE-2026-109619; kodo CVE-2026-109618 ten esą nėra.
- **Nepaveiktos** yra sistemos be PHP arba su PHP, kuris neapdoroja nepatikimų HTTP užklausų.
- **Atnaujinimai:** Kai kurie peržiūros metu buvo prieinami, kiti rengiami. Konkrečių errata numerių biuletenis nenurodė, o nukreipė į errata puslapius.

Red Hat CVE-2026-109618 vertina savo metodu kaip „Important“ ir nurodo, kad standartiniai diegimai nuo RHEL 8 naudoja PHP-FPM, o ne mod_php. Tai vertinimas, o ne atoslūgis. PHP projektas abi spragas vertina CVSS v4.0 9,2 balo, o BSI rekomenduoja nedelsiant atnaujinti.

## AlmaLinux ir Rocky Linux: tas pats šaltinis, savas tempas

AlmaLinux ir Rocky Linux savo paketus perkompiliuoja iš Red Hat šaltinių. Taisymai todėl paprastai turinio požiūriu ateina tokie patys, bet savu laiku ir su savais saugumo pranešimais. Nuoroda į Red Hat errata nereiškia, kad paketas jūsų kopijoje paruoštas tą pačią dieną.

Todėl lemia būsena jūsų sistemoje. Tikrinkite ją paketų valdymo įrankiais, o ne pagal naujienas ar forumus.

Taip pat atkreipkite dėmesį, ar serveryje naudojami veidrodiniai serveriai ar vidinės paketų saugyklos. Daugelyje įmonių serveriai atnaujinimus gauna ne tiesiogiai iš gamintojo, o per vidinį veidrodį ar valdymo įrankį. Jei šis veidrodis neaktualus, `dnf` naujų paketų neranda, nors jie seniai paskelbti.

## PHP pataisos patikra RHEL ir kopijose

Toliau pateiktos komandos tik skaito. Paketų pavadinimai galioja distribucijos PHP paketams; paketai iš trečiųjų šaltinių, tokių kaip Remi, kartais vadinasi kitaip.

```bash
# Kokias PHP srautus (stream) sistema pažįsta, kuris aktyvus? (RHEL 8 ir 9)
dnf module list php

# Įdiegti PHP paketai su versija ir kilme
rpm -qa 'php*' --qf '%{NAME}-%{VERSION}-%{RELEASE}  %{VENDOR}\n' | sort

# Ar šiai sistemai yra saugumo pranešimų apie šias CVE?
dnf updateinfo list --cve CVE-2026-109618
dnf updateinfo list --cve CVE-2026-109619

# Ar taisymas nurodytas įdiegto paketo pakeitimų žurnale?
rpm -q --changelog php-fpm | grep -E "CVE-2026-10961[89]"
```

`dnf updateinfo` rodo tik pranešimus apie dar neįdiegtus atnaujinimus; su `--installed` matote ir jau įdiegtus. Tuščias rezultatas todėl gali reikšti dvi galimybes: atnaujinimas jau įdiegtas arba dar nepaskelbtas. Pakeitimų žurnalo palyginimas tai išsprendžia. Kaip rezultatą užfiksuoti kaip įrodymą, aprašo straipsnis [CVE numerių įrodymas paketo pakeitimų žurnale](https://phpsos.de/lt/blog/cve-im-changelog-nachweisen/).

Kaip ir kitose įmonių distribucijose, paketas dažniausiai išlaiko pradinę PHP versiją; keičiasi tik išleidimo (release) žyma. Senesnis numeris `php -v` išvestyje todėl nėra trūkstamo taisymo požymis. Bendrus nurodymus dėl versijos tikrinimo rasite skyrelyje [Kaip teisingai patikrinti PHP versiją ir pataisų būseną](https://phpsos.de/lt/php2shell/php-version-pruefen/).

## Teisingo veikimo režimo atpažinimas

Red Hat nurodo standartinius veikimo režimus: nuo RHEL 8 PHP veikia per PHP-FPM, RHEL 7 kaip mod_php Apache paslaugoje `httpd`. Daug serverių nuo to nukrypsta, pavyzdžiui, dėl valdymo skydelių, trečiųjų šaltinių ar senų konfigūracijų.

| Sistema | Standartas pagal Red Hat | Paleidimas iš naujo po atnaujinimo |
|---|---|---|
| RHEL 8, 9, 10 ir kopijos | PHP-FPM | `systemctl restart php-fpm` |
| RHEL 7 | mod_php httpd | `systemctl restart httpd` |
| Konteineriai RHEL ar UBI pagrindu | pagal atvaizdą | Iš naujo sukurti atvaizdą, pakeisti konteinerį |

Konteineriams Red Hat rekomenduoja po atnaujintų bazinių atvaizdų iš naujo sukurti savus atvaizdus ir pakeisti veikiančius konteinerius ar pod. Atnaujinimas veikiančiame konteineryje nėra patikimas kelias.

## Po atnaujinimo: paleidimas iš naujo ir kontrolė

Red Hat pabrėžia, kad perkrovimo (reload) nepakanka. Esami worker gali išlaikyti paveiktą būseną. Todėl iš naujo paleiskite kiekvieną paslaugą, kuri įkelia PHP, ir patikrinkite rezultatą:

```bash
# Rodyti paslaugas su pasenusiomis bibliotekomis (dnf-utils arba dnf-plugins-core)
needs-restarting -s

# Palyginti PHP procesų paleidimo laiką su atnaujinimo laiku
ps -eo pid,lstart,cmd | grep -E "[p]hp-fpm|[h]ttpd"
```

Dėl konfigūracijos Red Hat turi praktinį pastebėjimą: `php -i` rodo komandinės eilutės, o ne žiniatinklio serverio nustatymus. Kas nori patikrinti, ar pereinamosios reikšmės, tokios kaip `session.upload_progress.enabled=0`, veikia žiniatinklio kontekste, trumpam naudoja apsaugotą phpinfo puslapį ir po to jį ištrina. Į ką dar atkreipti dėmesį paleidžiant iš naujo, rasite skyrelyje [PHP-FPM ir visų worker paleidimas iš naujo](https://phpsos.de/lt/php2shell/php-fpm-neustart/).

## Pereinamosios priemonės: Red Hat nurodymai

Kur atnaujinimo dar nėra, Red Hat nurodo tas pačias pereinamąsias priemones kaip php.net ir prideda keletą praktinių nurodymų RHEL sistemoms. Jos atnaujinimo nepakeičia.

- **Eilutę tikrai įrašyti:** Pasak Red Hat, eilutė `session.upload_progress.enabled` pateiktoje konfigūracijoje užkomentuota, t. y. funkcija pagal nutylėjimą aktyvi. Reikšmė `0` turi būti nustatyta aiškiai.
- **Nustatyti taip, kad nebūtų perrašoma:** per `php_admin_value` PHP-FPM baseine, esant mod_php Apache konfigūracijoje. Ne per `ini_set()` ar `.user.ini`.
- **Ieškoti priešininkų:** Red Hat rekomenduoja tikrinti `.htaccess` failus, VirtualHost ir `.user.ini` failus, ar jie neįjungia paveiktų nustatymų atgal.
- **Ribas nustatyti ir prieš tai:** Be `post_max_size` PHP, Red Hat pataria apsvarstyti užklausos dydžio ribas ir žiniatinklio serveryje ar tarpiniame serveryje.

PHP-FPM sistemose baseinai paprastai yra aplanke `/etc/php-fpm.d/`. Po kiekvieno pakeitimo galioja tas pats kaip po atnaujinimo: visus worker visiškai paleisti iš naujo.

> **Patarimas:**
> Jei tame pačiame serveryje papildomai veikia PHP iš Remi saugyklos, jam galioja savi paketai ir paslaugos. Perskaitykite straipsnį [Remi saugykla](https://phpsos.de/lt/blog/remi-repository-php/).

## Kaip PHP SOS padeda konkrečiai?

- RHEL, AlmaLinux ir Rocky Linux tikriname visus PHP paketus, srautus ir trečiuosius šaltinius ir lyginame su saugumo pranešimais.
- Įdiegiame atnaujinimus, visiškai iš naujo paleidžiame visus worker ir kontroliuojame procesų paleidimo laiką.
- Konteinerių aplinkoms iš naujo kuriame atvaizdus ir kontroliuojamai pakeičiame veikiančius egzempliorius.
- Kiekvieno serverio būseną užfiksuojame [PHP pataisų paslaugos](https://phpsos.de/lt/leistungen/php-patch-service/) įrodyme.


## Dažni klausimai

**Ar RHEL 7 paveiktas PHP2Shell?**  
Pasak Red Hat, RHEL 7 paveiktas tik CVE-2026-109619, pažeidžiamo kodo CVE-2026-109618 ten esą nėra. RHEL 7 mod_php yra standartinis veikimo režimas, kurį PHP komanda vertina kaip ypač rizikingą.

**Kodėl Red Hat spragą vertina žemiau nei php.net?**  
Red Hat naudoja savo vertinimą pagal CVSS v3.1 ir CVE-2026-109618 priskiria Important, nes išnaudojimui reikia tikslaus laiko parinkimo. php.net vertina pagal CVSS v4.0 9,2. Abi laiko galimu kodo vykdymą be prisijungimo, atnaujinimas bet kuriuo atveju būtinas.

**Ar AlmaLinux ir Rocky Linux taisymus gauna automatiškai?**  
Abi savo paketus perkompiliuoja iš Red Hat šaltinių ir skelbia savus saugumo pranešimus. Laikas gali skirtis nuo Red Hat. Todėl būseną tikrinkite savo sistemoje ir savo distribucijos pranešimuose.

**Ar po atnaujinimo pakanka systemctl reload php-fpm?**  
Ne. Red Hat aiškiai nurodo, kad perkrovimo (reload) nepakanka, nes esami worker gali išlaikyti paveiktą būseną. Iš naujo paleiskite visus worker, esant mod_php Apache paslaugą httpd.

## Šaltiniai

- [Red Hat Security Bulletin RHSB-2026-013](https://access.redhat.com/security/vulnerabilities/RHSB-2026-013)
- [Red Hat: CVE-2026-109618](https://access.redhat.com/security/cve/CVE-2026-109618)
- [php.net: saugumo pranešimai](https://www.php.net/)
