CRITICAL🚩 CISA KEV⚡ EXPLOIT🇬🇧 English

CVE-2017-9841

RCE w PHPUnit — wykonanie kodu PHP przez eval-stdin.php

CVSS 9.8v3.1pub. 2017-06-27upd. 2026-04-21

Podatność w bibliotece PHPUnit umożliwia nieuwierzytelnionym atakującym zdalne wykonanie dowolnego kodu PHP (RCE) poprzez wysłanie żądania HTTP POST do pliku eval-stdin.php. Jest krytycznie groźna, ponieważ nie wymaga żadnego uwierzytelnienia ani interakcji użytkownika, a plik podatny na atak bywa publicznie dostępny w wielu wdrożeniach.

Pokaż oryginał (EN)

Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP code via HTTP POST data beginning with a "<?php " substring, as demonstrated by an attack on a site with an exposed /vendor folder, i.e., external access to the /vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php URI.

🤖 Analiza AI
Jak działa

Plik Util/PHP/eval-stdin.php w PHPUnit odczytuje dane wejściowe ze standardowego wejścia i przekazuje je do funkcji eval() bez jakiejkolwiek walidacji. Atakujący wysyła żądanie HTTP POST zawierające payload rozpoczynający się od ciągu "<?php ", który jest następnie interpretowany i wykonywany jako kod PHP po stronie serwera. Warunkiem koniecznym do przeprowadzenia ataku jest dostępność katalogu /vendor z zewnątrz, co zdarza się w przypadku błędnie skonfigurowanych aplikacji webowych, w których biblioteki deweloperskie nie są odizolowane od środowiska produkcyjnego.

Skutki

Atakujący może zdalnie wykonać dowolny kod PHP z uprawnieniami procesu serwera WWW, co w praktyce oznacza możliwość pełnego przejęcia kontroli nad serwerem, kradzieży danych, instalacji backdoorów lub dalszego lateral movement w sieci.

Mitygacja

Należy zaktualizować PHPUnit do wersji 4.8.28 lub nowszej (dla gałęzi 4.x) albo do wersji 5.6.3 lub nowszej (dla gałęzi 5.x). Niezależnie od aktualizacji należy zablokować zewnętrzny dostęp do katalogu /vendor w konfiguracji serwera WWW (np. przez reguły w .htaccess lub konfiguracji nginx). Biblioteki deweloperskie nie powinny być wdrażane w środowiskach produkcyjnych.

Kogo dotyczy

PHPUnit w wersjach przed 4.8.28 oraz w gałęzi 5.x przed 5.6.3; podatność dotyczy również produktu Oracle Communications Diameter Signaling Router zawierającego komponent PHPUnit

Uwagi

Podatność jest aktywnie eksploatowana in-the-wild — figuruje w katalogu CISA KEV. Wektor ataku zakłada błąd konfiguracyjny po stronie wdrożenia (publiczny dostęp do katalogu /vendor), co jest częstym problemem w aplikacjach PHP opartych na Composer.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Oracle Communications Diameter Signaling Router

    APP
    Oracle
    8.0.0 – 8.5.0
  • Phpunit Project Phpunit

    APP
    Phpunit Project
    ≤ 4.8.275.0.0 – 5.6.3 (bez)

CISA KEV — szczegółyi

Dostawcai
PHPUnit
Produkti
PHPUnit
Data dodania do KEVi
15 lutego 2022
Termin remediation (USA)i
15 sierpnia 2022(po terminie)
Wymagana akcja (CISA)i

Zastosuj aktualizacje zgodnie z instrukcjami producenta.

tłumaczenie AI
Pokaż oryginał (EN)

Apply updates per vendor instructions.

Opis CISAi

PHPUnit pozwala zdalnym atakującym na wykonanie dowolnego kodu PHP poprzez dane HTTP POST rozpoczynające się podciągiem "<?php ", co zostało wykazane w ataku na witrynę z eksponowanym folderem /vendor, tj. zewnętrzny dostęp do URI /vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php.

tłumaczenie AI
Pokaż oryginał (EN)

PHPUnit allows remote attackers to execute arbitrary PHP code via HTTP POST data beginning with a "<?php " substring, as demonstrated by an attack on a site with an exposed /vendor folder, i.e., external access to the /vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php URI.

🔴
NATYCHMIASTOWE DZIAŁANIE
Aktywnie wykorzystywane w atakach (CISA KEV). Załataj jak najszybciej.
CISA DEADLINE: 15 sierpnia 2022
CWE
Referencje

Powiązane podatności

CVE-2020-2555CRITICAL9.8⚠ KEVPL ✓ten sam produkt

RCE przez deserializację w Oracle Coherence via protokół T3

CVE-2021-21783CRITICAL9.8PL ✓ten sam produkt

RCE w pluginie WS-Addressing biblioteki Genivia gSOAP

CVE-2020-11998CRITICAL9.8PL ✓ten sam produkt

Apache ActiveMQ — RCE przez błędną konfigurację JMX RMIConnectorServer

CVE-2020-11973CRITICAL9.8PL ✓ten sam produkt

Apache Camel Netty — niebezpieczna deserializacja Java (RCE)

CVE-2020-11972CRITICAL9.8PL ✓ten sam produkt

Apache Camel RabbitMQ — niebezpieczna deserializacja Java (RCE)