Një dobësi në PHP që lejon ekzekutimin e kodit kur punon në modin CGI

Në PHP është zbuluar një vulnerabilitet (CVE-2024-4577), i cili lejon ekzekutimin e kodit në server ose shikimin e kodit burimor të skriptit PHP në rastin e përdorimit të PHP në modin CGI në platformën Windows (konfigurimet me mod_php, php-fpm dhe FastCGI nuk janë të prekura nga kjo vulnerabilitet). Problemi është zgjidhur në versionet PHP 8.3.8, 8.2.20 dhe 8.1.29.

Vulnerabiliteti është një rast i veçantë i një problemi të korrigjuar në vitin 2012 me kodin CVE-2012-1823, për të cilin mbrojtja e shtuar ishte e pamjaftueshme për të bllokuar sulmin në platformën Windows. Metoda e sulmit përfshin mundësinë e zëvendësimit të argumentit të komandës gjatë ekzekutimit të interpretuesit PHP përmes manipulimit të parametrave të kërkesës për skriptin PHP.

Në vulnerabilitetin e vjetër CVE-2012-1823, për ta shfrytëzuar mjaftonte të jepje opsionet e komandës në vend të parametrave të kërkesës, për shembull, "http://localhost/index.php?-s" për të treguar kodin burimor të skriptit. Vulnerabiliteti i ri bazohet në faktin se platforma Windows siguron një transformim automatik të simboleve, çka lejon që për të anashkaluar mbrojtjen e shtuar më parë të specifikosh simbole që janë të pranishme në disa kodime dhe zëvendësohen me simbolin "-" (për shembull, http://localhost/index.php?s).

Vulnerabiliteti është konfirmuar në konfigurimet me locale për kinesis traditonal kineze (cp950), kinesis të thjeshtë kineze (cp936) dhe japoneze (cp932), por nuk përjashtohet manifestimi i saj edhe me locale të tjera. Problemi shfaqet në konfigurimin e paracaktuar në paketën XAMPP (Apache + MariaDB + PHP + Perl), si dhe në çdo konfigurim tjetër Apache ku php-cgi është vendosur si përpunues CGI-skriptesh përmes konfigurimit
‘Action cgi-script «/cgi-bin/php-cgi.exe»‘ ose ‘Action application/x-httpd-php-cgi «/php-cgi/php-cgi.exe»‘, ose kur interpretuesi php Ă«shtĂ« vendosur drejtpĂ«rdrejt nĂ« «/cgi-bin» dhe nĂ« çdo katalog tjetĂ«r ku ekzekutimi i CGI-skripteve Ă«shtĂ« i lejuar pĂ«rmes direktivĂ«s ScriptAlias.

Për më tepër, në përditësimet PHP 8.3.8, 8.2.20 dhe 8.1.29 janë eliminuar edhe tre vulnerabilitete të tjera:

  • CVE-2024-5458 — mundĂ«sia pĂ«r tĂ« anashkaluar filtĂ«r
    FILTER_VALIDATE_URL, i përdorur gjatë thirrjes së funksionit filter_var.
  • CVE-2024-5585 — njĂ« vektor alternativ sulmi ndaj vulnerabilitetit CVE-2024-1874, i cili lejon anashkalimin e mbrojtjes tĂ« mĂ«parshme tĂ« shtuar dhe realizimin e zĂ«vendĂ«simit tĂ« komandave gjatĂ« thirrjes sĂ« skedave bat dhe cmd pĂ«rmes funksionit proc_open nĂ« platformĂ«n Windows (vulnerabiliteti BatBadBut).
  • DĂ«mtueshmĂ«ria e funksionit openssl_private_decrypt ndaj sulmit Marvin.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster