Útočník upravil důvěryhodné JavaScriptové soubory používané WordPress pluginy PushEngage, OptinMonster a TrustPulse a přetvořil je v nástroj k proniknutí do webů, na kterých byly nasazeny.
Jak útok probíhal
Pokud byl v okamžiku načtení skriptu přihlášen administrátor webu, kód automaticky vytvořil nový administrátorský účet pod kontrolou útočníka a nainstaloval skrytý plugin, který otevíral cestu zpět do systému. Běžné návštěvníky stránky útok nijak nepostihl. Každý web, který byl v rozhodné době zasažen, by měl být považován za kompromitovaný. Všechny tři pluginy provozuje jedna firma, Awesome Motive, která se k oběma rozsáhlejším pluginům do 15. června nijak nevyjádřila.
Širší kampaň odhalila bezpečnostní firma Sansec dne 13. června, když ve skriptech sloužených pro všechny tři pluginy nalezla shodný škodlivý kód. O den později vydal PushEngage vlastní bezpečnostní oznámení, v němž potvrdil, že útočník šířil upravené kopie jeho skriptu a že weby, které jej načetly, mohly být ovládnuty. Z trojice pluginů je tak PushEngage, kterého firma Awesome Motive před lety odkoupila, jediný, kdo zatím vydal vlastní pokyny – uživatelé OptinMonsteru a TrustPulse od výrobce zatím žádnou informaci neobdrželi.
Doba, po kterou byl škodlivý kód aktivní, se u jednotlivých pluginů lišila. U OptinMonsteru a TrustPulse zaznamenal Sansec škodlivý kód jen po dobu přibližně 25 minut 12. června, zatímco u PushEngage trvala expozice několik hodin téhož dne a na některých serverech sítě CDN byl škodlivý skript dostupný ještě 14. června. Sansec odhaduje, že tři pluginy společně provozují přes 1,2 milionu webů, přičemž drtivou většinu tvoří OptinMonster s více než milionem aktivních instalací; toto číslo ale vyjadřuje pouze dosah pluginů, nikoli skutečný rozsah napadení.
Poškozený skript na běžné návštěvě stránky nedělal nic – aktivoval se pouze tehdy, když jej načetl přihlášený administrátor, jehož relaci pak zneužil k převzetí kontroly nad webem. Právě proto nelze kompromitaci poznat z administrátorského rozhraní WordPressu samotného a jediným spolehlivým způsobem ověření je kontrola přímo na serveru.
Jak útočník postupoval a jak se dostal dovnitř
Podle vlastního vyjádření PushEngage skript po načtení přihlášeným administrátorem využil jeho relaci k jednání s plnými oprávněními, vytvořil nový administrátorský účet pod kontrolou útočníka, nainstaloval plugin, který se v přehledu nezobrazuje, a odeslal nové přihlašovací údaje i informace o webu na podvrženou doménu napodobující skutečnou službu Tidio. Sansec potvrdil stejný postup u všech tří pluginů a dodává, že podvržená doména byla registrována už 28. dubna, několik týdnů před samotným útokem, což svědčí o předem připravené operaci.
Hlavním nebezpečím je samotný skrytý plugin, který otevírá tzv. webshell, vzdálený příkazový kanál umožňující komukoli, kdo zná správnou adresu URL, spouštět na serveru kód bez přihlášení. Útočník tak může číst nebo měnit libovolné soubory, kopírovat databázi, instalovat další zadní vrátka, vkládat kód pro krádež platebních karet nebo přesměrovávat návštěvníky. Přídavný administrátorský účet navíc slouží jako jednoduchá záloha pro návrat do systému, pokud administrátor odstraní pouze samotný plugin.
V otázce, jak se útočník vůbec dostal dovnitř, se obě dostupné verze rozcházejí. PushEngage tvrdí, že útočník nejprve pronikl na server provozující marketingový web firmy, a to přes známou chybu ve WordPress pluginu UpdraftPlus sloužícímu k zálohování; tento server je oddělený od systémů, které provozují samotný produkt a uchovávají data klientů. Klíčové bylo získání API klíče pro CDN, díky kterému útočník nemusel pronikat do hlavních systémů PushEngage – stačilo mu změnit soubory, které síť CDN už tak jako tak distribuovala klientským webům.
Sansec se k této teorii staví obezřetně a uvádí, že přesný způsob vniknutí dosud není jasný, přičemž za nejpravděpodobnější označuje servery samotné Awesome Motive, za možný, ale méně jistý CDN účet, a za nepravděpodobné samotného poskytovatele CDN, firmu BunnyNet. Sansec teorii o UpdraftPlus ve své analýze nezkoumá ani nepotvrzuje. UpdraftPlus skutečně má samostatnou chybu umožňující obejití autentizace, CVE-2026-10795, kterou bezpečnostní firma Wordfence hodnotí jako vysoce závažnou a u níž zaznamenala aktivní útoky – plugin je už opravený a uživatelé by jej měli aktualizovat bez ohledu na to, zda souvisí s tímto konkrétním případem.
Co prověřit a udělat
Podle dostupných informací by každý, kdo během kritického období provozoval některý ze tří pluginů, měl provést kontrolu přímo na serveru, prohlédnout adresář s pluginy a vyhledat neznámé administrátorské účty, projít webové protokoly s ohledem na neobvyklý odchozí provoz směrem k podvržené doméně a útočníkovu serveru, a v případě jakéhokoli nálezu provést rotaci veškerých přístupových údajů, API klíčů, databázových hesel i tajných klíčů v konfiguraci WordPressu, protože případná možnost spouštění kódu na serveru může znamenat přítomnost dalších, dosud neodhalených zadních vrátek.
Zdroj: thehackernews.com
Zdroj: IT SECURITY NETWORK NEWS


