PHP przebudowało oficjalne pakiety dla Windows w wersjach od 8.2 do 8.5, aby usunąć podatność CVE-2026-111497 w bibliotece kompresji Brotli. Błąd może prowadzić do uszkodzenia pamięci, a w określonych warunkach także do wykonania kodu. Producent zaleca użytkownikom Windows instalację nowych kompilacji dostępnych na stronie pobierania PHP.
Nowe kompilacje zawierają poprawioną bibliotekę
Wydane pakiety mają oznaczenia 8.5.12-1, 8.4.27-1, 8.3.36-1 oraz 8.2.35-1. Zawierają Brotli 1.2.1, czyli wersję z poprawką bezpieczeństwa. Pięć dni wcześniej PHP opublikowało aktualizacje związane z dwiema podatnościami PHP2Shell. Nowe kompilacje korzystają z tego samego kodu PHP, dlatego tamte poprawki pozostają w mocy. Sama wersja PHP się nie zmieniła, więc polecenie php -v może pokazywać ten sam numer przed aktualizacją i po niej. Nowe wydanie można rozpoznać po oznaczeniu -1 w nazwie pliku oraz po sumie SHA-256 podanej na stronie pobierania.
Ryzyko dotyczy automatycznego rozpakowywania odpowiedzi HTTP
Według PHP podatność można osiągnąć przez rozszerzenie cURL, gdy automatycznie rozpakowuje ono skompresowane odpowiedzi HTTP. Funkcja ta jest domyślnie wyłączona w samym cURL, ale mogą ją włączać aplikacje oraz biblioteki klientów HTTP. Dotyczy to między innymi Guzzle, popularnej biblioteki dla PHP, która w opisanych wydaniach domyślnie uruchamia obsługę automatycznego dekodowania przy korzystaniu z cURL. W praktyce podatna aplikacja może przetwarzać odpowiedź przygotowaną przez serwer, z którym się łączy. Szczegóły zależą od konfiguracji konkretnego programu.
Google oceniło podatność na 9,2 w skali CVSS 4.0 i zaklasyfikowało ją jako krytyczną, natomiast Red Hat przyznał jej 8,1 w skali CVSS 3.1 oraz poziom ważny. Badacze Imperva zdołali uruchomić kod przez ten błąd w jednym z oficjalnych wydań Node.js, ale potrzebowali kilku prób. PHP nie poinformowało o atakach wykorzystujących lukę. Ocena CISA z 23 października nie wskazywała na aktywne wykorzystanie, a podatność nie znajdowała się wówczas w katalogu Known Exploited Vulnerabilities. Do czasu instalacji aktualizacji bezpiecznym działaniem jest wyłączenie automatycznej dekompresji w używanych klientach HTTP, jeśli konfiguracja aplikacji na to pozwala.