Websitebeheerders wereldwijd patchen deze week hun servers tegen PHP2Shell, een kritiek beveiligingslek in PHP waarmee aanvallers zonder inloggegevens code kunnen uitvoeren. Wie daarvoor de site tijdelijk offline haalt, moet volgens Google een HTTP 503-statuscode tonen in plaats van de boel te laten timen of een 404 en 500 te serveren, anders dreigt verlies van ranking en indexering.
Over het bronartikel: dit nieuwsbericht is gebaseerd op berichtgeving van Search Engine Roundtable over uitspraken van Google's John Mueller.
Wat is het PHP2Shell-lek
PHP2Shell is de verzamelnaam voor twee kritieke kwetsbaarheden die deze week zijn verholpen in PHP 8.5.12, 8.4.27, 8.3.36 en 8.2.35. Het probleem is ernstig genoeg dat Techmeme en grote nieuwsmedia er breed over berichten.
Reuters meldde dat verschillende Europese overheids-, school- en ziekenhuiswebsites woensdag offline gingen uit voorzorg, nog voordat de patches overal waren uitgerold. PHP draait een groot deel van het internet, dus de urgentie is reëel.
Waarom sites offline gaan tijdens het patchen
De meeste serverbeheerders kunnen de patch doorvoeren zonder downtime. Toch kiezen veel organisaties ervoor de site even helemaal af te schermen, simpelweg om het risico op misbruik tijdens de overgangsperiode uit te sluiten.
Dat is een begrijpelijke voorzorgsmaatregel bij een lek dat ongeautoriseerde code-uitvoering mogelijk maakt. Het probleem ontstaat pas als die tijdelijke maatregel verkeerd wordt uitgevoerd richting zoekmachines.
Het advies van Google: gebruik een 503
John Mueller liet op Bluesky weten hoe je dit technisch goed aanpakt. Zijn kernboodschap: serveer een HTTP 503 in plaats van de verbinding te laten verlopen of een 404 of 500 terug te geven.
Een 503 kun je volgens Mueller ook buiten PHP om regelen, bijvoorbeeld door de DNS tijdelijk te verleggen of de statuscode via een CDN af te handelen. Zo blijft de kwetsbare code zelf onbereikbaar, terwijl Google het juiste signaal krijgt.
Google verwijst voor de technische uitwerking naar twee eigen documenten:
- How to deal with planned site downtime
- Temporarily pause or disable a website
Wat er op het spel staat voor je ranking
Googlebot interpreteert een timeout, 404 of 500 heel anders dan een 503. Bij de eerste signalen kan Google concluderen dat een pagina blijvend verdwenen of kapot is, met verwijdering uit de index als gevolg.
Google gaf eerder vergelijkbaar advies bij de Log4j-kwetsbaarheid in 2021 en rond periodes waarin sites bewust sluiten, zoals tijdens religieuze feestdagen. De vuistregel blijft hetzelfde: een 503 werkt voor uren tot ongeveer een dag.
Duurt de onderhoudsperiode langer, dan raadt Google aan een statische versie van de site te tonen in plaats van alleen een onderhoudspagina. Zo voorkom je dat een noodzakelijke veiligheidsmaatregel alsnog je zoekresultaten schaadt.
- Gebruik een 503-statuscode, nooit een timeout, 404 of 500
- Regel dit eventueel via DNS of CDN als de server zelf niet beschikbaar is
- Houd de 503-periode kort, idealiter binnen een dag
- Toon bij langere downtime een statische versie van de site
Bron: Search Engine Roundtable