PHP heeft op 23 oktober een nieuw lek bekendgemaakt: CVE-2026-115560. Het is het derde lek in PHP in een week, na de twee kritieke lekken van 21 oktober. Deze keer komt er geen noodupdate. PHP raadt aan om tot de volgende release een instelling uit te zetten: session.upload_progress.enabled. Dat staat in het beveiligingsarchief van PHP.
Het lek zit in de functie die bijhoudt hoe ver een upload is gevorderd, samen met de manier waarop PHP sessiegegevens opslaat. In het slechtste geval kan iemand van buitenaf er code mee uitvoeren op je server. Dat lukt volgens PHP alleen bij een ongebruikelijke combinatie: je applicatie zet session.serialize_handler in de configuratie op php_binary of php_serialize, zet die terwijl de applicatie draait met ini_set() om naar php, en heeft de uploadvoortgang aan.
PHP verwacht dat die opzet in de praktijk weinig voorkomt. Daarom komt de echte oplossing met de volgende gewone release, samen met een volledige beschrijving van het lek. Een datum noemt PHP niet.
Bijgewerkt is niet genoeg
De update van 21 oktober helpt hier niet tegen. Volgens Cloudflare zit het lek ook in volledig bijgewerkte versies, waaronder PHP 8.5.12. Heb je die update netjes geïnstalleerd, dan ben je dus nog niet klaar.
Even terug naar 21 oktober. Toen bracht PHP noodupdates uit voor twee kritieke lekken, CVE-2026-109618 en CVE-2026-109619, ook bekend als PHP2Shell. Daarmee kon iemand zonder in te loggen een webserver overnemen. De update zit in PHP 8.5.12, 8.4.27, 8.3.36 en 8.2.35. Voor PHP 8.1 en ouder brengt PHP geen nieuwe release meer uit.
Het NCSC raadt aan om die updates zo snel mogelijk te installeren, en systemen die nog niet zijn bijgewerkt offline te houden. Het verwijst ook naar een lijst van softwareproducten waar PHP in zit, voor wie niet zeker weet waar PHP overal draait.
Wat je nu doet
- Kijk welke PHP-versie je site draait en of de update van 21 oktober erop staat. Heb je gedeelde hosting, vraag het dan aan je hoster.
- Laat
session.upload_progress.enabledop 0 zetten. Dat moet inphp.iniof in de configuratie van de server gebeuren, en daarna moeten alle PHP-processen opnieuw starten. Metini_set()of een.user.iniwerkt het niet, schreef PHP in het advies van 21 oktober. Had je hoster dit al eerder gedaan, laat het dan zo staan. - Denk aan software waar PHP in zit zonder dat je het ziet: je CMS, je webshop, een beheerpaneel.
- Werk opnieuw bij zodra de volgende release er is. De instelling is een tijdelijke maatregel, geen oplossing.
Zelf nakijken
Met de PHP-lekcheck zie je in een paar seconden welke PHP-versie je server meldt en of de update van 21 oktober erop staat. De check kijkt van buitenaf. Of de uploadvoortgang uit staat en wat je code met de sessie-instelling doet, zie je daar niet. Dat weet alleen je hoster of je bouwer.
Liever helemaal geen PHP meer? Ga je een jaar met Stevin.AI in zee, dan bouwen we je nieuwe website gratis, zonder PHP en met een jaar hosting erbij. Aan de actie zitten voorwaarden, die lopen we samen door. Bekijk de actie.
Bronnen: PHP, NCSC, Cloudflare en BleepingComputer.
Bron
Wat dit voor jou betekent
PHP heeft het lek zelf gemeld, met een tijdelijke maatregel en nog zonder datum voor de echte oplossing. Dat ook bijgewerkte versies het lek hebben, schrijft Cloudflare.
Vraag je hoster twee dingen: staat de update van 21 oktober erop, en staat session.upload_progress.enabled op 0 in php.ini of de serverconfiguratie.
Wij volgen de meldingen van PHP en passen de PHP-lekcheck aan zodra de volgende release er is. De websites die wij bouwen hebben geen PHP nodig.
Editie 471 · Kort