Fotorealistisk illustration sedd rakt uppifrån: eld, vatten, jord och virvlande rök rinner ner i ett stort mörkt hål, med ordet Elementor i mitten.
Nyheter

Sju BdThemes-tillägg till Elementor blev bakdörrar, utan att en enda rad kod ändrades

Sju tillägg i BdThemes Elementor-ekosystem, med Element Pack Addons for Elementor i spetsen (över 100 000 installationer), gjorde tusentals WordPress-sajter till bakdörrar utan att ett enda tillägg behövde uppdateras. Wordfence Threat Intelligence notifierades den 7 augusti 2026, och WordPress.org stängde dagen efter tillfälligt nedladdningen av samtliga sju tillägg medan saken granskades. Wordfence egen analys, skriven av säkerhetsforskaren Paolo Tresso, publicerades samma dag.

Skärmdump av WordPress.org: tilläggssidan för Element Pack med den röda notisen om att tillägget stängts den 8 augusti 2026 i väntan på granskning.
WordPress.org stängde tillfälligt tilläggssidan för Element Pack (bdthemes-element-pack-lite) den 8 augusti 2026 i väntan på granskning. Skärmdump från wordpress.org.

Det som skiljer den här incidenten från den vanliga bilden av en WordPress-sårbarhet är var attacken kom in. Ingen bytte ut kod i själva tilläggsfilerna. Istället manipulerades ett fjärrsvar som tilläggen hämtar i bakgrunden, en reklambanner. Rådet "håll allt uppdaterat" hade varken orsakat problemet eller stoppat det, för den sårbara vägen ligger helt utanför tilläggskoden.

Vilka tillägg är berörda

Alla sju tillägg tillhör samma utvecklare, BdThemes, och delar samma bakomliggande bibliotek för att visa reklam och licensinformation. Det gör dem sårbara som grupp, oavsett vilket av dem du har installerat:

  • Element Pack Addons for Elementor (100 000+ installationer)
  • Prime Slider Addons for Elementor
  • Pixel Gallery
  • Ultimate Post Kit
  • Ultimate Store Kit
  • Live Copy Paste
  • Smart Admin Assistant

Element Pack och Elementor-tillägg av den här typen är vanliga hos svenska byggbyråer och småföretag som vill bygga sidor visuellt utan att koda. Just den kombinationen, brett spridda tillägg från samma utvecklare, är precis den typ av gemensam nämnare som gör en leveranskedjeattack effektiv.

Så gick attacken till

Ett delat bibliotek i tilläggen, kallat Biggopti, hämtar reklambanners från ett JSON-svar som ligger lagrat i BdThemes objektlagring hos DigitalOcean. Angriparen fick skrivåtkomst till den lagringen, inte till WordPress-sajterna själva, och bytte ut det legitima svaret mot ett förgiftat värde i fältet display_id.

Biggopti skrev in det värdet direkt i ett HTML-attribut utan att sanera det (en klassisk XSS-brist, cross-site scripting, där oskyddad indata gör att en angripare kan köra egen kod i webbläsaren). Det manipulerade värdet stängde attributet i förtid och lade till en onanimationstart-händelse. Så fort en administratör öppnade en sida i wp-admin, och en CSS-animation kördes som den normalt gör, utlöstes angriparens skript tyst i bakgrunden.

Nyttolasten: från skript till full kontroll

Skriptet körde i administratörens egen webbläsare, med adminens giltiga sessionstoken. Därifrån gick det snabbt.

  • Ett nytt administratörskonto skapades via WordPress REST API.
  • Ett falskt tillägg installerades, med en PHP-webshell inbäddad (ett skript som ger angriparen ett fjärrgränssnitt för att köra kommandon på servern).
  • Persistens säkrades via mu-plugins-katalogen ("must use"-tillägg, som WordPress laddar automatiskt utan att visa dem i den vanliga tilläggslistan), där en bakdörr med namnet "magic-login" gav oautentiserad admin-åtkomst.

En bakdörr i mu-plugins-katalogen ligger utanför den vanliga sidan för att hantera tillägg i wp-admin. Den syns inte om du bara scrollar igenom din tilläggslista, vilket är precis det som gör den effektiv som långsiktig fot i dörren.

Låg CVSS-poäng, allvarlig konsekvens

Wordfence klassade själva XSS-bristen som CVSS 5.4, medelhög allvarlighetsgrad. Ingen egen CVE-identifierare har tilldelats, sårbarheten spåras internt hos Wordfence. Den siffran ger dock fel intryck om man läser den isolerat.

Konsekvensen, dolt administratörskonto, webshell och en persistent bakdörr, ligger på en helt annan nivå än vad en medelpoäng normalt signalerar.

En medelmåttig sårbarhet i ett svagt led, i det här fallet ett fjärranrop som körs med adminrättigheter, kan ändå leda till fullständig kompromettering av sajten.

"Håll allt uppdaterat" räcker inte den här gången

Junivågen av leveranskedjeattacker mot WordPress tidigare i år visar skillnaden. Då gick angreppet via förgiftade tilläggssläpp, kod som lades in i nya versioner av tilläggen. Där var uppdateringshygien en del av både problemet och lösningen. Äldre, oreviderade versioner var säkrare tills en patchad version fanns att lita på.

Den här gången är läget nästan omvänt. Koden i tilläggen var oförändrad. Attacken kom via ett driftanrop, reklambannerns JSON-svar, som tilläggen ringer hem efter varje gång de laddas. Att uppdatera till senaste versionen av Element Pack eller Prime Slider hade varken skapat problemet eller löst det, eftersom den sårbara koden i Biggopti-biblioteket redan låg där sedan Prime Slider version 4.1.9 släpptes den 1 mars 2026. Enligt tidsstämplar i de förgiftade posterna kan själva kampanjen ha varit aktiv sedan 23 juni 2026, alltså i nästan sju veckor innan den upptäcktes.

Vi har skrivit tidigare om hur man resonerar kring automatiska uppdateringar kontra att vänta, och den här incidenten visar var gränsen för det rådet går. Uppdatering skyddar mot kod som ändras i tillägget. Den skyddar inte mot en tjänst tilläggen litar på i drift, vare sig det handlar om en reklambanner, en licenskontroll eller uppdateringsmetadata som hämtas från en tredjepartsserver.

Vad du bör göra om du kör något av tilläggen

Kör din sajt Element Pack, Prime Slider, Pixel Gallery, Ultimate Post Kit, Ultimate Store Kit, Live Copy Paste eller Smart Admin Assistant, är det värt att lägga tio minuter på en kontroll, oavsett om du märkt något ovanligt eller inte.

  • Gå igenom listan över administratörskonton i wp-admin och leta efter konton du inte känner igen, särskilt sådana skapade nyligen.
  • Kontrollera tilläggslistan efter tillägg du inte själv installerat, även sådana med legitimt klingande namn.
  • Titta i mu-plugins-katalogen (wp-content/mu-plugins/) efter filer du inte lagt dit själv, särskilt sådant som rör "magic-login" eller liknande.
  • Sök igenom options-tabellen i databasen efter misstänkta eller okända värden, om du har tillgång och kompetens att göra det, eller be ditt webbhotell om hjälp.

Hittar du någon av delarna ovan, betrakta det som ett fullständigt intrång och inte bara ett konto att radera. Ett borttaget adminkonto rensar inte bort en webshell eller en dold bakdörr i mu-plugins. Vår genomgång av hur du sanerar en hackad WordPress-sajt går igenom varför en djupare sanering behövs i lägen som det här, och Wordfence har publicerat en egen saneringsanvisning kopplad till just denna incident.

Den bredare lärdomen: varje tillägg är en egen leverantörskedja

Det är lätt att dra slutsatsen "uppdatera oftare" av den här typen av nyheter. Den mer träffsäkra slutsatsen är att varje tillägg du installerar öppnar en egen kanal till en extern leverantör, vare sig det är för licenskontroll, reklam eller uppdateringsdata, och att den kanalen är lika mycket en del av attackytan som själva koden.

Färre tillägg betyder färre sådana kanaler. Om du inte redan gjort det kan det vara läge att gå igenom vilka tillägg som faktiskt tjänar ett syfte på din sajt, vi har skrivit om hur en sådan genomgång av dina WordPress-tillägg går till i praktiken. Se också till att du har en backup som faktiskt går att återställa, testad, inte bara schemalagd, och fråga ditt webbhotell vilka skyddslager de faktiskt erbjuder mot skadlig kod och avvikande beteende på kontot.

Inget av detta är en garanti. Även ett välskött webbhotell och en disciplinerad tilläggslista hade knappast stoppat just den här attacken innan den upptäcktes, eftersom bristen låg hos leverantören snarare än hos den enskilda sajten. Men de minskar hur mycket som står på spel nästa gång något liknande händer, och det kommer det att göra igen.