PHP2Shell: kaks kriitilist PHP viga, lekkinud embargo ja mis tegelikult ekspluateerimisest teada on
PHP väljastas erakorralised parandused kahele kriitilisele koodi kaugkäivituse veale, CVE-2026-109618 ja CVE-2026-109619, mida nimetati PHP2Shelliks.
PHP väljastas erakorralised parandused kahele kriitilisele koodi kaugkäivituse veale, CVE-2026-109618 ja CVE-2026-109619, mida nimetati PHP2Shelliks. Väljaanne ilmus 21. oktoobril 2026. Episood selgitab kahte mäluviga lihtsate sõnadega, miks 2024. aasta auditi vihje ootas parandust, kuidas embargo lekkis ja millised allikad ütlevad ärakasutamise kohta. Samuti käsitleb see GitLab'i samapäevast kriitilist plaastri väljalaset ja 25 miljardi dollari suurust Meta karistusmäärust New Mexicos.
Loe kirjalikku väljaannet (inglise keeles) ↗
Mida see video hõlmab
- Mõlemad vead on PHP meeskonna poolt CVSS v4.0 järgi hinnatud 9.2-ga. Parandatud versioonid on PHP 8.2.35, 8.3.36, 8.4.27 ja 8.5.12; PHP 7.4, 8.0 ja 8.1 said ainult lähtekoodi parandusi. PHP ütleb, et uuendamine on ainus täielik leevendus.
- Esimene viga tuleneb sellest, et PHP jätab päringu pooleli, kui mälu saab valel hetkel otsa. Teine tuleneb järelejäänud viidast ühe päringu mälule, mida hilisem päring samas töötajas saab kasutada. Apache'is koos mod_php-ga käivitub esimene tee enne rakenduse koodi.
- PHP tuumarendaja leidis esimesed märgid mäluprobleemist 2024. aasta auditi käigus. PHP Fond ütleb, et konkureerivatel parandustel olid kompromissid ja konsensusel põhinev turvameeskond pidi valiku tegemisega vaeva nägema, mida nad nimetavad struktuurseks veaks.
- Fond ütleb, et CVE ID-d lekkisid 20. oktoobril, Calif avaldas ekslikult "proof-of-concept" video ja Chainguard avaldas parandusega koostatud pildid rohkem kui kuus tundi enne väljalaset. Chainguard'i tegevjuht ütleb, et inimesi juba tabati ja et ta leidis vead iseseisvalt.
- Allikad on ekspluateerimise osas eriarvamusel. Amazon logis katse 17. oktoobril ja ütles hiljem, et PHP2Shell'i ekspluateeriti laialdaselt. watchTowr teatas ekspluateerimisest reaalses elus. CISA ei olnud avaldamise hetkel ekspluateerimist täheldanud ja PHP meeskond ei leidnud väljalaske ajal ühtegi toimivat ekspluataatorit. Paljud avalikud "proof-of-concept" skriptid väidetavalt ei tööta.
- Kontrolli iga koht, kus PHP töötab, sealhulgas teiste tarkvarade sees olevad koopiad, uuenda, taaskäivita töötajad ja vaata logid alates 17. oktoobrist tagasi.
Küsimused ja vastused
Mis on need kaks PHP2Shell'i haavatavust?
PHP2Shell nimetab kaht kriitilist PHP viga, CVE-2026-109618 ja CVE-2026-109619, mõlemad on PHP meeskonna poolt hinnatud 9.2-ga. Esimene jätab päringu pooleli, kui PHP-l saab valel hetkel mälu otsa, ja puhastus usaldab siis seda. Teine jätab viite ühe päringu mälule, mida hilisem päring samas töötajas saab kasutada. Mõlemad võivad viia koodi käivitamiseni ilma sisselogimiseta.
Millistel PHP versioonidel on PHP2Shell'i parandus ja mis saab toetuseta versioonidest?
PHP projekt avaldas parandused versioonides 8.2.35, 8.3.36, 8.4.27 ja 8.5.12 21. oktoobril. Versioonidele 7.4, 8.0 ja 8.1 avaldati ainult lähtekoodi parandused, ja BleepingComputer teatab, et jaotused ja pikaajalise toe müüjad võivad pakkuda tagasiülekantud parandusi. PHP ütleb, et täielikku ajutist lahendust ei ole, seega on uuendamine või müüjalt paigatud paketi küsimine ainus turvaline valik.
Miks võttis teadaoleva PHP mäluvea parandamine aega 2026. aasta oktoobrini?
PHP Fond ütleb, et tuumarendaja leidis esimesed märgid mäluprobleemist 2024. aasta turvaauditi käigus, kuid ühtegi ekspluateerimistee ei olnud teada ja iga kandidaatparandus oli kompromissidega, näiteks ühilduvusprobleemidega. Turvameeskond otsustab konsensuse alusel ja pidi valiku tegemisega vaeva nägema, mida Fond nimetab struktuurseks veaks, mis on põhjustatud nende otsustusprotsessist ja ressursside puudumisest.
Kas PHP2Shell'i ekspluateeritakse ja kui lihtne seda on ekspluateerida?
Allikad on eriarvamusel. Amazon logis ekspluateerimiskatse 17. oktoobril ja ütles hiljem, et PHP2Shell'i ekspluateeriti laialdaselt, ja watchTowr teatas ekspluateerimisest reaalses elus. CISA ei olnud avaldamise hetkel ekspluateerimist täheldanud ja PHP meeskond ei näinud väljalaske hetkel ühtegi toimivat ekspluataatorit. watchTowr ütleb, et enamik avalikke ekspluataatorskripte kukuvad kokku või ei tee midagi, ja VulnCheck leidis, et koodi käivitamine töötab ainult mõnes seadistuses.
Mis oli The Daily Diff'i otsus PHP2Shell'i kohta?
The Daily Diff'i otsus oli SHIP IT: avalda PHP uuendus täna õhtul, sest uus versioon on ainus täielik parandus. CISA ütleb, et inventeerige iga süsteem, mis käitab PHP-d, sealhulgas koopiad teiste tarkvarade sees, rakendage paik ja võtke PHP süsteemid võrguühendusest välja, kui neid ei saa uuendada. Amazon soovitab vaadata logisid tagasi kuni 17. oktoobrini, mil nad nägid esimest katset.
Tõlgitud transkriptsioon
Tõlgitud ingliskeelsest originaaljutustusest. Saadaolevat heli ja subtiitreid kontrollib YouTube.
Kes proovis PHP2Shell'i neli päeva varem?
0:00 Turvaembargo peaks hoidma vea saladuses, kuni paik on avaldatud. Amazon logis katse PHP kriitilise vea vastu neli päeva varem. Selles videos, kes selle leidis? Kuidas embargo lekkis? Ja kui halb see tegelikult on? Ja ettevõttel, mida lekkes süüdistati, on kaitse, mida ma ei oodanud. Ma jõuan selleni. On neljapäev, kakskümmend teine oktoober, ja see on The Daily Diff.
0:21 PHP on skriptikeel, mis loob veebilehti serveris vahetult enne, kui need teieni jõuavad. See on üle kolmekümne aasta vana ja ühe hinnangu kohaselt töötab see umbes seitsmekümnel protsendil veebisaitidest, sealhulgas WordPress ja tarkvara Wikipedia taga. Arendajatele meeldib seda pilgata, tavaliselt PHP poolt teenindatavalt lehelt. Selle hooldamise eest vastutab mittetulundusühing umbes kolmeteistkümne inseneriga.
Mis on need kaks PHP2Shell'i viga?
0:41 Kolmapäeval avaldas PHP hädaabiparandused kahele kriitilisele veale, mis lubavad võõral käivitada koodi serveris ilma sisselogimiseta. Koos nimetatakse neid PHP2Shell'iks ja need ulatuvad tagasi PHP viie punkt neljani. Siin on esimene viga lihtsate sõnadega. PHP annab igale päringule mälu eelarve. Kui päring saavutab selle piiri täpselt valel hetkel, PHP katkestab kiiruga ja jätab päringu pooleli. Seejärel usaldab puhastusetapp poolikult ehitatud asja.
1:07 Teine viga on jäänuk. Saatuslik viga võib jätta märkme, mis osutab mälule, mis kuulus viimasele päringule. Sama töötaja käsitleb järgmist päringut ja järgib märkust. Selleks ajaks elab sellel aadressil keegi teine. Apache'is mod PHP-ga toimub kahjustus enne teie oma koodi käivitumist, nii et teie sisselogimisleht kunagi ei hääleta. Wiz ütleb, et isegi "hello world" skript on avatud. Parandus eemaldab PHP hädaolukorra väljumise mälu otsa saamisel.
1:32 Selle asemel, et katkestada keset päringut, peatub PHP nüüd viisakalt järgmises turvalises punktis. Kummaline on see, kui vana on esimene vihje.
Miks teadaolev viga ootas kaks aastat?
1:39 2024. aastal viis välise turvaauditi käigus PHP tuumarendaja mäluprobleemi esimeste märkideni. Ühtegi ekspluataatorit ei tuntud ja iga parandus rikkus midagi. Konsensuspõhiselt otsustav meeskond ei suutnud valida, nii et viga ootas. Seejärel, augustis, saabusid leidjad mõne päeva jooksul.
Kes leidis PHP2Shell'i ja kuidas?
1:56 Calif'i teadlane Ryan Austin leidis selle 1. augustil, töötades läbi OpenAI Patch the Planet programmi. OpenAI teatas samast algpõhjusest iseseisvalt. Wiz leidis variante paar nädalat hiljem Gemini ja GPT mudelitega. Austin ütleb, et ta kasutas mudeleid, mida igaüks saab, pluss teooriat, kuhu PHP vanad vead peituvad. OpenAI ütleb, et piiriala tehisintellekt oli võti. Viga oli peidus olnud üle kümne aasta. Väljaanne oli planeeritud neljapäevaks.
Kuidas PHP2Shell'i embargo lekkis?
2:21 Teisipäeval hakkasid kaks CVE numbrit veebis ringlema, vale väljalaskeaja ja vale skooriga kümme. PHP tõi väljalaske päev ette. Sama õhtu avaldas Calif kogemata video oma "proof of concept" töötamisest, ja koopiad elasid kustutamise üle. Kolmapäeva hommikul, rohkem kui kuus tundi enne väljalaset, Chainguard avaldas parandusega koostatud pildid. PHP ütleb, et iga ründaja sai seda parandust uurida, samal ajal kui kõik teised ootasid.
2:46 Paik on ka diff, ja ründajad loevad diffe.
Kas PHP2Shell'i ekspluateeritakse ja kelle poolt?
2:50 Niisiis, keda tegelikult tabatakse? Amazoni mesi-pott logis katse 17. oktoobril ja ütles hiljem, et PHP2Shell on laialdaselt ekspluateeritud. watchTowr teatab ekspluateerimisest reaalses elus. Cisa ütles, et nad ei olnud avaldamise hetkel ühtegi täheldanud, ja PHP meeskond ei näinud väljalaske hetkel ühtegi toimivat ekspluataatorit. Cloudflare'i tegevjuht ütles, et nad nägid tuhandeid katseid kümne tunni jooksul enne teadaannet ja miljoneid neljapäeva hommikuks.
3:13 Amazon on ühes punktis ettevaatlik. Nad ei tea, kas nende varasemad katsed oleksid reaalses süsteemis toiminud. Katse on ainult koputus uksele. Niisiis, kui halb see tegelikult on? watchTowr ütleb, et levivad avalikud ekspluaatorid enamasti kukuvad kokku või ei tee midagi. VulnCheck ütleb, et koodi käivitamine töötab mõnes seadistuses, ja ükski avalikest ei ületa mälu juhuslikkust tavalistel x86 serveritel. Teadlane Elias Taylor ütleb, et see pole kaugeltki nii lihtne kui Log4Shell.
3:40 Kõik soovitavad ikka paigata. Valitsused ei oodanud otsust.
Mida valitsused võrguühendusest eemaldasid?
3:44 NSA käskis organisatsioonidel, kes ei suutnud paigata, võtta PHP süsteemid võrguühendusest välja, ja Ühendkuningriigi Riiklik Küberturvalisuse Keskus andis sarnase nõu. Hollandi saidid, sealhulgas riiklik digitaalse identiteedi teenus, läksid pimedaks, koos Pariisi politsei saidiga. Wikimedia võttis ettevaatusabinõuna mitu süsteemi maha. Palo Alto Networks luges üle kahekümne kahe miljoni avatud eksemplari. Ja Austraalia professor tegi kõige teravama märkuse. Muretsema peab saitide pärast, mis täna maas pole.
Millised PHP versioonid saavad paranduse?
4:11 Parandused on olemas PHP kaheksa punkti kahest kuni kaheksa punkti viieni. Seitse punkti neljale, kaheksa punkti nulle ja kaheksa punkti ühele, PHP avaldas ainult lähtekoodi parandused. Vanemad versioonid ei saa PHP projektist midagi, nii et küsige oma jaotusest. Ajutised lahendused vähendavad tõenäosust, kuid PHP ütleb, et uuendamine on ainus täielik parandus. See on sama õppetund nagu eilse eMudhra episoodis,
Mida peaksite PHP2Shell'iga täna õhtul tegema?
4:32 sest paranduse olemasolu ei ole sama, mis tööprotsessil see on. Leia iga PHP oma stäkist, isegi teiste tarkvarade sisse peidetud koopiad. Uuenda, taaskäivita töötajad ja kontrolli logisid alates 17. oktoobrist. Samal päeval avaldas GitLab kriitilise paiga väljalaske,
Mis veel avaldas täna kriitilise RCE paiga?
4:47 üheksateist punkti viis punkti üks. Täisarvu ületäitumine selle regulaaravaldiste kompilaatoris lubab autentimata kasutajal käivitada koodi serveris, ja selle skoor on kümme kümnest. GitLab dot com on juba paigatud. Isehallatavad installid vajavad uuendust.
Miks kästi Metale maksta 25 miljardit dollarit?
5:01 Vahepeal New Mexicos käskis kohtunik Metale maksta kakskümmend viis miljardit dollarit trahve Cambridge Analytica asjas. Žürii luges üle neljakümne kolme miljoni rikkumise, kuni viis tuhat dollarit igaüks, mis kokku tegi umbes kakssada kakskümmend miljardit enne, kui kohtunik seda kärpis. Meta ütleb, et nad võidavad edasikaebamise. Nüüd lubatud kaitse.
Mis on Chainguard'i kaitse varajase paranduse kohta?
5:19 Chainguard'i tegevjuht ütles The Registerile, et ta leidis samad vead ise reede õhtul, pärast seda, kui sai teada, et PHP-s on midagi tulemas, põhilise vihjega leida halbu haavatavusi. Ta ütleb, et ta avaldas varakult, sest inimesi juba tabati. Kui eelistaksite seda lugeda, mitte kuulata, kuidas ma seda ütlen, saadab diff igal hommikul teie postkasti, tasuta aadressil the daily diff dot dev, link allpool. Nii et tänane otsus on SHIP IT.
Mida saab SHIP IT templi?
5:39 Avalda PHP uuendus täna õhtul, sest uus versiooninumber on ainus täielik parandus. Ja see on tänane diff. Ma olen Niko Axrisi'st. Ühendage vastutustundlikult.
Allikad
- 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



