PHP:ssä on kaksi kriittistä haavoittuvuutta, joiden avulla voidaan suorittaa koodia ilman tunnistautumista, ja Amazon kertoo havainneensa ilmeisen hyväksikäyttöyrityksen neljä päivää ennen haavoittuvuuksien julkistamista.
Miten haavoittuvuudet vaarantavat palvelimet
Haavoittuvuudet CVE-2026-109618 ja CVE-2026-109619 tunnetaan yhdessä nimellä PHP2Shell, ja ne vaikuttavat PHP:n ydinajoympäristöön. Toisessa pyynnön käsittely kuluttaa muistin loppuun PHP:n valmistellessa sisäisiä tietoja, jolloin siivousvaihe voi käsitellä niitä väärin. Toinen voi jättää vanhentuneen sisäisen tilan osoittamaan jo vapautettuun muistiin, jota sama työntekijäprosessi voi käyttää myöhemmin käsittelemässään pyynnössä.
PHP:n mukaan suurin riski liittyy Apacheen ja mod_php:hen, koska tunnistautumaton pyyntö voi käynnistää hyväksikäytön ennen sovelluskoodin suorittamista. Tutkijat osoittivat myös, että koodia voidaan suorittaa PHP-FPM:n kautta kulkevissa sovelluksissa. PHP:n mukaan kaikki verkkopyyntöjä käsittelevät asennukset ovat vaarassa, mukaan lukien PHP-FPM, Apache mod_php, php-cgi, FrankenPHP ja LiteSpeed.
Mitä pitää päivittää
Verkkosivuston sovelluksen tai sisällönhallintajärjestelmän vaihtaminen ei riitä: haavoittuvuudet ovat itse PHP:ssä, WordPressin tai Drupalin kaltaisten ohjelmistojen alla. Korjatut versiot ovat PHP 8.5.12, 8.4.27, 8.3.36 ja 8.2.35. PHP ei enää tue versiota 8.1 eikä sitä vanhempia versioita, joten niitä käyttävien organisaatioiden pitää selvittää, tarjoaako niiden käyttöjärjestelmä- tai pitkäaikaistukipalvelu korjauksen vanhaan versioon, tai siirtyä tuettuun versioon.
Cloudflaren arvion mukaan PHP:tä käytetään lähes 70 prosentilla verkkosivustoista. Tämä on arvio kielen yleisyydestä, ei haavoittuvien tai murrettujen järjestelmien määrä. Onnistunut hyökkäys voi antaa tunkeutujalle verkkopalvelimen käyttöoikeudet, minkä seurauksena tämä voi varastaa tietoja, häiritä palveluita tai käyttää palvelinta päästäkseen muualle verkkoon.
Miksi korjausten tekeminen kesti
PHP Foundationin mukaan merkkejä muistin loppumiseen liittyvästä ongelmasta havaittiin ulkopuolisessa tietoturva-auditoinnissa vuonna 2024, mutta tuolloin konkreettista hyökkäystapaa ei ollut löydetty. Ydintason muistinhallinnan korjauksiin liittyy riskejä: ylläpitäjien mukaan mahdolliset ratkaisut olisivat voineet rikkoa yhteensopivuuden, heikentää suorituskykyä tai edellyttää muutoksia PHP:n laajaan laajennusekosysteemiin. OpenAI kertoo, että Calif käytti GPT-5.6 Sol -malliaan yhden kriittisen haavoittuvuuden löytämisen apuna, kun taas Wiz löysi ja ilmoitti itsenäisesti molemmista haavoittuvuuksista. PHP:n ylläpitäjät johtivat korjaustyötä.
Julkaisusuunnitelma paineen alla
CVE-tunnisteet ilmestyivät verkkoon 20. lokakuuta, ennen kuin korjauspäivitykset olivat saatavilla. PHP aikaisti suunniteltua julkaisua 21. lokakuuta ja ilmoitti voivansa julkaista päivitykset aiemmin, jos tiedot vuotaisivat tai haavoittuvuuksien aktiivisesta hyväksikäytöstä ilmenisi merkkejä. PHP Foundation kertoi myöhemmin, että Chainguard julkaisi korjatut konttikuvat yli kuusi tuntia ennen koordinoitua julkaisua, mikä saattoi antaa hyökkääjille aikaa tutkia korjausta. Chainguardin toimitusjohtaja puolusti päätöstä ja sanoi sen olleen reaktio ilmoituksiin aktiivisesta hyväksikäytöstä.
Mitä hyökkäyksistä kertovat raportit
Amazonin MadPot-hunajapurkkiverkko tallensi ilmeisen PHP2Shell-hyökkäysyrityksen 17. lokakuuta eli neljä päivää ennen julkistamista. Amazon ei tiedä, miten hyökkääjä sai tiedot hyväksikäyttötavasta. Se raportoi lisää yrityksiä sekä ennen 21. lokakuuta tapahtunutta julkaisua että sen jälkeen, mutta kertoi, ettei se ole pystynyt varmistamaan, olisivatko varhaisimmat yritykset onnistuneet todellisissa järjestelmissä. CISA ilmoitti 21. lokakuuta julkaisemassaan tiedotteessa, ettei se ollut julkaisuhetkellä havainnut haavoittuvuuksien hyväksikäyttöä. Yritykset eivät todista, että järjestelmiin olisi murtauduttu onnistuneesti, ja raporteissa kuvataan eri aikoina tehtyjä havaintoja.
PHP voi olla piilossa konteissa, laitteissa, hosting-alustoilla tai muissa tuotteissa, minkä vuoksi sen löytäminen voi olla vaikeaa. CISA kehotti organisaatioita kartoittamaan järjestelmänsä, asettamaan internetiin näkyvät palvelimet etusijalle ja ottamaan PHP-pohjaiset palvelut pois käytöstä, jos niitä ei voida päivittää nopeasti. Verkkosovellusten palomuuri voi tarjota väliaikaista suojaa, mutta Cloudflaren mukaan se ei korvaa PHP:n päivittämistä; lisäksi hyökkääjät ovat muuttaneet hyötykuormiaan testatakseen suojauksia.
Mitä puolustajien kannattaa tehdä seuraavaksi
Amazonin mukaan haavoittuvuuksia käytetään nyt laajasti hyväksi, ja se kehottaa organisaatioita käsittelemään internetiin näkyvien järjestelmien kriittisiä korjauksia kiireellisinä sen sijaan, että ne luottaisivat viikon mittaisiin päivitysaikatauluihin. Puolustajien pitää löytää kaikki PHP-ajoympäristöt, varmistaa, että korjaus on asennettu itse ajoympäristöön eikä vain sovellukseen, ja tarkistaa lokit epäilyttävän toiminnan varalta. Koska Amazonin varhaisin havaittu yritys tapahtui ennen julkista varoitusta, organisaatioiden ei pidä olettaa riskin alkaneen vasta julkistuspäivänä.