PHP2Shell: kaksi kriittistä PHP-haavoittuvuutta, vuotanut julkaisukielto ja mitä haavoittuvuuksien hyödyntämisestä todella tiedetään
PHP toimitti hätäkorjauksia kahteen kriittiseen etäkoodin suoritusvirheeseen, CVE-2026-109618 ja CVE-2026-109619, joita kutsutaan nimellä PHP2Shell.
PHP toimitti hätäkorjauksia kahteen kriittiseen etäkoodin suoritusvirheeseen, CVE-2026-109618 ja CVE-2026-109619, joita kutsutaan nimellä PHP2Shell. Julkaisu tapahtui 21. lokakuuta 2026. Jakso selittää kaksi muistivirhettä selkokielellä, miksi vuoden 2024 tarkastuksen vihje odotti korjausta, miten tietovuoto tapahtui, ja mitä lähteet sanovat hyväksikäytöstä. Se kattaa myös GitLabin samana päivänä julkaistun kriittisen korjauspäivityksen ja 25 miljardin dollarin Meta-sakkomääräyksen New Mexicossa.
Lue kirjoitettu versio (englanniksi) ↗
Mitä tämä video käsittelee
- PHP-tiimi on arvioinut molemmat haavoittuvuudet arvoon 9.2 CVSS v4.0:n mukaan. Korjatut versiot ovat PHP 8.2.35, 8.3.36, 8.4.27 ja 8.5.12; PHP 7.4, 8.0 ja 8.1 saivat vain lähdekoodikorjauksia. PHP sanoo, että päivittäminen on ainoa täydellinen korjaus.
- Ensimmäinen virhe johtuu siitä, että PHP jättää pyynnön puolivalmiiksi, kun muisti loppuu väärällä hetkellä. Toinen johtuu jäljelle jääneestä osoittimesta yhden pyynnön muistiin, jota sama työntekijä voi käyttää myöhemmässä pyynnössä. Apache-palvelimella mod_php:n kanssa ensimmäinen polku suoritetaan ennen sovelluskoodia.
- PHP:n ydinohjelmoija löysi ensimmäiset merkit muistiongelmasta vuoden 2024 auditoinnin aikana. PHP Foundation sanoo, että kilpailevissa korjauksissa oli kompromisseja ja konsensukseen perustuva tietoturvatiimi kamppaili valinnan kanssa, mitä se kutsuu rakenteelliseksi epäonnistumiseksi.
- Säätiö sanoo, että CVE-tunnukset vuotivat 20. lokakuuta, Calif julkaisi vahingossa "proof-of-concept"-videon, ja Chainguard julkaisi korjatut valmiit kuvat yli kuusi tuntia ennen julkaisua. Chainguardin toimitusjohtaja sanoo, että ihmisiä oli jo isketty ja että hän löysi virheet itsenäisesti.
- Lähteet ovat eri mieltä hyödyntämisestä. Amazon kirjasi yrityksen 17. lokakuuta ja sanoi myöhemmin, että PHP2Shellia hyödynnettiin laajasti. watchTowr raportoi hyödyntämisestä luonnossa. CISA ei ollut havainnut hyödyntämistä julkaisuhetkellä, ja PHP-tiimi ei löytänyt toimivaa hyödyntämiskoodia julkaisun yhteydessä. Monien julkisten "proof-of-concept"-skriptien raportoidaan olevan toimimattomia.
- Tarkista kaikki paikat, joissa PHP toimii, mukaan lukien muiden ohjelmistojen sisällä olevat kopiot, päivitä, käynnistä työntekijät uudelleen ja tarkista lokit 17. lokakuuta asti.
Kysymyksiä ja vastauksia
Mitkä ovat kaksi PHP2Shell-haavoittuvuutta?
PHP2Shell nimeää kaksi kriittistä PHP-haavoittuvuutta, CVE-2026-109618 ja CVE-2026-109619, molemmat PHP-tiimin arvioiman 9.2 arvoiset. Ensimmäinen jättää pyynnön puolivalmiiksi, kun PHP:n muisti loppuu väärällä hetkellä, ja siivous luottaa siihen. Toinen jättää osoittimen yhden pyynnön muistiin, jota sama työntekijä voi käyttää myöhemmässä pyynnössä. Molemmat voivat johtaa koodin suorittamiseen ilman kirjautumista.
Mitkä PHP-versiot on korjattu PHP2Shell-haavoittuvuuden osalta, ja entä tukemattomat versiot?
PHP-projekti julkaisi korjaukset versioihin 8.2.35, 8.3.36, 8.4.27 ja 8.5.12 21. lokakuuta. Versioille 7.4, 8.0 ja 8.1 se julkaisi vain lähdekoodikorjauksia, ja BleepingComputer raportoi, että jakelijat ja pitkäaikaisen tuen toimittajat saattavat toimittaa takaisinportattuja korjauksia. PHP sanoo, ettei täydellistä kiertoratkaisua ole, joten päivitys tai korjatun paketin pyytäminen toimittajalta on ainoa turvallinen vaihtoehto.
Miksi tunnettu PHP-muistivirhe odotti lokakuuhun 2026 ennen korjaamista?
PHP Foundation sanoo, että ydinkehittäjä löysi ensimmäiset merkit muistiongelmasta vuoden 2024 tietoturva-auditoinnin aikana, mutta hyväksikäyttöpolkua ei tunnettu ja jokaisella korjausehdokkaalla oli kompromisseja, kuten yhteensopivuusongelmia. Tietoturvatiimi päättää konsensuksella ja kamppaili valinnan kanssa, mitä säätiö kutsuu rakenteelliseksi epäonnistumiseksi, joka johtui sen päätöksentekoprosessista ja resurssien puutteesta.
Hyödynnetäänkö PHP2Shellia, ja kuinka helppoa se on hyväksikäyttää?
Lähteiden tiedot vaihtelevat. Amazon kirjasi hyväksikäyttöyrityksen 17. lokakuuta ja totesi myöhemmin, että PHP2Shellia hyödynnettiin laajalti, ja watchTowr raportoi hyväksikäytöstä luonnossa. CISA ei ollut havainnut hyväksikäyttöä julkaisuhetkellä, eikä PHP-tiimi havainnut toimivaa hyväksikäyttöä julkaisun yhteydessä. watchTowr sanoo, että useimmat julkiset hyväksikäyttöskriptit kaatuvat tai eivät tee mitään, ja VulnCheck havaitsi, että koodin suorittaminen toimii vain tietyissä asetuksissa.
Mikä oli The Daily Diftin tuomio PHP2Shellistä?
The Daily Diffin tuomio oli SHIP IT: lähetä PHP-päivitys tänä iltana, koska uusi versio on ainoa täydellinen korjaus. CISA kehottaa inventoimaan kaikki PHP:tä käyttävät järjestelmät, mukaan lukien muut ohjelmistot, asentamaan korjauksen ja ottamaan PHP-järjestelmät offline-tilaan, jos niitä ei voida päivittää. Amazon neuvoo tarkistamaan lokit 17. lokakuuta alkaen, jolloin se havaitsi ensimmäisen yrityksen.
Käännetty transkriptio
Käännetty alkuperäisestä englanninkielisestä selostuksesta. Käytettävissä olevan äänen ja tekstitysten hallinta tapahtuu YouTuben kautta.
Kuka kokeili PHP2Shellia neljä päivää etuajassa?
0:00 Tietoturvan julkaisukiellon on tarkoitus pitää virhe hiljaisena, kunnes korjaus julkaistaan. Amazon kirjasi yrityksen PHP:n kriittiseen virheeseen neljä päivää etuajassa. Tässä videossa, kuka löysi sen? Miten julkaisukielto vuoti? Ja kuinka paha se todella on? Ja vuodosta syytetyllä yrityksellä on puolustus, jota en odottanut. Pääsen siihen. On torstai, lokakuun kahdeskymmeneskahdes, ja tämä on The Daily Diff.
0:21 PHP on skriptikieli, joka rakentaa verkkosivuja palvelimella juuri ennen kuin ne saavuttavat sinut. Se on yli kolmekymmentä vuotta vanha ja yhden arvion mukaan käyttää noin seitsemänkymmentä prosenttia verkkosivustoista, mukaan lukien WordPress ja Wikipediaa tukeva ohjelmisto. Kehittäjät rakastavat pilkata sitä, yleensä sivulta, jota PHP heille palvelee. Sen ylläpito on voittoa tavoittelematon, ja sillä on noin kolmetoista insinööriä.
Mitä kaksi PHP2Shell-virhettä ovat?
0:41 Keskiviikkona PHP julkaisi hätäkorjaukset kahdelle kriittiselle haavoittuvuudelle, jotka sallivat tuntemattoman henkilön suorittaa koodia palvelimella ilman kirjautumista. Yhdessä niitä kutsutaan PHP2Shelliksi, ja ne ulottuvat PHP viiteen piste neljään. Tässä on ensimmäinen virhe selkein sanoin. PHP antaa jokaiselle pyynnölle muistibudjetin. Jos pyyntö saavuttaa tämän rajan juuri väärällä hetkellä, PHP poistuu kiireesti ja jättää pyynnön puolivalmiiksi. Sitten siivousvaihe luottaa puolivalmiiseen asiaan.
1:07 Toinen virhe on jäänne. Kohtalokas virhe voi jättää muistiin viitteen, joka osoittaa edelliseen pyyntöön kuuluneeseen muistiin. Sama työntekijä käsittelee seuraavan pyynnön ja seuraa viitettä. Siihen mennessä joku toinen asuu kyseisessä osoitteessa. Apachella mod PHP:n kanssa vahinko tapahtuu ennen oman koodisi suorittamista, joten kirjautumissivusi ei koskaan saa äänestää. Wiz sanoo, että jopa "hello world" -skripti on alttiina. Korjaus poistaa PHP:n hätäpoistumisen muistin loppumisen vuoksi.
1:32 Sen sijaan, että PHP poistuisi kesken pyynnön, se pysähtyy nyt kohteliaasti seuraavassa turvallisessa kohdassa. Outoa on, kuinka vanha ensimmäinen vihje on.
Miksi tunnettu virhe odotti kaksi vuotta?
1:39 Vuonna 2024 ulkoinen tietoturvatarkastus johti PHP:n ydinkehittäjän ensimmäisiin merkkeihin muistiongelmasta. Mitään hyväksikäyttöä ei tunnettu, ja jokainen korjaus rikkoi jotain. Konsensuksella päättävä tiimi ei osannut valita, joten virhe odotti. Sitten elokuussa löytäjät saapuivat päivien sisällä.
Kuka löysi PHP2Shellin ja miten?
1:56 Calif-tutkija Ryan Austin löysi sen 1. elokuuta, työskennellen OpenAI:n Patch the Planet -ohjelman kautta. OpenAI raportoi saman perimmäisen syyn itsenäisesti. Wiz löysi variantteja muutamaa viikkoa myöhemmin Geminin ja GPT-mallien avulla. Austin sanoo käyttäneensä malleja, joita kuka tahansa voi saada, sekä teoriaa siitä, missä PHP:n vanhat virheet piilevät. OpenAI sanoo, että edistynyt tekoäly oli avainasemassa. Virhe oli piillyt yli vuosikymmenen. Julkaisu oli suunniteltu torstaiksi.
Miten PHP2Shellin julkaisukielto vuoti?
2:21 Tiistaina kaksi CVE-numeroa alkoivat levitä verkossa, väärällä julkaisuajalla ja väärällä arvosanalla kymmenen. PHP aikaisti julkaisua yhdellä päivällä. Samana iltana Calif julkaisi vahingossa videon proof of concept -demonstraatiostaan toiminnassa, ja kopiot selvisivät poistamisesta. Keskiviikkoaamuna, yli kuusi tuntia ennen julkaisua, Chainguard julkaisi korjauksen sisältävät valmiit kuvat. PHP sanoo, että kuka tahansa hyökkääjä olisi voinut tutkia tuota korjausta samalla kun kaikki muut odottivat.
2:46 Korjaus on myös ero, ja hyökkääjät lukevat eroja.
Hyödynnetäänkö PHP2Shellia ja kenen toimesta?
2:50 Kuka siis todella on joutunut iskun kohteeksi? Amazonin hunajapurkki kirjasi yrityksen 17. lokakuuta ja sanoi myöhemmin, että PHP2Shellia hyödynnetään laajasti. watchTowr raportoi hyödyntämisestä luonnossa. Cisa sanoi, ettei se ollut havainnut mitään julkaisun aikaan, ja PHP:n tiimi ei nähnyt toimivaa hyödyntämistä julkaisun yhteydessä. Cloudflaren toimitusjohtaja sanoi, että se näki tuhansia yrityksiä kymmenen tunnin aikana ennen ilmoitusta, ja miljoonia torstaiaamuun mennessä.
3:13 Amazon on varovainen yhdessä asiassa. Se ei tiedä, olisivatko sen varhaisimmat yritykset toimineet todellisessa järjestelmässä. Yritys on vain koputus oveen. Kuinka paha se siis todella on? watchTowr sanoo, että julkisesti leviävät hyökkäykset enimmäkseen kaatavat tai eivät tee mitään. VulnCheck sanoo, että koodin suorittaminen toimii joissakin asetuksissa, eikä yksikään julkisista voita muistin satunnaistamista tavallisilla x86-palvelimilla. Tutkija Elias Taylor sanoo, ettei se ole läheskään niin helppoa kuin Log4Shell.
3:40 Kaikki sanovat edelleen, että paikataan. Hallitukset eivät odottaneet tuomiota.
Mitä hallitukset ottivat pois verkosta?
3:44 NSA kehotti organisaatioita, jotka eivät voineet paikata, ottamaan PHP-järjestelmät offline-tilaan, ja Ison-Britannian National Cyber Security Centre antoi vastaavanlaisia neuvoja. Hollantilaiset sivustot, mukaan lukien kansallinen digitaalinen identiteettipalvelu, pimentyivät, samoin kuin Pariisin poliisisivusto. Wikimedia otti useita järjestelmiä alas varotoimenpiteenä. Palo Alto Networks laski yli kaksikymmentäkaksi miljoonaa altistunutta instanssia. Ja australialainen professori esitti terävimmän huomion. Huolta aiheuttavat sivustot ovat ne, jotka eivät ole poissa käytöstä tänään.
Mitkä PHP-versiot saavat korjauksen?
4:11 Korjauksia on olemassa PHP kahdeksan piste kahdesta kahdeksaan piste viiteen. Seitsemän piste neljään, kahdeksan piste nollaan ja kahdeksan piste yhteen, PHP julkaisi vain lähdekoodikorjauksia. Vanhemmat versiot eivät saa mitään PHP-projektilta, joten kysy jakelijaltasi. Kiireelliset ratkaisut pienentävät todennäköisyyttä, mutta PHP sanoo, että päivittäminen on ainoa täydellinen korjaus. Se on sama oppi kuin eilisen eMudhra-jaksossa,
Mitä teet PHP2Shellin suhteen tänä iltana?
4:32 koska korjauksen olemassaolo ei tarkoita, että käynnissä olevassa prosessissa se olisi. Etsi kaikki PHP-esiintymät pinostasi, jopa toisten ohjelmistojen sisällä piilevät kopiot. Päivitä, käynnistä työntekijät uudelleen ja tarkista lokit 17. lokakuuta asti. Samana päivänä GitLab julkaisi kriittisen korjausversion,
Mitä muuta kriittisen RCE-korjauksen sai tänään?
4:47 yhdeksäntoista piste viisi piste yksi. Sen kokonaisluvun ylivuoto säännöllisen lausekkeen kääntäjässä antaa todentamattomalle käyttäjälle mahdollisuuden suorittaa koodia palvelimella, ja sen pisteet ovat kymmenen kymmenestä. GitLab.com on jo korjattu. Itse hallinnoitavat asennukset tarvitsevat päivityksen.
Miksi Meta määrättiin maksamaan 25 miljardia dollaria?
5:01 Samaan aikaan New Mexicossa tuomari määräsi Metan maksamaan 25 miljardia dollaria sakkoina Cambridge Analytican tapauksesta. Valamiehistö laski yli 43 miljoonaa rikkomusta, joista jokainen oli enintään viisi tuhatta dollaria, mikä oli noin 220 miljardia ennen kuin tuomari leikkasi sitä. Meta sanoo voittavansa valituksessa. Nyt lupaukseni puolustus.
Mikä on Chainguardin puolustus aikaiselle korjaukselle?
5:19 Chainguardin toimitusjohtaja kertoi The Registerille, että hän löysi samat virheet itse perjantai-iltana, saatuaan tietää, että PHP:hen oli tulossa jotain, yksinkertaisella kehotteella löytää pahoja haavoittuvuuksia. Hän sanoo julkaisseensa aikaisin, koska ihmisiä oli jo isketty. Jos haluat mieluummin lukea tämän kuin kuulla minun sanovan sen, ero laskeutuu postilaatikkoosi joka aamu, ilmaiseksi osoitteessa the daily diff dot dev, linkki alla. Joten tämän päivän tuomio on SHIP IT.
Mikä saa SHIP IT -leiman?
5:39 Lähetä PHP-päivitys tänä iltana, koska uusi versionumero on ainoa täydellinen korjaus. Ja siinä tämän päivän ero. Olen Niko Axrisista. Yhdistä vastuullisesti.
Lähteet
- Today's PHP Security Release, and How We're Strengthening PHP SecurityThe PHP Foundation
- RCE via OOM corruption (GHSA-w8hw-w9fx-j79w)PHP security advisory
- RCE via stale global state (GHSA-6wmf-4rv5-p3rp)PHP security advisory
- Upcoming Critical PHP Security Releasephp.net
- php2shellCalif
- PHP2Shell: AI uncovers critical RCE vulnerabilities affecting 70% of the InternetWiz Research
- Amazon Threat Intelligence identifies PHP2Shell exploitation prior to public disclosure in MadPotAWS Security Blog
- Critical Vulnerabilities in PHP Require Immediate PatchingCISA
- Flaw in PHP computer language leads to shutdown of websites around worldThe Guardian
- What is PHP, and how bad is the computer language flaw causing website shutdowns globally?The Guardian
- PHP2Shell Exploitation Started Days Before PatchesSecurityWeek
- PHP2Shell: Responding to CVE-2026-109618 and CVE-2026-109619Tanium
- There isn't an easy exploit for this PHP vulnerabilityElias Taylor
- PHP blames supply chain security biz Chainguard for putting entire web at riskThe Register
- PHP2Shell: 22M exposed servers at risk as emergency patches releasedTechTarget
- PHP ships emergency patches for critical PHP2Shell flawsBleepingComputer
- GitLab Critical Patch Release: 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10, 18.11.13GitLab
- Meta ordered to pay $25 billion penalty in New Mexico Cambridge Analytica caseCNBC
- Tell HN: 2x PHP RCE CVEs with CVSS 10.0 IncomingHacker News



