Lek in Ninja Forms misbruikt voor WordPress-backdoors

Lek in Ninja Forms misbruikt voor WordPress-backdoors

Aanvallers misbruiken stored cross-site scripting-lekken (XSS) in twee WordPress-plug-ins, Ninja Forms en WPC Product Bundles for WooCommerce, om op gecompromitteerde sites valse beheerdersaccounts aan te maken en backdoors te installeren. Dat meldt Patchstack.

De twee plug-ins hebben niets met elkaar te maken, maar de aanvallen lijken van dezelfde bron te komen. In beide gevallen werd dezelfde JavaScript-payload geleverd vanaf het domein imgcdn1[.]com.

Twee plug-ins, één payload

Met Ninja Forms kunnen sitebeheerders eigen formulieren bouwen zonder te programmeren. De plug-in draait op meer dan 500.000 WordPress-sites. WPC Product Bundles for WooCommerce, waarmee webwinkels producten tot bundels samenvoegen, is actief op meer dan 30.000 sites.

De lekken zijn bekend als:

  • CVE-2026-94504, in Ninja Forms 3.15.3 en eerder
  • CVE-2026-93836, in WPC Product Bundles for WooCommerce 8.6.6 en eerder

Beide hebben de ernstclassificatie hoog, en voor beide is een ingelogde sessie nodig om ze te misbruiken.

Patchstack, een beveiligingsplatform dat zich richt op WordPress, zag de campagne voor het eerst op 4 oktober, toen gebruikers van WPC Product Bundles het doelwit waren. Een dag later dook dezelfde activiteit op bij Ninja Forms.

Zo werkt de aanval

De aanvaller probeert een kwaadaardig script, x.js, te injecteren in WooCommerce-bestelgegevens of in inzendingen van Ninja Forms. Er gebeurt niets totdat een ingelogde beheerder die inhoud opent. Op dat moment wordt het script uitgevoerd binnen de geauthenticeerde WordPress-sessie van de beheerder.

Het script haalt vervolgens de benodigde beheerdersnonces op en roept legitieme WordPress-functies aan om twee dingen te doen. Het installeert een nepplug-in genaamd "WP Smart Thumbnails" versie 1.2.4, toegeschreven aan "MediaPress Labs", en het maakt een nieuw beheerdersaccount aan.

Daarna zetten de JavaScript-payload en de PHP-scripts van de plug-in vier afzonderlijke routes terug naar de site op:

  • een zichtbaar beheerdersaccount
  • een beheerdersaccount dat verborgen is in de gebruikerslijst van het dashboard
  • een geheime inlog-URL die de bezoeker aanmeldt als de oudste bestaande beheerder van de site
  • een bestandsbeheerder waarvoor geen authenticatie nodig is en die bereikbaar is via een rechtstreeks verzoek aan het hoofd-PHP-bestand van de nepplug-in

Met de bestandsbeheerder kunnen geen opdrachten worden uitgevoerd. Wel kan hij worden gebruikt om extra payloads te uploaden.

Gebouwd om opruimen te overleven

Het verwijderen van WP Smart Thumbnails is niet genoeg. Het verborgen account en de geheime inlog-URL blijven werken via aparte hulpplug-ins, die van teruggedateerde tijdstempels zijn voorzien om geen aandacht te trekken.

Volgens Patchstack is de verborgen beheerder voor de sitebeheerder in feite onzichtbaar. "Het [verborgen] account verschijnt niet onder Users → All Users, verschijnt niet in het filter Administrator en wordt niet meegeteld in de totalen boven de lijst", leggen de onderzoekers uit. "Het is een beheerder met volledige rechten die de sitebeheerder niet kan zien."

Patches beschikbaar

Het misbruik is volgens Patchstack voorlopig beperkt. Sitebeheerders doen er goed aan te updaten naar Ninja Forms 3.15.4 of hoger en WPC Product Bundles for WooCommerce 8.6.7 of hoger.

Updaten dicht het gat, maar verwijdert geen bestaande infectie. Beheerders wordt dringend aangeraden te zoeken naar tekenen van een inbraak, waaronder onbekende plug-ins en beheerdersaccounts die mogelijk niet in het standaard gebruikersoverzicht verschijnen.

Waarom dit ertoe doet

De campagne laat zien hoe een lek waarvoor authenticatie nodig is toch gevaarlijk kan zijn. De aanvaller heeft hier vooraf geen beheerdersgegevens nodig. Het plan draait erom dat een beheerder routinewerk doet, zoals bestellingen of formulierinzendingen bekijken, en het kwaadaardige script leent die sessie.

Ook de gelaagde persistentie verdient aandacht. Met vier toegangsroutes en hulpplug-ins die zijn ontworpen om de hoofdbackdoor te overleven, wordt er bij snel opruimen waarschijnlijk iets over het hoofd gezien. Voor sitebeheerders betekent dit dat herstel moet worden aangepakt als een volledige incidentrespons en niet als het verwijderen van één plug-in.

De grotere les is een bekende. Zoals bleek in gevallen waarin een gemiste patch tot een groot datalek leidde, opereren aanvallers in de periode tussen het uitbrengen en het installeren van een fix, en dat venster lijkt kleiner te worden nu misbruik steeds sneller verloopt. Met Ninja Forms op meer dan een half miljoen sites is het de moeite waard om in de gaten te houden of deze activiteit beperkt blijft of zich verspreidt nu de techniek openbaar is.