Hamis böngészőfrissítés a wp-adminban: így támad egy plugin
Az utóbbi időben belefutottunk egy olyan WordPress-fertőzésbe, ami első ránézésre „csak” idegesítő felugró ablaknak tűnik: a rendszer Chrome/Firefox böngészőfrissítést kér. A csavar az, hogy a kamu figyelmeztetés nem a látogatóknak jelenik meg, hanem kizárólag akkor, amikor a tulaj/üzemeltető be van jelentkezve a wp-admin felületre.
Ez azért veszélyesebb, mint egy átlagos frontendes átirányítás vagy reklám-injektálás, mert a támadó kifejezetten a magas értékű célpontot, az admin felhasználót célozza: a cél nem csak a weboldal, hanem az admin gépének kompromittálása (RAT, zsarolóvírus, adatlopó).
Mit fogsz megtanulni ebből a cikkből?
- Milyen jelei vannak annak, hogy a wp-adminban futó, célzott „fake update” kampány áldozata lettél
- Milyen technikával rejti el magát egy rosszindulatú plugin (és miért csak adminnak, Windows alatt aktiválódik)
- Melyek a legfontosabb IoC-k (indikátorok), amikre logokban és fájlrendszerben érdemes rákeresni
- Mit csinálj incidens esetén: takarítás, jelszócsere, gépellenőrzés, megelőzés
A probléma lényege: „frissítsd a böngészőt” – de csak a wp-adminban
A támadás social engineeringre (pszichológiai manipulációra) épít: a felugró overlay sürgető, „kritikus frissítés” jellegű üzenettel próbál rávenni, hogy kattints az „UPDATE NOW” gombra. A különlegesség, hogy a kód feltételekhez köti a megjelenést, így a nyilvános oldalon nem feltétlenül fogod észrevenni, és a legtöbb automata ellenőrzés (crawler, uptime monitor) sem látja.
Megfigyelések: a „Modern Recent Posts” nevű rosszindulatú plugin
A vizsgált esetben a fertőzés egy Modern Recent Posts nevű pluginban volt elrejtve, ami ártalmatlan widget/plugin látszatát kelti. Valójában egy külső domainről távoli JavaScriptet tölt le és futtat, majd azt admin oldalakba injektálja.
Hasonló hullámokat korábban is láttunk (kamu Java update, hamis Cloudflare CAPTCHA, Windows rendszer-riasztások), de itt a lényeg az, hogy a kampány wp-admin felhasználókra van optimalizálva, és egy plugin „elbújva” szállítja a payloadot.

Miért „láthatatlan” a támadás a látogatók számára?
A kártevő célzott szállítást használ: csak akkor aktiválódik, ha az áldozat megfelel bizonyos feltételeknek. Tipikusan három szűrővel dolgozik:
- Jogosultság: a felhasználó admin (WordPressben pl.
current_user_can('manage_options')). - Környezet: a felhasználó épp admin felületen van (
is_admin()). - Platform: a böngésző User-Agent alapján Windows rendszert használ (pl. „Windows”, „Win32”, „Win64”).

Ha a feltételek teljesülnek, a plugin egy Base64-be csomagolt JavaScript payloadot futtat, ami az admin böngészőjében hajtódik végre.

IoC-k (indikátorok): mire keress rá?
Incidenskezelésnél az IoC (Indicator of Compromise) az a nyom, ami alapján azonosítani tudod a fertőzést. Ebben a kampányban több elég egyértelmű jel van:
- Ismeretlenül felkerült plugin: „Modern Recent Posts”.
- Admin oldalakba injektált rosszindulatú script (kamu update overlay).
- Külső JS letöltés egyik kulcs domainről:
hxxps://persistancejs[.]store/jsplug/plugin[.]php(defangolva).
Technikai bontás: mit csinál a kártevő plugin?
A Sucuri elemzése alapján a plugin több komponensből áll: célzott aktiválás, távoli payload letöltés, social engineering overlay, és egy „önfrissítő/öneltüntető” mechanizmus.
1) Távoli payload letöltés és admin injektálás
A plugin a támadó szerverének elküld adatokat (például a site hostnevét és az admin felhasználónevet), majd egy Base64-ben kódolt JavaScriptet kér le. Ezt a scriptet az admin dashboardba injektálja – vagyis amit a támadó visszaad, az admin jogosultságú böngésző-környezetben fut le.

2) Kamu „Java update” / „browser update” overlay
A payload egyik variánsa hamis Java frissítést is képes megjeleníteni. A logika tipikus: teljes képernyős overlay, sürgető szöveg („Critical Update Required”), és egy gomb, ami kattintásra rosszindulatú letöltést indít egy külső domainről (a leírás szerint például secure-java-update[.]com).

3) Perzisztencia: önfrissítés és „nyomeltüntetés”
A plugin tartalmaz egy back-end funkciót, ami egy speciális URL paraméterre figyel: ?upd=1. Ha ezt a támadó meghívja, a plugin képes törölni saját fájljait/mappáját (rekurzívan), majd azonnal letölteni egy friss példányt a C2 (Command & Control) szerverről (persistancejs[.]store).
Ez két dolog miatt kritikus: a támadó gyorsan verziót válthat (pl. Java → Chrome overlay), illetve észlelés után eltüntetheti a nyomokat, majd újratelepítheti a backdoort.

Mi a valódi kockázat? Nem csak a weboldalról szól
A fertőzés hatása kétirányú:
- WordPress kompromittálás: a plugin backdoorként működik, és a támadó akkor is bent maradhat, ha jelszót cserélsz.
- Admin gép kompromittálása: ha az admin rákattint a „frissítésre”, a cél gyakran egy helyi futtatható (.exe) letöltése, ami lehet RAT, ransomware vagy infostealer. Ez különösen fáj, ha több ügyféloldalt is kezelsz ugyanarról a gépről.
Mit tegyél, ha ilyet látsz? (Remediation checklist)
Ha a wp-adminban hamis frissítés overlayt kapsz, kezeld úgy, mintha incidens lenne. A sorrend számít: előbb izolálás és takarítás, utána visszaállítás és megelőzés.
- Ismeretlen pluginok törlése: távolíts el minden olyan plugin könyvtárat a
wp-content/plugins/alatt, amit te vagy a fejlesztőd nem ismer fel (különösen a „Modern Recent Posts” jellegűeket). - Felhasználók auditja: nézd át az adminokat, töröld a gyanús fiókokat (pl. „help” jellegű accountok).
- Jelszavak cseréje: WordPress admin, FTP/SFTP, hosting panel, adatbázis – mind menjen újra. (Ha van, API kulcsok is.)
- Admin gép ellenőrzése: ha bárki rákattintott az „UPDATE NOW” gombra, kezeld úgy, hogy a gép kompromittált lehet. Teljes antivírus/malware scan, és ha indokolt, incident response a munkaállomáson is.
- Minden frissítése: WP core, pluginok, theme-ek – patch a legújabb verzióra.
- Kimenő forgalom monitorozása: szerver logokban keress ismeretlen domainek felé menő kéréseket (különösen a defangolt IoC-ket).
- WAF használata: Web Application Firewall segíthet C2 domainek blokkolásában és a rosszindulatú feltöltések megelőzésében.
example[.]com, hxxps://...), hogy véletlenül se legyen kattintható. Keresésnél/log elemzésnél viszont a valós formára is érdemes rápróbálni.Záró gondolatok
Ez a kampány jól mutatja, hogy a támadók egyre inkább a wp-admin felületet és az ott dolgozó adminokat tekintik „fő nyereménynek”. Ha a böngésződ (vagy Java) frissítését egy weboldal overlaye kéri, az gyanús – főleg, ha csak bejelentkezett adminként látod.
A legjobb védekezés a réteges megközelítés: plugin-higiénia (csak megbízható forrásból), rendszeres frissítés, naplózás/monitoring, és egy WAF. Ha pedig már megtörtént a baj, ne csak a WordPress-t takarítsd: az admin munkaállomás is lehet a támadás célpontja.

Hannah Turing
Full Stack fejlesztő a HelloWP csapatában. Laravel, WordPress, React és minden ami a modern webfejlesztéshez kell.
Összes bejegyzés