A hétvégén volt némi kavarás a blogon. Mivel a történet leginkább több írás komment rovatában pörgött, meg egyébként is tanulságos, gondoltam összefoglalom. Legyen nyoma.

Először jelzés érkezett, hogy néhány embernek nagyon felpörög a számítógépe, amikor az oldalt böngészi. Viccesen megkérdezték, hogy nem álltam-e rá valamelyik kriptovaluta bányászására? Viccesen válaszoltam, hogy ugyan már, nem.

Pedig de.

Az első nyom Pulykakakas kollégától jött: egy lista, hogy miket blokkolt a reklámblokkolója. Volt néhány *wp.com oldal, ezek ártatlanok, de volt kettő nagyon gyanús is: stati.bid: web.stati.bid. Ezeket a víruskeresőm kapásból blokkolta, és a scamadvisor is rendesen hümmögött, miszerint friss oldal, de gyanús, felettébb gyanús.

Az is volt.

Rákerestem, először a blog forráskódjában, majd letöltöttem az összes php fájlomat és lokálisban is rákerestem a nevekre. Semmi találat. Még tettem néhány kötelező kört, gyanúba jött egy csomó, ekkoriban élesedett fake trackback/pingback roham, rendesen kipucoltam a blogot, rá is fért, de innentől mást nem tudtam csinálni.

Meister kollégának több fantáziája volt.

A kulcsszó az, hogy obfuscation, magyarul ködösítés.
Elmagyarázom.
Ez egy olyan technika, mellyel valamilyen szöveget betitkosítasz valami nem túl bonyolult, de azért nem túl kézenfekvő módon visszafejthető formában. A lényeg, hogy a böngésző, amelyik megjeleníti a html fájlodat, elboldoguljon vele. Tényleg ez a lényeg. Tizenöt évvel ezelőtt, amikor még nem tarolt a Facebook és létezett olyan, hogy magánélet védelme, akkor én például ilyen módon írtam ki az általam gyártott weblapokra az emailcímemet. Hogy a humánok el tudják olvasni, de a forráskódot turkáló spamrobotok ne.

Nos, ez már régen volt, ki is ment a fejemből. Meister viszont nekiállt kiködösíteni (deobfuszkálni, ha már mindenáron káromkodni akarok) a Mivanvelem nyitólapját… és meg is találta az obfuszkált javaszkriptet.

Magyarul – azoknak, akik közben leestek a szekérről – a rosszfiúk beletettek a blog oldalába egy javascript kódot, mely letöltött és elkezdett futtatni a látogató gépén egy kriptopénzt bányászó kódot. (Bekapcsolt ADblocker vagy normális malware védelem esetén nem tudta letölteni.) A kódot pedig annyira összezavart formában tették be, hogy az ember ne találja meg, ellenben a böngésző igen.
Szerencsére Meister megtalálta.

A kód ismeretében már viszonylag gyorssá vált a nyomozás. A blog letöltött példányában rákerestem a kód egy részletére, a Toothpaste WordPress blogtéma footer.php fájljában meg is találtam. Szemmel láthatólag utólag lett beleinjektálva, hiszen még a modult leíró kommentrovat elé került. (Ahová nem illik semmit sem írni.)
Törlés után a jelenség megszűnt.

Jogos lehet a kérdés, hogyan került ez bele? Nincs jó hírem. A WordPress motort azonnal frissíteni szoktam, ahogy kijön egy új. Azt a 4 plugint, melyeket használok, szintén. (A szolgáltató egyből értesít, ahogy újabb verzió jelenik meg.) Magát a témát nagyon régóta nem frissítették. Az ftp log üres, a http log meg nem mondott semmit. Hülye fejjel nem néztem meg javítás előtt a footer.php fájl dátumát sem, így nem tudom pontosan, mikor történt a kompromittálás. Nem mintha számítana valamit.
Szóval a helyzet az, hogy a legfrissebb WordPress motornak tutira van valami olyan sebezhetősége, melyet a fiúk ott Kaliforniában ki tudnak használni. És bárkinek a blogjába bele tudják fűzni ezt a kódot.

Nyilván megfordult a fejemben, hogy esetleg a szolgáltató kapott be valamit, vagy ők próbálnak kriptopénzt bányászni. De ennek ellentmond, hogy a másik blogom is ugyanitt van és ott sértetlen a footer.php fájl.

Szóval, mást nem nagyon tudtam csinálni, mint egyrészt figyelmeztetni a szolgáltatót, másfelől megírni ezt az írást. Tanulságként. Illetve visszautalni arra az írásra, ahol a beszélgetős részben már megjelent, hogy annyira elkurvult a világ, miszerint már nem elég óvatosnak lenni, muszáj használni valami jó malware védelmet is.