Viegla iespēja PHP ievainojamība potenciāli ļauj kompromitēt jebkuru PHP mājaslapu.

PHP izstrādātāji šodien plkst. 17:00 (MSK) paziņoja par steidzamu labojumu laidieniem (8.5.12, 8.4.27, 8.3.36 un 8.2.35), kuros tiks novērstas divas kritiskas ievainojamības. Visām PHP serveru administratoriem ieteicams nekavējoties ieviest labojumus savās sistēmās, tūlīt pēc to izlaišanas. Oficiāli detaļas tiks atklātas tikai pēc labojumu parādīšanās, taču, spriežot pēc publicētās informācijas, runa ir par ievainojamībām CVE-2026-109618 un CVE-2026-109619, kas potenciāli ļauj attālināti izpildīt savu kodu uz jebkura web servera, kas izpilda PHP skriptus noklusējuma konfigurācijā. Problēmas izpaužas visās versijās, sākot no PHP 5.4.

Tīklā jau ir pieejami exploit prototipi (1, 2) sistēmu ievainojamības pārbaudīšanai. Izplatītajā piezīmē apgalvots, ka ievainojamības izraisa piekļuve jau atbrīvotai atmiņai failu augšanas progresu uzraugošā apstrādātāja servera (session.upload_progress). Uz vietnes funkcionalitāte failu augšupielādei nav nepieciešama, pietiek ar automātisku aktivizēšanos PHP tulkotāja satura apstrādātājā "multipart/form-data". Lai veiksmīgi izmantotu ievainojamības, ir nepieciešama strukturālo izkārtojumu noteikšana procesa atmiņā, kas katrā izlaidumā ir specifiska (problēmu risina apstrāde explotā ar iepriekš aprēķinātiem nobīdes no dažādiem izplatījumiem).

Kā aizsargājošu risinājumu ieteicams php.ini iestatījumos norādīt parametru "session.upload_progress.enabled = off" (vai "php_admin_flag[session.upload_progress.enabled] = off" PHP-FPM), taču PHP projekta pārstāvis un pirmā exploit prototipa autors apgalvo, ka šī darbība nevar pilnībā novērst abas ievainojamības. Piezīmē par otro exploit prototipu minēts, ka, lai novērstu uzbrukumu bez labojuma, ir nepieciešama pilnīga pieprasījumu ar "multipart/form-data" satura veidu bloķēšana, kas radīs neiespējamību augšupielādēt failus, izmantojot web formas.

Apache httpd, lai bloķētu multipart pieprasījumus, var izmantot sekojošo noteikumu mod_rewrite:

RewriteCond %{HTTP:Content-Type} multipart [NC]
RewriteRule ^ — [F,L]

Lai bloķētu nginx:

if ($http_content_type ~* "multipart") {
return 403;
}

Lai bloķētu Caddy:

@multipart header_regexp Content-Type (?i)multipart
respond @multipart 403

Papildinājums: Publicēti labojuma laidieni PHP 8.5.12, 8.4.27, 8.3.36 un 8.2.35, kā arī informācija par labotajām kritiskajām ievainojamībām. Ievainojamību analīze un oficiāli ieteiktie aizsardzības apietšanas paņēmieni publicēti atsevišķā ziņojumā.

Avots: opennet.lv

Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem 🔥 Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem | ProHoster