WordPress-sites kwetsbaar door een ernstige fout in een populaire back-up en migratieplugin. Beveiligingsbedrijf Defiant waarschuwt dat meer dan 3 miljoen websites mogelijk kunnen worden geraakt door een aanval die uiteindelijk tot remote code execution (RCE) kan leiden.
De kwetsbaarheid zit in All-in-One WP Migration and Backup en is geregistreerd als CVE-2026-19949. Met een CVSS-score van 8,8 valt de impact onder de hoogste categorie. De plugin is inmiddels gepatcht, maar niet iedere site heeft de update al doorgevoerd.
Wat is er precies mis met de plugin?
Volgens Defiant gaat het om een zogenaamde second-order SQL-injectie in de archive restore-functionaliteit. Daarbij ontstaat de kwetsbaarheid doordat aangeleverde input onvoldoende wordt afgehandeld: waarden worden niet goed escaped en bestaande SQL-query’s worden niet voldoende voorbereid.
De plugin verpakt een WordPress-site in .wpress-archieven en laat beheerders die op een andere server terugzetten. Importeren en terugzetten draait dus om het verwerken van opgeslagen content en database-informatie.
Waarom kan dit uitmonden in RCE?
Het aanvalstraject loopt in meerdere stappen. Een aanvaller kan op een openbare pagina via WordPress’ trackback-functie gemanipuleerde inhoud aanleveren. Die informatie wordt opgeslagen zonder backslashes te strippen en zonder dat URLs consequent worden geweigerd.
Wanneer een beheerder vervolgens eerst archiveert en daarna importeert, worden tijdens die import bewerkingen gedaan op onder andere URL’s en tabelprefixes die in de opgeslagen SQL staan. Daardoor kan door de aanvaller aangeleverde input alsnog worden omgezet naar uitvoerbare SQL.
Een kernpunt is dat de importprocedure met een secret key werkt. Die sleutel wordt gebruikt bij een database-restore pass en belandt tijdens het proces in commentaar dat uiteindelijk openbaar zichtbaar kan worden.
Hoe werkt de aanval in stappen?
Defiant beschrijft een concreet scenario waarin een aanvaller zonder authenticatie probeert controle te krijgen over de site. De kernideeën zijn:
- De aanvaller dient twee trackbacks in bij een openbaar bericht.
- Elke trackback bevat een trailing backslash en verwijst naar een URL met een payload.
- Bij archiveren en importeren promoot de plugin de aangeleverde input naar SQL die kan worden uitgevoerd.
- Daarmee wordt de secret key weggeschreven naar commentaar dat via een REST API-endpoint kan worden opgehaald.
- Met die sleutel kan de aanvaller vervolgens een samengesteld .wpress-archief importeren met een malicious must-use plugin.
- Die must-use plugin wordt bij de eerstvolgende paginaweergave uitgevoerd, wat kan leiden tot remote code execution.
Defiant benadrukt dat dit, zoals bij vrijwel alle RCE-kwetsbaarheden, kan uitlopen op volledige sitescompromittering met technieken zoals webshells.
Welke versie is kwetsbaar en wanneer is gepatcht?
De kwetsbaarheid treft alle versies tot en met 7.109. De fix zit in versie 7.110, die op 20 augustus is uitgebracht.
Defiant noemt de plugin bovendien extreem populair: er zouden meer dan 5 miljoen actieve installaties zijn. Tegelijkertijd is de updategraad zorgelijk. Op 3 september zou slechts 35% van alle installaties zijn bijgewerkt naar 7.110, wat neerkomt op grofweg 3,2 miljoen sites die nog steeds een kwetsbare versie draaien.
Waarom dit soort fouten extra gevaarlijk zijn
De kwetsbaarheid is geen “klassieke” fout waarbij een aanvaller alleen een beperkte actie kan uitvoeren. Juist omdat het gaat om back-up en restore-functionaliteit, belandt input die oorspronkelijk alleen als content begon, uiteindelijk in een positie waarin die als onderdeel van het importproces kan worden verwerkt tot iets dat code kan uitvoeren.
Met andere woorden: als je plugin een keten vormt van “aanleveren → opslaan → later verwerken”, dan kan een kleine fout in het opslaan of ontsnappen van gegevens later escaleren. Dat maakt WordPress-sites kwetsbaar ook wanneer de aanvaller initieel niet veel meer doet dan het indienen van gegevens via normale WordPress-mechanismen.
Wat moet je als beheerder nu doen?
Als je All-in-One WP Migration and Backup gebruikt, neem dan deze stappen:
- Update meteen naar 7.110 of hoger. Versies tot en met 7.109 zijn kwetsbaar.
- Controleer of de plugin daadwerkelijk de versie draait die je denkt te draaien. Soms staan sites op verouderde releases door uitgestelde updates.
- Werk je restore-workflows bij. Als je regelmatig archieven importeert, zorg dat je bestanden en bronprocessen betrouwbaar zijn.
- Bekijk je incidentrespons: als je vermoedt dat er misbruik is gemaakt, onderzoek dan in ieder geval de commentaaroutput en eventuele plugin-installaties na importacties.
Ook is het verstandig om breder te kijken dan alleen deze plugin: in het WordPress-ecosysteem duiken regelmatig kwetsbaarheden op via populaire componenten en plugins die veel sites gebruiken.
Vergelijkbare risico’s: ketens in WordPress en supply chain
Kwetsbaarheden in plugins en componenten die veel gebruikt worden, laten zien waarom supply chain-denken in beveiliging belangrijk is. Een enkele fout in een veel geïnstalleerde tool kan grote groepen sites tegelijk raken. Dat zie je niet alleen bij All-in-One WP Migration.
Als je wilt verdiepen in het bredere patroon van supply chain- en pluginrisico’s, dan kan het helpen om te lezen hoe aanvallers misbruik maken van installatie- en updatepaden. Zie bijvoorbeeld Fake software-installers die updates uitschakelen.
Daarnaast is het nuttig om te weten hoe WordPress-specifieke aanvalsroutes soms worden ingezet om verder te escaleren. In dit verband sluit ook malafide npm-pakketten via supply chain aan op het idee dat een keten kan worden misbruikt voordat de impact zichtbaar wordt.
Conclusie
All-in-One WP Migration and Backup bevat een ernstige kwetsbaarheid (CVE-2026-19949) die WordPress-sites kwetsbaar maakt voor mogelijke remote code execution. Dankzij een aanval via trackbacks en een complex restore-mechanisme kan de beveiliging die met een geheim werkt, worden omzeild.
De oplossing is duidelijk: update naar versie 7.110. Met een geschatte 3,2 miljoen sites die nog niet bijgewerkt zouden zijn, is snelle actie belangrijk om compromittering te voorkomen.
