WordPress heeft vandaag patches uitgebracht om een nieuwe reeks kwetsbaarheden in de kernsoftware te verhelpen. Eén daarvan kan ervoor zorgen dat een gemanipuleerde weblink geopend door een ingelogde beheerder, automatisch een thema uit de officiële WordPress.org-directory installeert, zonder dat iemand op Installeren hoeft te klikken.
Beveiligingsbedrijf pwn.ai, waarvan de onderzoekers de fout meldden, noemt deze aanvalsketen Click2Shell. Op zichzelf installeert de fout alleen een echt thema dat de aanvaller kiest. Maar het onderzoeksteam liet zien dat deze kan worden gecombineerd met een aparte kwetsbaarheid in een thema, waardoor de aanvaller eigen code op de server kan uitvoeren.
De oplossing is uitgebracht op 17 september in WordPress 7.1.1. Omdat dit een beveiligingsupdate is, adviseert WordPress om direct te updaten. Er zijn geen aanwijzingen dat de fout in echte aanvallen is misbruikt.
Het geïnstalleerde thema blijft uitgeschakeld, waardoor de uitstraling van de site niet verandert en er aan de buitenkant niets verdachts zichtbaar is. Voor code-uitvoering was nog een tweede, aparte kwetsbaarheid in het geïnstalleerde thema nodig. Zoals pwn.ai over alleen de kernfout schreef: “The Core bug does not accept an arbitrary theme ZIP by itself.”
De fout werkt doordat twee onderdelen van WordPress dezelfde link op een andere manier lezen. De WordPress.org-directory ziet de waarde in de link als een gewone themanaam en levert een echt thema terug, maar de browser van de beheerder gebruikt de oorspronkelijke tekst, inclusief leestekens, in code die een item op de pagina moet selecteren. Tekens die de aanvaller aan de link toevoegt, sturen die code naar de knop Installeren, waarna het eigen script van WordPress daarop klikt.
Omdat de beheerder al is ingelogd, levert diens sessie de benodigde rechten en het beveiligingstoken voor de installatie. De aanvaller hoeft die dus niet zelf aan te leveren.
Een geïnstalleerd thema is niet altijd passief. Wanneer WordPress een voorbeeld bouwt in de Customizer, kan het de PHP-code van een thema laden, zelfs voordat het thema is ingeschakeld.
Het thema dat pwn.ai gebruikte, Mobile Repair Zone, bevatte een tweede kwetsbaarheid: een achtergrondhandler die een webadres uit het verzoek ophaalde, een pakket downloadde en de code daarvan uitvoerde, zonder controle op de rechten van de bezoeker of een beveiligingstoken. In combinatie met de geforceerde installatie kon die handler de code van de aanvaller op de server uitvoeren.
De onderzoekers beoordeelden de kwetsbaarheid voor geforceerde installatie op zichzelf als hoog ernstig, met een CVSS-score van 7,1. De volledige keten naar code-uitvoering werd als kritiek beoordeeld, met 9,6. WordPress heeft zelf nog geen ernstscore gepubliceerd. In de release note omschreef het bedrijf het probleem als volgt: “Specially crafted URLs can automatically install and preview an inactive theme from WordPress.org.” Er is nog geen CVE-identificatie toegekend, al zegt pwn.ai dat WordPress van plan is die toe te voegen.
WordPress heeft de fout opgelost in 7.1.1, onderdeel van een beveiligingsrelease waarvan de fixes teruggaan tot ondersteunde takken vanaf 4.7. De release notes bevestigen dat deze fout aanwezig was vanaf versie 6.0 tot en met de versies vlak vóór de patch. Website-eigenaren moeten 7.1.1 installeren, of de overeenkomstige update voor de versie die zij gebruiken. Sites die automatisch updaten, ontvangen de patch vanzelf.
Als u niet direct kunt updaten, is het goed om te weten dat noch WordPress noch pwn.ai een aparte tijdelijke oplossing heeft aangeboden. Bovendien vereist de aanval nog steeds dat een ingelogde beheerder op de link van de aanvaller klikt. Door WordPress core te updaten, wordt de aangetoonde aanval geblokkeerd, ongeacht welk thema een site gebruikt.
Click2Shell is niet de eerste WordPress-corefout van pwn.ai in de afgelopen weken. In augustus repareerde WordPress een vergelijkbare fout die pwn.ai in het inlogscherm vond en die eveneens kon worden doorgetrokken naar code-uitvoering. Ook toen beschreef WordPress het risico smaller dan de onderzoekers deden.
Een andere WordPress-corefout die in juli werd gemeld, wp2shell, staat los van het werk van pwn.ai. Voor die fout is geen login en geen klik nodig. De Amerikaanse cyberveiligheidsdienst CISA heeft deze opgenomen als een fout die in echte aanvallen is misbruikt. Dat geldt voor Click2Shell niet.
Focus keyphrase: WordPress Click2Shell kwetsbaarheid





