Többezer WordPress weboldal fertőződött meg egy sérülékeny plugin miatt
A Sucuri és a Malwarebytes kutatói észlelték a tömeges fertőzést, amely egy korábban már sérülékenynek jelentett Wordpress Duplicator plugin miatt következett be.
A pontos érintettek száma nem ismert, egy egyszerű Google keresés azonban több, mint 2600 találatot mutat, de az indexelés miatt ennél jóval magasabb is lehet a fertőzöttek száma.
A Google alapján magyar érintettet nem találtunk (pontosabban csak egy olyan oldalt, ahol a Google szerint még szerepel a kód, de egyébként már nem).
Mi történt?
A sérülékeny pluginon keresztül olyan kódolt (form.CharCode) Java Scriptet injektáltak a weboldalakba, amelyek további kódolt JavaScripteket hívnak meg, amelyek átirányításokon keresztül viszik a látogatókat további weboldalakra (ahol esetleg már nem csak átirányítás történik).
A IOC-re rákeresve (az IOC, azaz indicator of compromise – olyan kódrészlet és tényelem, amelynek felismerése a rendszerekben egyértelműen bizonyítja, hogy a rendszert az adott kártékony kóddal fertőzték meg) egy kódkeresőben megkapjuk azoknak az oldalaknak a listáját, amelyekben a keresett kód (az IOC) szerepel.
A kódkereső oldalak igen hasznosak lehetnek, ha arra vagyunk kíváncsiak, hogy egy adott kódrészlet milyen más weboldalakon szerepel még. A kódkeresés eredményéből most nézzük meg a Broccoli Pizza and Pasta oldalát.
A kódkereső tehát jól működött, nem csak hogy szerepel az IOC a weboldal forrásában, de ráadásul emiatt már a SUCURI website scanner is jelzi, hogy az oldal fertőzött. A SUCURI-ról még később lesz szó, most nézzük meg, hogy pontosan mi is történik ezen a fertőzött oldalon.
Ahhoz, hogy lássuk, mit is csinál ez az elkódolt (szép magyar szóval: obfuszkált) script, vissza kell alakítanunk olvashatóbb formátumba, azaz deobfuszkálni kell.
Deobfuszkálás után már olvashatóbb a kód, és látszik, hogy a script végén beszúr egy másik obfuszkált kódot a weboldalba. Szóval innentől ismétlődik a dolog, ezt a blokkot is deobfuszkálni kell.
A deobfuszkálás után tehát láthatjuk, hogy az egész játék arra ment ki, hogy az obfuszkációkon keresztül végül egy másik weboldalon elhelyezett JavaScript kódot injektáljon a megfertőzött weboldalba.
Amikor a látogató megnézi a Broccoli Pizza and Pasta weboldalát, az examhome.net weboldalról betöltődik a stat.js Java Script. Na nézzük meg, mit is csinál ez a Java Script.
Micsoda szerencse, ez is obfuszkát, innentől megint ismétlődik a játék, vajon mit rejthet ez a kód?
Mivel ez már kezd kissé unalmassá válni, a további átirányításokon már nem megyünk végig, az utolsó Java Script végül már ugyanezen az mp3menu.org oldalon belül maradva egy PHP fájlra irányítja a látogatót.
De ha azt hinnénk, hogy itt vége a mókának, tévedünk - a https://mp3menu.org/red.php már egy komplett átirányítós hálózatba küldi a látogatót, szerintem ezt mindenki ismeri már, ez az a jelenség, amikor megnézünk egy weboldalt, és hirtelen 5-6 másik weboldal is megnyílik, vagy azt látjuk, hogy fél perce már magától játszik a böngésző és újabb és újabb oldalakat látogatunk meg.
Érintett vagyok-e?
A legegyszerűbben úgy lehet meggyőződni arról, hogy mi nem vagyunk fertőzöttek (sem ezzel, sem más web-specifikus malware kóddal), ha weboldal scanner alkalmazásokban ellenőrizzük a weboldalunkat. Erre a legjobb eszközök egyike a SUCURI, akik ingyenes webscan szolgáltatást is biztosítanak, amellyel le tudjuk ellenőrizni a weboldalunkat, hogy van-e bármilyen malware fertőzésnek nyoma az oldalon.
Az ellenőrzést itt tudod elvégezni: https://sitecheck.sucuri.net/
A SUCURI mellett a másik ilyen népszerű eszköz a QUTTERA hasonló ingyenes szolgáltatása, amelyet a https://quttera.com/website-malware-scanner címen érhetsz el.
A legfontosabb azonban az, hogy tartsd naprakészen a WordPress oldalt, ne telepíts plugint, ha nem muszáj, vagy ha már telepítettél, mindig ellenőrizd, hogy van-e esetleg időközben kiderült sérülékenysége.
Arra is szánj időt, hogy a pluginokat is frissítsed folyamatosan, a mostani fertőzési hullám is egy elavult és sérülékeny plugin miatt következett be.