Kwetsbare plugins

Alle kwetsbaarheden in WooCommerce sinds 2020: exploits en patches

WooCommerce: kwetsbaarheden, exploits, patches

Een WooCommerce-winkel bewaart bestellingen, adressen, telefoonnummers en klantaccounts: elke kwetsbaarheid in de plugin raakt dus persoonsgegevens, soms zonder dat er een account nodig is. Van de geforceerde update van juli 2021 tot de drie als hoog beoordeelde kwetsbaarheden van het najaar 2026: dit is wat er is gevonden, gepatcht en misbruikt, en welke instellingen het risico beperken.

WooCommerce in het kort

WooCommerce is de meest geïnstalleerde e-commerceplugin voor WordPress. De plugin wordt uitgegeven door Automattic, dat ook Jetpack uitgeeft, staat sinds september 2011 in de directory van wordpress.org en toont meer dan 7 miljoen actieve installaties. Ze beheert de catalogus, de winkelwagen, het afrekenen, klantaccounts, transactionele e-mails en een volledige REST API, waaronder de Store API die de blokken Winkelwagen en Afrekenen gebruiken.

Juist die publieke functies maken er een doelwit van: afrekenen, een account aanmaken en de Store API zijn bereikbaar zonder in te loggen, en één kwetsbaarheid kan op miljoenen winkels worden herhaald. De rol Winkelbeheerder, vaak toegekend aan medewerkers of externe dienstverleners, is een ander gevoelig punt.

De tijdlijn van de kwetsbaarheden in WooCommerce

Tijdlijn van de kwetsbaarheden in WooCommerce: 5 november 2020 versie 4.6.2, accounts aangemaakt ondanks de instelling, misbruikt door bots; 14 juli 2021 versie 5.5.1, SQL-injectie zonder account, misbruikt, meer dan 90 versies en geforceerde update; 22 februari 2022 versie 6.2.1; 10 maart 2022 versie 6.3.1; 10 juni 2024 versie 8.9.3; 14 oktober 2024 HTML-injectie; 3 december 2024 versie 9.4.3; 22 december 2025 versie 10.4.3; 2 maart 2026 versie 10.5.3; 4 en 7 september 2026 SQL-injectie en denial of service; 8 oktober 2026 rechtenescalatie gepatcht in 11.2.0
De opvallendste kwetsbaarheden in WooCommerce van 1 januari 2020 tot 11 oktober 2026; een rode ring duidt op gedocumenteerd misbruik.

De tabel bevat de significante kwetsbaarheden: als hoog beoordeeld, uitbuitbaar zonder account, misbruikt of gepatcht via een golf van versies. De data zijn die van de eerste publicatie door WooCommerce, WPScan of Patchstack. De CVSS-v3.1-scores zijn die van de instantie die de CVE toekende; als WPScan afwijkt, worden beide vermeld.

PublicatieGepatcht inTypeCVSSCVEAccount vereistMisbruik
5 november 20204.6.2Accounts aangemaakt bij het afrekenen ondanks de instelling6,3 (WPScan)GeenGeenJa, door bots (WooCommerce)
15 juli 20215.5.1 en meer dan 90 versies (getroffen: 3.3 tot 5.5, en WooCommerce Blocks 2.5 tot 5.5)SQL-injectie via de Store API7,5CVE-2021-32789Geen"Beperkt" volgens WooCommerce; gemeld door WPScan
15 juli 20215.5.1 (getroffen: 3.3 tot 5.5)Blinde SQL-injectie via de webhooks4,9; 7,2 (WPScan)CVE-2021-32790Beheerder of API-sleutelsNiet gedocumenteerd
22 februari 20226.2.1Verwijderen van reviews, reacties en bestelnotities4,3CVE-2022-0775AbonneeNiet gedocumenteerd
10 maart 20226.3.1Bestellingen als betaald gemarkeerd via PayPal Standard3,7 (WPScan)GeenGeenNiet gedocumenteerd
10 juni 20248.8.5 en 8.9.3 (getroffen: 8.8.0 tot 8.9.2)Reflected XSS via Order Attribution5,4; 7,1 (WPScan)CVE-2024-37297Geen (het slachtoffer moet klikken)Niet gedocumenteerd
14 oktober 20249.1.0HTML-injectie in bestellingen die aan de beheerder worden getoond5,3CVE-2024-9944GeenNiet gedocumenteerd
3 december 20249.4.3XSS via postMessage7,1 (WPScan)GeenGeen (het slachtoffer moet klikken)Niet gedocumenteerd
3 december 20249.4.3Bestellingen aanmaken ondanks uitgeschakeld afrekenen als gast5,3 (WPScan)GeenGeenNiet gedocumenteerd
22 december 202510.4.3 en patchversies vanaf 8.1.3 (getroffen: 8.1 tot 10.4.2)Lezen van gastbestellingen via de Store API6,5CVE-2025-15033KlantGeen bewijs (WooCommerce)
2 maart 202610.5.3 en 52 branches (getroffen: 5.4 tot 10.5.2)CSRF waarmee een beheerder kan worden aangemaakt7,5CVE-2026-3589Geen (ingelogde beheerder die klikt)Geen bewijs (WooCommerce)
4 september 202611.0Blinde SQL-injectie7,6; 6,8 (WPScan)CVE-2026-57777WinkelbeheerderNiet gedocumenteerd
7 september 202611.1.0Denial of service7,5CVE-2026-48888GeenNiet gedocumenteerd
8 oktober 202611.2.0 (getroffen: 9.8.0 tot 11.1.2)Rechtenescalatie naar beheerder7,2CVE-2026-106608WinkelbeheerderNiet gedocumenteerd
Significante kwetsbaarheden in de WooCommerce-plugin gepubliceerd van 1 januari 2020 tot 11 oktober 2026. "Niet gedocumenteerd": geen aanval gevonden in de geraadpleegde bronnen.

De rest bestaat uit kwetsbaarheden van lage of gemiddelde ernst, bijna altijd alleen met een account bereikbaar. In 2020 een lek van de bestelstatus (CVE-2020-29156) en twee XSS; in 2021 een XSS voor beheerders en een lek van analyserapporten; in 2022 path traversal in de importtools en een HTML-injectie. In 2023: vier blootstellingen van informatie (gepatcht in 7.0.1, 7.9 en 8.1.1) en een stored XSS door schrijvers, gemeenschappelijk voor WooCommerce en WooCommerce Blocks (CVE-2023-47777). In 2024 twee CSRF, een reflected XSS, toegang tot privéproducten en XSS door winkelbeheerders; in 2025 twee XSS en een SQL-injectie door winkelbeheerders (gepatcht in 9.9.4) en een gegevenslek in multisite.

Tot slot gaf VulnCheck in juni 2026 een score van 9,8 aan een CVE (CVE-2022-50972) die gebaseerd is op een oude Exploit-DB-publicatie over WooCommerce 7.1.0. Omdat die ontbreekt in de lijsten van WPScan en Patchstack en niet door de uitgever is bevestigd, is ze hier niet opgenomen.

Staafdiagram van de kwetsbaarheden in WooCommerce per jaar volgens WPScan: 4 in 2020, 3 in 2021 waarvan 1 hoog, 4 in 2022, 5 in 2023, 11 in 2024 waarvan 2 hoog, 5 in 2025, 4 in 2026 waarvan 3 hoog op 11 oktober
36 kwetsbaarheden die WPScan van 1 januari 2020 tot 11 oktober 2026 voor de WooCommerce-plugin registreerde; de SQL-injectie van 2021 in de Store API staat bij WPScan onder WooCommerce Blocks.

De opvallendste kwetsbaarheden uitgelegd

November 2020: bots maken accounts aan ondanks de instelling

Vóór versie 4.6.2 accepteerde WooCommerce de parameter createaccount die bij het afrekenen werd meegestuurd, ook als het aanmaken van accounts was uitgeschakeld. In de advisory van 5 november 2020 meldt WooCommerce dat een bot deze fout misbruikte om massaal bestellingen en accounts aan te maken, met als doel ingelogde toegang te krijgen en andere kwetsbare plugins af te tasten die alleen voor ingelogde gebruikers bereikbaar zijn. WooCommerce 4.6.2 en WooCommerce Blocks 3.7.1 respecteren de instelling weer; de uitgever raadde aan de door de bot aangemaakte accounts te verwijderen.

Juli 2021: de SQL-injectie die een geforceerde update uitlokte

Op 13 juli 2021 meldt een onderzoeker die Josh heet via het HackerOne-programma van Automattic een SQL-injectie in de Store API. Een vervalst adres naar het endpoint wc/store/products/collection-data liet een anonieme bezoeker een lezende SQL-query uitvoeren: bestellingen, klanten en beheergegevens konden uitlekken, afhankelijk van wat de winkel opsloeg. De kwetsbaarheid trof WooCommerce 3.3 tot 5.5 en de plugin WooCommerce Blocks 2.5 tot 5.5; een tweede injectie, alleen bereikbaar voor beheerders of houders van API-sleutels, zat in de zoekfunctie van de webhooks. WPScan merkt op dat de gemeenschappelijke oorzaak het gebruik van sanitize_text_field was, een functie die bedoeld is tegen XSS en niet tegen SQL-injecties.

De reactie was snel: patch gepubliceerd op 14 juli, meer dan 90 gepatchte versies, en dezelfde dag rolde wordpress.org een automatische beveiligingsupdate uit naar de getroffen winkels, zoals het WooCommerce-team bevestigde in de reacties onder zijn advisory. WPScan preciseert dat die updates werden geforceerd, ook waar automatische updates waren uitgeschakeld, en dat ze nooit 100% effectief zijn. WooCommerce schatte dat het misbruik "beperkt" was gebleven; WPScan maakte melding van gecompromitteerde sites. De uitgever raadde aan de beheerderswachtwoorden en API-sleutels te wijzigen.

Waarschuwing van 14 juli 2021 over de kritieke WooCommerce-update, door WebGirl Kaz (in het Engels).

2024: XSS en bestellingen zonder account

In juni 2024 publiceerde WooCommerce een advisory over een XSS die in 8.8 was geïntroduceerd door de standaard ingeschakelde functie Order Attribution: gegevens die door de bibliotheek Sourcebuster.js werden gelezen, kwamen zonder opschoning in de registratieformulieren en het klassieke afrekenformulier terecht. Een kwaadaardige link volstond om JavaScript in de browser van het slachtoffer uit te voeren. Versies 8.8.5 en 8.9.3 dichten de kwetsbaarheid. In december patchte versie 9.4.3 een andere XSS, via slecht gecontroleerde postMessage-berichten, en een fout waarmee zonder account bestellingen konden worden aangemaakt, ook als afrekenen als gast was uitgeschakeld.

December 2025 en maart 2026: twee kwetsbaarheden in de Store API, gepatcht op tientallen branches

Op 22 december 2025 maakte WooCommerce bekend dat een ingelogde klant via de Store API de bestellingen van gasten kon lezen, op versies 8.1 tot 10.4.2: namen, e-mailadressen, telefoonnummers, adressen, gebruikte betaalmethoden en artikelen, maar geen kaartnummers. De kwetsbaarheid (CVE-2025-15033), gemeld door Man Yue Mo en Peter Stöckli (GitHub Security Lab) via het bugbountyprogramma van Automattic, werd gepatcht in 10.4.3 en in patchversies tot en met de branch 8.1. Automattic werkte samen met het pluginteam van wordpress.org om de getroffen sites automatisch bij te werken.

Op 2 maart 2026 volgde een nieuwe waarschuwing: het "batch"-endpoint van de Store API beperkte verzoeken niet tot de routes van de Store API. Een aanvaller kon een ingelogde beheerder die een kwaadaardige link opende, aanroepen naar andere REST-routes laten uitvoeren, tot en met het aanmaken van een beheerdersaccount (CVE-2026-3589). WooCommerce preciseert dat de aanval alleen onder bijzondere browseromstandigheden werkte (een andere browser dan Chrome, of een oude Chrome-versie met een ingeschakelde optie). Versies 5.4 tot 10.5.2 waren getroffen; er werden 52 patchversies gepubliceerd, met dezelfde automatische uitrol. In beide gevallen verklaarde WooCommerce geen bewijs van misbruik te hebben buiten de eigen tests.

Najaar 2026: drie als hoog beoordeelde kwetsbaarheden in vijf weken

De drie laatste kwetsbaarheden werden gevonden door Ananda Dhakal (Patchstack). Een blinde SQL-injectie, bereikbaar voor de rol Winkelbeheerder en gepubliceerd op 4 september 2026, was al gepatcht door WooCommerce 11.0, uitgebracht op 4 augustus. Een denial of service die zonder account uitbuitbaar was, veroorzaakt door een onbegrensde toewijzing van resources, werd gepatcht in 11.1.0 op 3 september en enkele dagen later gepubliceerd. Op 8 oktober ten slotte publiceerde Patchstack een rechtenescalatie waarmee een winkelbeheerder op versies 9.8.0 tot 11.1.2 beheerder kon worden, de dag ervoor gepatcht door WooCommerce 11.2.0.

WooCommerce Payments: een aparte plugin

De meest misbruikte kwetsbaarheid in het ecosysteem was niet gericht op WooCommerce zelf, maar op WooCommerce Payments: met CVE-2023-28121, gepatcht in maart 2023, kon iemand zich met één HTTP-header voordoen als beheerder, en ze werd in juli 2023 massaal misbruikt. We hebben haar uitgebreid beschreven in ons artikel over CVE-2023-28121.

Wat de geschiedenis van WooCommerce laat zien

  • De Store API is de brandhaard. De SQL-injectie van 2021, de bestellekken van 2025 en de CSRF van 2026 lopen allemaal via deze publieke API die de blokken Winkelwagen en Afrekenen gebruiken. Zie ons artikel over de beveiliging van de REST API.
  • De rol Winkelbeheerder is een doelwit. SQL-injectie, XSS en rechtenescalatie: deze rol, die wordt gegeven aan mensen die geen beheerder zijn, is een toegangspoort geworden. Pas het principe van minimale rechten toe.
  • XSS blijft het meest voorkomende type, zoals overal in het ecosysteem (zie ons artikel over XSS-kwetsbaarheden).
  • Ernstige patches worden gebackport en uitgerold. In 2021 forceerde wordpress.org de update; in 2025 en 2026 publiceerde Automattic samen met het pluginteam van wordpress.org tientallen patchversies en rolde die automatisch uit op de sites die dat toestonden. Minder ernstige kwetsbaarheden worden alleen in de nieuwste versie gepatcht: in 2022 gaf het team aan de branches 4.x en 5.x niet te patchen.
  • Weinig gedocumenteerd misbruik van de plugin zelf (2020 en 2021), maar een hoog volume: WPScan telt 11 kwetsbaarheden in 2024 alleen.

WooCommerce is geen uitzondering: kwetsbaarheden in plugins tellen elk jaar in de duizenden, en ook de WordPress-core heeft een eigen geschiedenis, beschreven in onze tijdlijn van de core-kwetsbaarheden.

Jezelf beschermen

  • Werk bij. Op 11 oktober 2026 is de te bereiken versie 11.2.0 of later; controleer op een oudere branch of er voor elke kwetsbaarheid een patchversie bestaat, wat niet altijd het geval is.
  • Schakel automatische updates in, in elk geval voor beveiligingsversies: dat maakte de uitrol van 2025 en 2026 mogelijk. Onze gids over automatische updates van plugins legt uit hoe je die in goede banen leidt.
  • Beperk het aantal winkelbeheerdersaccounts en controleer regelmatig de lijst van beheerders. Schakel het aanmaken van accounts en afrekenen als gast uit als je winkel dat niet nodig heeft.
  • Verwijder ongebruikte WooCommerce-plugins (betaalgateways, add-ons): een overbodige plugin blijft een aanvalsoppervlak.
  • Voeg een applicatiefirewall toe die virtuele patches kan toepassen en het verkeer naar de Store API kan beperken: onze vergelijking van WAF's. Voor betalingen, kaartfraude en klantaccounts, zie onze beveiligingsgids voor een WooCommerce-winkel.
  • Volg de gepubliceerde kwetsbaarheden voor WooCommerce en de bijbehorende plugins: methode en tools.

WP Masquerade Pro helpt bij dat laatste punt. Het vergelijkt elke dag de geïnstalleerde versies op je sites met de openbare database WPVulnerability.net en stuurt je een melding per e-mail met de ernst en de gepatchte versie. De klantenzone toont ook de openstaande updates en de kwetsbare sites. Het waarschuwt, maar patcht niet en is geen firewall: bijwerken moet je zelf doen. Voor de andere bouwstenen van je bescherming, zie onze selectie van beveiligingsplugins.

Om te onthouden

  • WPScan telt 36 kwetsbaarheden in de WooCommerce-plugin van 1 januari 2020 tot 11 oktober 2026, waarvan 6 als hoog beoordeeld en geen enkele kritiek.
  • Twee gedocumenteerde gevallen van misbruik: het aanmaken van accounts door bots in 2020 en de SQL-injectie van juli 2021, die een door wordpress.org geforceerde update uitlokte.
  • De Store API en de rol Winkelbeheerder zijn goed voor de meeste recente kwetsbaarheden.
  • Te bereiken versie op 11 oktober 2026: 11.2.0 of later.
  • WooCommerce Payments is een aparte plugin, met een eigen grote kwetsbaarheid uit 2023.

Bronnen

  • CVE: CVE-2021-32789, SQL-injectie via de Store API (26 juli 2021) (externe link, opent in een nieuw tabblad)
  • WooCommerce Developer Blog: WooCommerce 6.2.1 Security Fix (22 februari 2022) (externe link, opent in een nieuw tabblad)
  • CVE: CVE-2026-3589, WooCommerce vóór 10.5.3, aanmaken van een beheerder via CSRF (6 maart 2026) (externe link, opent in een nieuw tabblad)
  • WordPress.org: pagina van de WooCommerce-plugin (actieve installaties) (externe link, opent in een nieuw tabblad)

Andere geraadpleegde bronnen: andere CVE-registraties, officiële pagina's van de leveranciers, artikelen uit de vakpers, databases van WPScan en Patchstack.

WordPress-beveiliging, zonder ruis

Eén e-mail wanneer het ertoe doet: nieuw waargenomen aanvallen, updates van de plugin en praktische gidsen. Geen spam, afmelden met één klik.

Begin gratis, stap over op Pro wanneer je eraan toe bent

De gratis versie verbergt WordPress al en verplaatst de inlogpagina. Pro voegt aliassen, tweestapsverificatie en bewaking toe.